智能家居系統數字顯示終端設計方案
3) OS_CPU_A.ASM 文件。μC/OSII 的移植需要編寫5 個簡單的匯編語言函數。
OS_ENTER _CRITICAL (): 關閉中斷源;
OS_EXIT_CRITICAL (): 重開中斷源;
OSStartHighRdy (): 運行當前優先級最高的任務;
OSCtxSw (): 一個任務放棄CPU 使用權時調用;
OSIntCtxSw (): 在退出中斷服務函數OSIntExit() 中被調用, 實現中斷級任務切換。
LPC1758使用OSPendSV()函數快捷地進行上下文切換。OSPendSV()的C語言表述程序為OSPendSV: 關中斷;
if (PSP ! =NULL)
{
//保存R4~R11 到任務堆棧SP_process;
OSTCBCur>OSTCBStkPtr = SP_process;
}
OSTaskSwHook ();
OSPrioCur = OSPrioHighRdy;
OSTCBCur = OSTCBHighRdy;
PSP = OSTCBHighRdy>OSTCBStkPtr;
//從新任務堆棧中恢復R4~R11;
/恢復中斷;
//異常返回;
完成上述工作后, 只要再根據目標板的實際情況編寫Target 目錄中的3 個文件, μC/OSII 就可以運行在處理器上了。
3 重點解決數字顯示模塊的組網問題
1) 角色介紹。ZigBee 標準網絡定義了3 種角色, 分別是協作員、路由和端節點。
協作員(coordinator) 負責啟動整個網絡, 它是網絡的第一個設備, 協作員選擇一個信道和一個網絡ID, 隨后就可以啟動網絡。
路由(router) 的功能是允許其他設備加入網絡, 協助網絡中其他終端設備通信。
端節點(end device) 沒有特定的維持網絡結構的責任, 它可以選擇睡眠或喚醒兩種工作狀態, 功耗小, 可使用電池供電。
評論