基于μC/OS-Ⅱ的通信電源監(jiān)控系統(tǒng)的設(shè)計
0 引 言
通信電源系統(tǒng)運行質(zhì)量的好壞將直接關(guān)系到通信網(wǎng)絡(luò)運行的可靠性及穩(wěn)定性。通信電源監(jiān)控系統(tǒng)具有“三遙”、數(shù)據(jù)的存儲及處理、告警的查詢分析和統(tǒng)計等功能。通信電源設(shè)備運行參數(shù)多,實時效果強,所以在監(jiān)控系統(tǒng)當中選擇功能強大的控制芯片,應用嵌入式操作系統(tǒng),采用嵌入式軟件開發(fā)技術(shù)使其盡可能地發(fā)揮出強大的控制管理功能是當前通信電源監(jiān)控系統(tǒng)的發(fā)展趨勢。
與傳統(tǒng)的51單片機開發(fā)的通信電源監(jiān)控系統(tǒng)相比,通過μC/OS-Ⅱ與TMS470R1A288結(jié)合開發(fā)的通信電源系統(tǒng)有足夠的實時性、可靠性和可擴展性,同時成本更低。
1 μC/OS-Ⅱ在TMS470R1A288的移植
ARM7(Advanced RISC Machines)是目前在嵌入式領(lǐng)域里應用非常廣泛的RISC微處理器系列,以其低成本、低功耗、高性能的優(yōu)點占據(jù)了嵌入式系統(tǒng)應用領(lǐng)域的領(lǐng)先地位。μC/OS-Ⅱ可以看作是一個功能強大完善的多任務調(diào)度器,具有很好的可移植性。將μC/OS-II移植到ARM系列的TMS470R1A288處理器上,需要修改三個和ARM體系結(jié)構(gòu)相關(guān)的文件,下面一一介紹。
1.1 OS_CPU.H
數(shù)據(jù)類型定義部分的修改是和所用的編譯器相關(guān)的,不同的編譯器會使用不同的字節(jié)長度來表示同一數(shù)據(jù)類型;由于處理器現(xiàn)場的寄存器在任務切換時都將會保存在當前運行任務的堆棧中,所以O(shè)S_STK數(shù)據(jù)類型必須和處理器的寄存器長度保持一致;定義堆棧的增長方向;宏定義包括開關(guān)中斷的宏定義,以及進行任務切換的宏定義。
1. 2 OS_CPU_A.ASM
用ARM的匯編指令實現(xiàn)了下面四個函數(shù):OS-StartHighRdy(),OSCtxSw(),OSIntCtxSw(),OS-TickISR()
1.3 OS_CPU_C.C
μC/OS-II的移植要求用戶編寫以下10個簡單的C函數(shù):
ostaskstkinit(),ostaskcreatehook(),ostaskdel-hook(),ostaskswhook(),ostaskstathook(),ostime-tickhook(),ostaskidlehook(),osinithookbegin(),os-inithookend(),ostcbinithook()。但惟一必要的函數(shù)是ostaskstkinit(),其他9個函數(shù)必須聲明,但是如果沒有特殊需求,則只需要簡單地將它們都實現(xiàn)為空函數(shù)即可。
評論