大學的時候嘗試過在8051微控制器上做ucos的作業系統,最近嘗試做了一下mpc5634m上的系統移植。
沒有什麼特別的目的,只是覺得rtos算是嵌入式中相對來說有點技術含量的東西,而我自己的手中恰好又有這個乙個開發板。如今nxp的官網上提供支援powerpc的gcc編譯器,沒有使用限制,看起來一切都就緒只帶開工了。
總結了一下整個移植的過程:
首先做了乙個pit的配置,用的是軟中斷,先保證中斷能夠發生;
配置一下系統時鐘,借用pit的中斷測試了一下時鐘,最終把主時鐘定在80m,這也是這個晶元支援的最高主頻;
接下來,把拿到的ucos ii**加入到工程中,嘗試編譯。編譯的過程中,補充了缺少的檔案以及巨集定義。
接下來,還有一部分關鍵的彙編**,主要介面如下:
主要的關鍵點:ivor4,這個nxp有成熟的實現,我直接使用了。
接下來,還是彙編的考驗,主要的實現點為高優先順序任務的跳轉以及任務上下文的切換。主要的介面:
這是pit相關操作,還有乙個stm的計數器的實現,如果使能了timer的功能需要增加這個配置。
最後就是初始化以及任務建立了,示範**如下:
測試了一下,led的閃爍功能ok。測試了兩種系統的延時任務,功能也ok。編譯介面處理耗費了一些時間,其他的感覺處理到還是請輕鬆。接下來可以在這個os上嘗試擴充套件下這個開發板的功能了。