CMSIS:Cortex Microcontroller Software Interface Standard,Cortex微控制器軟件接口標準。它包含的內(nèi)容比較多:
CMSIS-RTOS:主要用于RTOS的API,可與中間件和庫組件實現(xiàn)一致的軟件層。
CMSIS-DSP:Arm針對各種Cortex-M處理器內(nèi)核進行了優(yōu)化的豐富DSP功能的集合。
CMSIS-Driver:接口可用于許多微控制器系列。
CMSIS-Pack:定義了包含軟件組件的軟件包。
CMSIS-SVD:可通過當前寄存器狀態(tài)顯示設(shè)備外設(shè)的詳細視圖。
CMSIS-DAP:Cortex調(diào)試訪問端口(DAP)的標準化接口。
CMSIS-NN:高效的神經(jīng)網(wǎng)絡(luò)內(nèi)核的集合。
我們在使用STM32CubeMX配置FreeRTOS時有一個CMSIS_V1和CMSIS_V2的選項,你知道CMSIS_V1和CMSIS_V2區(qū)別是什么?
下面我們就來簡單分享一下關(guān)于CMSIS-RTOS的內(nèi)容。
CMSIS的簡介
Cortex微控制器軟件接口標準(Cortex Microcontroller Software Interface Standard)是ARM和一些編譯器廠家以及半導體廠家共同遵循的一套標準,是由ARM專門針對CORTEX-M系列提出的標準。
在該標準的約定下,ARM和芯片廠商會提供一些通用的API接口來訪問Cortex內(nèi)核以及一些專用外設(shè),以減少更換芯片以及開發(fā)工具等移植工作所帶來的金錢以及時間上的消耗。
只要都是基于Cortex的芯片,代碼均是可以復用的。CMSIS是 Cortex-M 處理器系列的與供應商無關(guān)的硬件抽象層。使用 CMSIS可以為處理器和外設(shè)實現(xiàn)一致且簡單的軟件接口,從而簡化軟件的重用、縮短微控制器新開發(fā)人員的學習過程,并縮短新設(shè)備的上市時間。
CMSIS主要內(nèi)容就如之前分享的Cortex-M內(nèi)容:CMSIS-RTOS:主要用于RTOS的API,可與中間件和庫組件實現(xiàn)一致的軟件層。
CMSIS-DSP:Arm針對各種Cortex-M處理器內(nèi)核進行了優(yōu)化的豐富DSP功能的集合。
CMSIS-Driver:接口可用于許多微控制器系列。
CMSIS-Pack:定義了包含軟件組件的軟件包。
CMSIS-SVD:可通過當前寄存器狀態(tài)顯示設(shè)備外設(shè)的詳細視圖。
CMSIS-DAP:Cortex調(diào)試訪問端口(DAP)的標準化接口。
CMSIS-NN:高效的神經(jīng)網(wǎng)絡(luò)內(nèi)核的集合。
更多相關(guān)介紹可以參看文章:Cortex-M軟件接口標準CMSIS
CMSIS-RTOS是干么的?
眾所周知,實時操作系統(tǒng)是嵌入式領(lǐng)域的基石,而可選的嵌入式操作系統(tǒng)有很多,如FreeRTOS、μCOS、RT-Thread、RTX、ThreadX、uLinux等。
CMSIS-RTOS是ARM公司為統(tǒng)一操作系統(tǒng)、降低嵌入式門檻而發(fā)布的操作系統(tǒng)標準軟件接口。通俗講,CMSIS-RTOS將操作系統(tǒng)(不管是FreeRTOS還是RTX等)屏蔽起來,然后提供CMSIS-RTOS接口函數(shù)給最終使用者調(diào)用。
如此以來,最終使用者只需要學習CMSIS-ROTS即可,從而降低學習門檻。(目前FreeRTOS和RTX能夠很好的支持CMSIS-RTOS,其他有些RTOS還沒有做適配)。
CMSIS-RTOS 是實時操作系統(tǒng)的通用 API。它提供了標準化的編程接口,它只是封裝了RTX/Embos,以后還可能封裝μCOS、ThreadX等第三方RTOS。
就如開篇所說的,在STM32CubeMX配置FreeRTOS有一個CMSIS_V1和CMSIS_V2的選項:
同時,CMSIS-ROTS也對Keil的RTX作了很好的支持,如果你安裝了Keil MDK,在CMSIS目錄下,你會發(fā)現(xiàn)RTX的源碼:
這里順便說一下:RTX與μCOS、ThreadX等這些RTOS一樣,同樣免費開源(源碼在CMSIS目錄下,可以自己查看),遵循Apache2.0開源協(xié)議。
補充
CMSIS RTOS是ARM現(xiàn)在熱推的物聯(lián)網(wǎng)操作系統(tǒng)mbedOS的基礎(chǔ),搞懂這個RTOS API,更有利于從事RTOS底層、IC底層軟件開發(fā)。
可移植到很多,RTOS,使軟件模板、中間件、庫及其它組件能工作于支持的 RTOS 系統(tǒng)(ST就針對FreeRTOS做了CMSIS-RTOS底層支持,所以,你會看到STM32CubeMX有CMSIS_V1和CMSIS_V2的選項)。
審核編輯:湯梓紅
-
微控制器
+關(guān)注
關(guān)注
48文章
7646瀏覽量
151872 -
處理器
+關(guān)注
關(guān)注
68文章
19404瀏覽量
230783 -
Cortex
+關(guān)注
關(guān)注
2文章
203瀏覽量
46557 -
CMSIS
+關(guān)注
關(guān)注
0文章
40瀏覽量
11929 -
RTOS
+關(guān)注
關(guān)注
22文章
819瀏覽量
119823
原文標題:CMSIS-RTOS是什么?
文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論