μC/OS-II操作系統(tǒng)在各種處理器上的移植
3.3 OS-CPU-A.S的實(shí)現(xiàn)
這部分需要對處理器的寄存器進(jìn)行操作,所以必須用匯編語言編寫。μC/OS-II移植要求用戶編寫4個簡單的匯編語言函數(shù):OSStartHighRdy()、OSCtxSw()、OS-IntCtxSw()、OSTickISR()。
OSStartHighRdy()的任務(wù)是進(jìn)行任務(wù)調(diào)度和切換;OSCtxSw()的任務(wù)是強(qiáng)制CPU進(jìn)行寄存器和程序計數(shù)器的切換;OSIntCtxSw()的任務(wù)是在中斷返回時進(jìn)行任務(wù)切換;OSTickISR()是時鐘節(jié)拍中斷服務(wù)程序,用來實(shí)現(xiàn)時間的延遲和超時功能。
以O(shè)SStartHighRdy()任務(wù)調(diào)度和切換函數(shù)為例,介紹3種處理器移植代碼。
(1)51單片機(jī)
OSStartHighRdy:本文引用地址:http://m.butianyuan.cn/article/152174.htm
結(jié) 語
51單片機(jī)、LPC2210,NiosII三種處理器在目前的嵌入式應(yīng)用方面有著廣闊的市場前景。將μC/OSs-II操作系統(tǒng)移植到這三種以及其他處理器上,能夠更好地保證系統(tǒng)運(yùn)行時的穩(wěn)定性和實(shí)時性,而且該操作系統(tǒng)代碼少,易于掌握和移植。
本文所介紹的μC/OS-II操作系統(tǒng)在3種處理器上的移植是筆者在實(shí)際學(xué)習(xí)過程中,進(jìn)行的梳理和小結(jié),對初學(xué)者有一定的參考價值。
評論