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