樣品申請 | 資料下載 | 替換型號咨詢

靈動微電子MM32 MCU的OS移植與應用

近年來的物聯(lián)網(wǎng)IOT概念廣為普及,物聯(lián)網(wǎng)市場發(fā)展迅猛,嵌入式設備的聯(lián)網(wǎng)已然成為趨勢。終端聯(lián)網(wǎng)使得軟件復雜性大幅增加,傳統(tǒng)的RTOS內核已經(jīng)越來越難滿足市場的需求。正是在這種情況下的物聯(lián)網(wǎng)操作系統(tǒng)(IoT OS)的概念應運而生。


物聯(lián)網(wǎng)操作系統(tǒng)是指以操作系統(tǒng)內核(可以是 RTOS和Linux 等)為基礎,包括文件系統(tǒng)、圖形庫等較為完整的中間件組件,具備低功耗、安全、通信協(xié)議支持和云端連接能力的軟件平臺。本篇文章介紹基于靈動微電子MM32 MCU的OS移植與應用。


一般簡單的嵌入式系統(tǒng)軟件的編程思路是下面這樣的:


MCU.jpg


這是嵌入式工程師編程的一般思路,對于一個簡單的系統(tǒng)當然是夠用了,但在這樣的系統(tǒng)中每個任務的實時性是很差的,比如如果任務1用于用戶輸入的檢測,當用戶輸入時,如果程序正在執(zhí)行其他的任務進程,那么這次用戶輸入將失效,用戶的體驗是這個按鍵不靈敏,這個機器很慢。


而我們如果把所有任務都放到中斷里去處理,雖然改善了實時性,卻會導致另外一個問題:一個任務在處理的時候有可能會引發(fā)其它的中斷丟失。這個后果有時候比慢一點更加嚴重和惡劣!又比如任務2是一個只需要1s鐘處理一次的任務,那么顯然任務2會白白浪費CPU的時間。


這時我們可能需要改進我們的編程思路,一般我們會嘗試采用時間片的方式。這時候軟件結構會變成下面的方式:



MCU2.jpg


我們可以看到,這種改進后的思路,使得任務的執(zhí)行時間得到控制,任務只在自己的時間片到來后,才會去執(zhí)行。但你可以發(fā)現(xiàn),這種方式仍然不能徹底解決實時性的問題,因為某個任務的時間片到來后,也不能立即就執(zhí)行,MCU必須等到當前任務的時間片用完,并且后面的任務時間片還沒有來,MCU才有機會獲得執(zhí)行時間


這時候我們需要繼續(xù)改進思路。為了使得某個任務的時間片到來以后能立即執(zhí)行,我們需要在時鐘中斷里判斷完時間片后,改變程序的返回位置,讓程序不返回到剛剛被打斷的位置,而從最新獲得了時間片的任務處開始執(zhí)行,這樣就徹底解決了任務的實時問題。


我們在這個思路上進行改進。在每次進入時鐘中斷前,MCU保存當前狀態(tài)和當前任務的關鍵數(shù)據(jù),然后進入時鐘中斷進行時間片處理。如果這時判斷有新的更緊急的任務的時間片到來,則執(zhí)行任務切換,恢復這個更緊急的任務的現(xiàn)場,然后返回中斷開始執(zhí)行這個更緊急的任務。


我們終于知道了操作系統(tǒng)的作用了。事實上操作系統(tǒng)的用處遠不止幫你完成這個任務時間片的處理,操作系統(tǒng)還能幫你處理各種超時,進行內存管理,完成任務間的通信等。有了操作系統(tǒng),程序的層次也更加清晰,給系統(tǒng)添加功能也更方便,這一切在大型項目中越發(fā)的明顯!


靈動微電子MM32系列國產(chǎn)單片機MCU獲得了AMetal、RT-Thread、Alios、Liteos、mbed、FreeRTOS等眾多操作系統(tǒng)官方鼎立支持,面對越來越多的MM32 MCU用戶對于操作系統(tǒng)的使用需求,靈動微總代理英尚微電子可為大家提供產(chǎn)品技術支持。


色婷婷亚洲精品综合影院| 精品国产一区二区三区av| 99麻豆久久久国产精品免费| 18禁免费无码无遮挡不卡网站| 武侠 欧美 另类 人妻| 丰满少妇a级毛片| 蜜臀AV在线播放一区二区三区| 久久精品亚洲中文字幕无码网站| 中文字幕在线看成电影乱码| 十大色情禁片免费观看影片| 啊轻点灬太粗嗯太深了用力| 无套和妇女做内谢| 意大利电影巜丰满的欲妇 | 美女的裸体(无遮挡)的照片| 性色a码一区二区三区天美传媒 | 久久这里只有精品18| 亚洲欧美中文日韩在线视频 | 极品少妇高潮啪啪av无码| 插我一区二区在线观看| 日本大尺度做爰呻吟| 无码福利一区二区三区| 浪荡艳妇爆乳jufd汗だく肉感| 日韩精品无码熟人妻视频| 疯狂的交换1—6真实交换3和2| 美女无遮掩内衣胸罩| 国产熟女乱子视频正在播放 | 亚洲av无码乱码国产精品| 性久久久久久久| 日本护士毛茸茸高潮| 亚洲av无码乱码国产精品久久| 肉大捧一进一出免费视频| 久久综合狠狠综合久久| av无码人妻一区二区三区| 韩国公妇里乱片a片| 色欲一区二区三区精品a片| 久久久久亚洲av片无码下载蜜桃| 真人性囗交69视频| 亚洲熟女综合一区二区三区| 欧美大片va欧美在线播放| 日本一区二区在线播放| 久久亚洲av午夜福利精品一区 |