基于μc/OS-II的多傳感器測控系統(tǒng)研究
3.2 μc/OS-II的移植
μC/OS-II是一種專門為微控制器設計的搶占式實時多任務操作系統(tǒng),它以源代碼的形式給出。其內(nèi)核主要提供進程管理、時間管理、內(nèi)存管理等服務。系統(tǒng)最多支持56個任務,每個任務均有一個獨有的優(yōu)先級。由于其內(nèi)核為搶先式,所以總是處于運行態(tài)最高優(yōu)先級的任務占用CPU。系統(tǒng)提供了豐富的API函數(shù),實現(xiàn)進程之間的通信以及進程狀態(tài)的轉(zhuǎn)化。
μC/OS-II的軟件體系結(jié)構(gòu)如圖4所示。從圖4中可以看到,如果要使用μC/OS-II, 必須為其編寫OS_CPU.H、OS_CPU_C.C、OS_CPU_A.ASM三個文件。這三個文件是與芯片的硬件特性有關的,它們主要提供任務切換與系統(tǒng)時鐘的功能。其它文件用C寫成,它們?yōu)橄到y(tǒng)提供任務管理、任務之間通信、時間管理以及內(nèi)存管理等功能。
圖4 μC/OS-II 軟件體系結(jié)構(gòu)示意圖
μC/OS-II系統(tǒng)時鐘:以凌陽SPCE061A單片機的TMB2時基信號作為系統(tǒng)時鐘,每經(jīng)歷一個時鐘節(jié)拍的時間將產(chǎn)生一次中斷,在中斷服務子程序中會調(diào)用OSTickISR()函數(shù)。
移植工作的主要內(nèi)容:用#define 設置一個常量值(OS_CPU.H);聲明10個數(shù)據(jù)類型(OS_CPU.H); 用#define 聲明3個宏(OS_CPU.H);用C語言編寫6個簡單的函數(shù)(OS_CPU_C.C);編寫4個匯編語言函數(shù)(OS_CPU_A.ASM)。
4 結(jié)論
μC/OS-II RTOS是當今嵌入式應用的熱點之一,應用RTOS提高了測控系統(tǒng)系統(tǒng)的可靠性、實時性,降低了研發(fā)周期。本文基于μC/OS-II構(gòu)建的測控系統(tǒng)應用在漯河農(nóng)業(yè)局2000萬公斤紅薯儲藏保鮮工程項目中,完全達到了設計的控制指標:溫度10-14℃±0.5℃ ,濕度80―95%RH±2%,氧濃度≮4.5%。降低了紅薯因為溫度濕度氧濃度不正常造成的變質(zhì),完好率100%,與不使用本系統(tǒng)的倉儲對比減少損耗25%,約500萬公斤,直接經(jīng)濟效益500多萬元,同時也取得了較好的社會效益。另外,該系統(tǒng)具有較好的可擴展性,很容易擴展到其它對溫度、濕度或者氧濃度有一定要求的領域。經(jīng)試驗,溫度測定范圍可以達到-20-85℃±0.5℃;濕度20―98%RH±2%;氧濃度≮1.5%。所以,該測控系統(tǒng)具有較廣的應用前景。
本文創(chuàng)新點:采用高性能SPCE061A單片機和高精度溫度傳感器、濕度傳感器和氧濃度傳感器,通過移植μC/OS-II多任務實時操作系統(tǒng),構(gòu)建了高精度、高可靠性的多傳感器嵌入式測控系統(tǒng)。實際工程應用表明,系統(tǒng)擴展性好、測控精度高、性能穩(wěn)定。
評論