新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于實(shí)時(shí)操作系統(tǒng)的單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)

基于實(shí)時(shí)操作系統(tǒng)的單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2012-10-24 來(lái)源:網(wǎng)絡(luò) 收藏

2.1 軟件

電子存包柜主要包括按鍵處理、顯示處理、通訊處理等模塊,由中斷處理?xiàng)l碼讀入和串口通訊。因此,可以把任務(wù)分為按鍵顯示、接收數(shù)據(jù)、命令處理、發(fā)送數(shù)據(jù)等4 個(gè)任務(wù)。

以主控1 接收用戶按存包輸入密碼、鍵值處理、密碼顯示及箱子狀態(tài)顯示、發(fā)送開(kāi)箱命令為例,說(shuō)明主體思想。

主程序進(jìn)行系統(tǒng)初始化以后,調(diào)用函數(shù)OSStart()設(shè)置多任務(wù)環(huán)境,為每一個(gè)任務(wù)建立任務(wù)堆棧,順序建立了4 個(gè)任務(wù),等待相應(yīng)任務(wù)的喚醒。用戶只需把自己想要實(shí)現(xiàn)的功能定義為任務(wù),在cONfig.h 中聲明任務(wù)函數(shù)名和它的優(yōu)先級(jí),并且編寫(xiě)好自己的代碼段就可以了,完全沒(méi)有了傳統(tǒng)編程下的那種上下調(diào)用的關(guān)系,系統(tǒng)會(huì)自動(dòng)運(yùn)行代碼。Small RTOS51 的移植主要是要配置OS_CPU.H、OS_CFG.H 和CONFIG.H 三個(gè)文件,其中OS_CFG.H 文件主要用于對(duì)的裁減和時(shí)鐘等的相關(guān)配置。

在 CONFIG.H 文件中定義4 個(gè)任務(wù)

#ifndef …..

…………

#endif

限于篇幅,向2、3 的發(fā)送及接收2 數(shù)據(jù)的程序略

4.結(jié)論

采用多任務(wù)使得編程效率更高、維護(hù)及修改也更方便,所以目前得到廣泛應(yīng)用,尤其是在嵌入系統(tǒng)中。在低端的51 單片機(jī)應(yīng)用領(lǐng)域,利用多任務(wù)的思想,采用Small RTOS 多任務(wù)平臺(tái)進(jìn)行系統(tǒng)應(yīng)用及改進(jìn),同樣也有現(xiàn)實(shí)意義。

本文創(chuàng)新點(diǎn):將Small RTOS 多任務(wù)的思想應(yīng)用在一個(gè)具體的單片機(jī)控制的電子式存包柜系統(tǒng)的軟件設(shè)計(jì)中,介紹了消息隊(duì)列的任務(wù)通訊的編程方法。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉