基于時(shí)代民芯SoC的MXT?RTOS51實(shí)時(shí)系統(tǒng)
MXT8051性能簡(jiǎn)介
本文引用地址:http://www.butianyuan.cn/article/110355.htmMXT8051是北京時(shí)代民芯科技有限公司的一款高速單指令周期8051為核的SoC,集成有豐富的片上資源,包括大容量存儲(chǔ)空間32kBFlash和1kB XRAM ;數(shù)字部分包括3路PWM、串口UART、看門(mén)狗WDT、2個(gè)16位Timer、5個(gè)外部中斷源、RTC時(shí)鐘、內(nèi)部OSC和外部時(shí)鐘可選等模塊;模擬部分包括4通道2kHz 10位AD轉(zhuǎn)換器、可編程增益放大器(PGA)、2個(gè)軌對(duì)軌 OP放大器、0.64V和0.98V參考電壓源輸出等模塊;此外還集成了4com*36seg LCD驅(qū)動(dòng)器。
MXT8051豐富的片上資源以及大容量存儲(chǔ)空間32kBFlash和1kB XRAM能夠滿足實(shí)時(shí)系統(tǒng)代碼裝載和系統(tǒng)對(duì)片外數(shù)據(jù)存儲(chǔ)器的容量要求。雖然該MCU內(nèi)部RAM僅有128Bytes、也無(wú)非易失性存儲(chǔ)器,但量身定制的MXT•RTOS51仍能流暢運(yùn)行,為其在嵌入式系統(tǒng)中的推廣應(yīng)用提供了良好的軟件開(kāi)發(fā)平臺(tái)。
實(shí)時(shí)多任務(wù)操作系統(tǒng)的應(yīng)用趨勢(shì)
單片機(jī)系統(tǒng)的軟件變得越來(lái)越復(fù)雜,尤其是在多任務(wù)系統(tǒng)中。采用編程語(yǔ)言在硬件上直接編寫(xiě)的前后臺(tái)方式的單片機(jī)軟件,穩(wěn)定性差和軟件維護(hù)困難的缺點(diǎn)早已成為業(yè)內(nèi)共識(shí)。這種經(jīng)典的開(kāi)發(fā)方法,越來(lái)越難以適應(yīng)單片機(jī)技術(shù)發(fā)展的需求。
單片機(jī)面對(duì)的是瞬息萬(wàn)變的市場(chǎng)需求,如何快速實(shí)現(xiàn)目標(biāo)系統(tǒng)的商業(yè)化開(kāi)發(fā),要解決的是技術(shù)開(kāi)發(fā)速度和產(chǎn)品穩(wěn)定性這似乎向悖的難題。有數(shù)據(jù)表明,在單片機(jī)產(chǎn)品開(kāi)發(fā)中平均有50%以上的時(shí)間花在了軟件代碼的開(kāi)發(fā)上。
據(jù)此,從技術(shù)與市場(chǎng)現(xiàn)狀出發(fā),應(yīng)用多任務(wù)實(shí)時(shí)操作系統(tǒng)(RTOS)作為嵌入式產(chǎn)品的軟件開(kāi)發(fā)平臺(tái)正逐步成為嵌入式應(yīng)用技術(shù)的主流。
MXT•RTOS51的特點(diǎn)
MXT•RTOS51發(fā)揮了MXT8051以8051為核、高集成度SoC的這個(gè)特征。一方面作為兼容51系列單片機(jī)的RTOS,首先是屬于占先式、可固化、可管理16個(gè)用戶任務(wù)的小型化實(shí)時(shí)操作系統(tǒng)。另一方面它支持片上資源,把這些資源看作一般RTOS中的板上設(shè)備,并仿照板上設(shè)備提供了類似的板級(jí)支持包BSP。除此以外,MXT•RTOS51的移植中還針對(duì)處理器MXT8051特點(diǎn),在以下幾點(diǎn)做了特別處理。
任務(wù)棧
MXT8051的架構(gòu)決定只有少量的內(nèi)部RAM可以用作堆棧,MXT•RTOS51通過(guò)搬移RAM的方式把所有空閑的RAM分配給當(dāng)前任務(wù)作堆棧,即以時(shí)間換空間的方法防止在較多用戶任務(wù)運(yùn)行時(shí)任務(wù)棧的溢出。這種方式會(huì)增加少量的CPU時(shí)間開(kāi)銷,但這對(duì)高速單周期的MXT8051來(lái)說(shuō)實(shí)在不成問(wèn)題。
任務(wù)間通訊
任務(wù)之間的通訊通過(guò)消息來(lái)傳遞,為節(jié)省內(nèi)存,MXT•RTOS51的消息是個(gè)字節(jié)變量。變量取值范圍為0~255,含義由用戶任意解釋。使用消息前必須先在Os_cfg.h中把EN_OS_Q配置成1,并建立消息隊(duì)列,消息隊(duì)列建立在XRAM中。
共享資源
嵌入式系統(tǒng)中的軟、硬部件都有可能成為一個(gè)以上用戶任務(wù)的共享資源,如鍵盤(pán)、顯示器、E2PROM甚至一個(gè)變量等。共享資源的使用必須滿足互斥條件,常規(guī)的方法是通過(guò)信號(hào)量辨析來(lái)獲得這些資源的使用權(quán)。為減少內(nèi)存消耗,MXT•RTOS51當(dāng)前版本沒(méi)有引入信號(hào)量,這就要求使用共享資源的時(shí)候要特別小心,防止數(shù)據(jù)遭到意外的破壞。
MXT•RTOS的板級(jí)支持包
板級(jí)支持包的作用
板級(jí)支持包BSP,是介于目標(biāo)板硬件和操作系統(tǒng)之間的中間層軟件,屬于操作系統(tǒng)的一部分。主要目的是為了支持操作系統(tǒng),使用戶任務(wù)的代碼呈現(xiàn)與硬件的無(wú)關(guān)性,以簡(jiǎn)化軟件的編寫(xiě)、升級(jí)與維護(hù)。MXT•RTOS51的BSP包含了對(duì)片上資源(SoC)和板上資源(SoB)的共同支持。
評(píng)論