新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于S3C44B0和μCOS-II的CAN節(jié)點(diǎn)的設(shè)計(jì)

基于S3C44B0和μCOS-II的CAN節(jié)點(diǎn)的設(shè)計(jì)

作者: 時(shí)間:2012-04-16 來源:網(wǎng)絡(luò) 收藏

通信流程圖如圖2所示:

5 μ總線通訊程序模塊的

傳統(tǒng)的前后臺(tái)方式的單片機(jī)程序是一個(gè)無限循環(huán),循環(huán)中調(diào)用相應(yīng)函數(shù)來完成相應(yīng)操作是其后臺(tái)行為,而中斷服務(wù)程序處

19.jpg

理異步事件是其前臺(tái)行為。μ是一個(gè)實(shí)時(shí)多任務(wù)操作系統(tǒng),是一個(gè)占先式內(nèi)核的多任務(wù)調(diào)度平臺(tái)。作為一個(gè)模塊的總線程序,在嵌入 μ之中,相對(duì)于前后臺(tái)方式而言,CPU的運(yùn)行時(shí)間被μCOS-II依據(jù)調(diào)度算法按照不同的優(yōu)先級(jí)分配給不同的任務(wù)模塊,各個(gè)任務(wù)程序在自己的運(yùn)行時(shí)間內(nèi)訪問CPU,這樣總線的實(shí)時(shí)性更容易得到保證,同時(shí)各任務(wù)相對(duì)獨(dú)立,相互影響小,也便于對(duì)程序的調(diào)試,更重要的是如果要實(shí)現(xiàn)更為復(fù)雜的通訊協(xié)議時(shí)不用改變?cè)械某绦蚪Y(jié)構(gòu),只需增加擴(kuò)展部分的程序就可以進(jìn)行功能擴(kuò)展。

本文中CAN總線如上所述采用主動(dòng)方式發(fā)送和采用中斷方式接收數(shù)據(jù),CAN中斷優(yōu)先級(jí)高于其他任務(wù)的優(yōu)先級(jí)。本文中數(shù)據(jù)發(fā)送建立一個(gè)獨(dú)立任務(wù),它擁有自己的堆??臻g,可以被其他的任務(wù)和中斷服務(wù)子程序掛起或刪除。這個(gè)任務(wù)分配128個(gè)OS_STK的堆??臻g,在μCOS-II中OS_STK被定義為一個(gè)字長。



評(píng)論


相關(guān)推薦

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

關(guān)閉