練習(xí)并掌握多任務(wù)實(shí)時操作系統(tǒng)下Task 調(diào)度、Task 間主要通信手段(信號量、消息隊(duì)列等)、RISC 處理器 I/O 端口控制等內(nèi)容,并形成嵌入式實(shí)時應(yīng)用軟件的良好編程習(xí)慣。創(chuàng)建多Task,為每個Task 創(chuàng)建私有的Message Queue,每個Task 只通過自己的私有Message Queue 接收消息;Task 間消息通信通過向?qū)Ψ剿接蠱essageQueue 發(fā)送消息完成。
Task1:管理Task。負(fù)責(zé)系統(tǒng)啟動時同步系統(tǒng)中其他Task 的啟動同步,利用信號量的semFlush()完成。同時接收各Task 的告警信息,告警信息需編號以logmsg 方式輸出。本task 負(fù)責(zé)系統(tǒng)結(jié)束時的Task 刪除處理。
Task2:console 命令行接收Task。接收并分析console 發(fā)來的命令行及參數(shù)。自行設(shè)置5 種以上命令,并根據(jù)命令的內(nèi)容向Task3 或/及Task4 發(fā)送激勵消息。同時實(shí)現(xiàn)系統(tǒng)退出命令,使系統(tǒng)采用適當(dāng)方式安全退出。收到非法命令向Task1告警。
Task3:Led 控制Task。接收Led 控制消息(命令),自定義Led 顯示方式表現(xiàn)命令執(zhí)行情況。本task 應(yīng)負(fù)責(zé)led 相關(guān)I/O port 初始化。收到非法led 控制命令向Task1 告警。
Task4:console 輸出Task。接收需打印輸出的字串消息(命令),輸出到console。收到長度為0 或超常字串向Task1 告警。
標(biāo)簽:
Task
RISC
多任務(wù)
信號量
上傳時間:
2016-04-12
上傳用戶:iswlkje