基於Cortex系列芯片採用的內核都是相同的,區別主要爲核外的片上外設的差異,而這些差異導致軟件在同內核、不同外設的芯片上移植困難。爲解決不同的芯片廠商生產的Cortex位控制器軟件的兼容性問題,ARM與芯片廠商建立了CMSIS(Cortex MicroController Software Interface Standard)標準。
CMSIS標準,實際是在用戶層或操作系統和MCU之間建立一個軟件抽象層(CMSIS層)。其中最主要的是CMSIS核心層,包括一下兩部分:
- 內核函數層:其中包含用於訪問內核寄存器的名稱、地址定義,主要由ARM公司提供。
- 設備外設訪問層:提供了片上的核外外設的地址和中斷定義,主要由芯片生產商提供。
下載解壓後,有一下幾個文件夾:
- Libraries:文件夾下是驅動庫的源代碼以及啓動文件。(開發使用)
- Project:文件夾下是用驅動庫寫的例子和工程模板。
- Utilities:包含了基於ST官方實驗班的例程,基本不需要使用。
- stm32f10x_stdpriph_lib_um.chm: 庫幫助文檔,,可用來查詢每個外設的函數說明。
Libraries文件夾
內核與外設的庫文件分別存放在CMSIS和stm32f10x_stdpriph_Driver文件夾中。