基于μC/OS-II的智能窗系統(tǒng)設(shè)計
(2)主要任務(wù)描述首先建立一個main()函數(shù),在主函數(shù)中調(diào)用OS-Init()函數(shù)初始化μC/OS-II,然后建立第一個任務(wù)(起始任務(wù)),最后調(diào)用OS-Start()函數(shù)啟動多任務(wù)。在建立主函數(shù)之前必須定義各個任務(wù)的堆棧、系統(tǒng)的全局變量和相關(guān)宏。主函數(shù)的程序清單如下:
起始任務(wù)是系統(tǒng)建立的第一個任務(wù),主要有3個功能:完成對目標(biāo)板的初始化(主要是定時器、外部中斷和串行口的初始化),建立系統(tǒng)所要用到的信號量,建立系統(tǒng)的其他任務(wù)。起始任務(wù)部分程序清單如下:
在電機開窗任務(wù)中首先等待信號量sem_open。該信號量是由煤氣處理任務(wù)、紅外遙控處理任務(wù)發(fā)送的。如果電機開窗任務(wù)得到該信號量,程序就設(shè)置電機轉(zhuǎn)動方向,并控制PWM送出電機轉(zhuǎn)動脈沖,直到窗戶被打開。
電機關(guān)窗任務(wù)必須等到信號量sem_close有效時才會被激活。信號量sam_close由盜情處理任務(wù)、下雨處理任務(wù)、大風(fēng)處理任務(wù)、紅外遙控處理任務(wù)發(fā)送。
短信任務(wù)則要得到盜情處理任務(wù)發(fā)出的信號量sam_dq時被激活。系統(tǒng)采用門磁傳感器作為人室盜竊報警信號發(fā)生器。當(dāng)窗戶被打開時,門磁的開關(guān)狀態(tài)發(fā)生變化,信號被發(fā)送到微處理器。微處理器檢測到信號輸入、控制GPRS模塊發(fā)送中文報警信息給戶主手機,戶主可根據(jù)短信及時報警,避免造成更大的損失。
3 小 結(jié)
完成了基于32位ARM微處理器LM3S615和嵌入式實時操作系統(tǒng)μc/os―II的嵌入式智能窗的設(shè)計開發(fā),并為嵌入式系統(tǒng)開發(fā)提供了一種解決方案。μc/os―II作為一個優(yōu)秀的RTOS已經(jīng)被成功移植到多種體系結(jié)構(gòu)的微處理器上。將其移植到ARM平臺上能夠更深刻地理解RTOS的構(gòu)造,加快應(yīng)用和開發(fā)。把μC/OS―II引入到智能窗控制系統(tǒng)的軟件設(shè)計中,使軟件的開發(fā)更具層次性,開發(fā)效率更高,系統(tǒng)的穩(wěn)定性、可靠性、實時性更強,也更容易擴展。
評論