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