No.2 STM32F429IGT6 固件库 CMSIS标准及库和STM32官方文档资料总结 (STM32F429/F767/H743)
CMSIS標準及庫層次關系
因為基于 Cortex 系列芯片采用的內核都是相同的,區別主要為核外的片上外設的差異,這些差異卻導致軟件在同內核,不同外設的芯片上移植困難。為了解決不同的芯片廠商生產的 Cortex 微控制器軟件的兼容性問題,ARM 與芯片廠商建立了CMSIS 標準 (Cortex MicroController SoftwareInterface Standard)。
CMSIS 架構
CMSIS 標準中最主要的為 CMSIS 核心層,它包括了:
? 內核函數層:其中包含用于訪問內核寄存器的名稱、地址定義,主要由 ARM 公司提供。
? 設備外設訪問層:提供了片上的核外外設的地址和中斷定義,主要由芯片生產商提供。
可見 CMSIS 層位于硬件層與操作系統或用戶層之間,提供了與芯片生產商無關的硬件抽象層,可以為接口外設、實時操作系統提供簡單的處理器軟件接口,屏蔽了硬件差異,這對軟件的移植是有極大的好處的。STM32 的庫,就是按照 CMSIS 標準建立的。
Libraries 文件夾中CMSIS 文件夾
寫 STM32F4 的工程,必須用到其中的四個文件:core_cm4.h、core_cmFunc.h、corecmInstr.h、core_cmSimd.h。
在 src 和 inc 文件夾里的就是 ST 公司針對每個 STM32 外設而編寫的庫函數文件,每個外設對應一個.c 和.h 后綴的文件。
庫的各文件間的關系
常用官方資料
?《STM32F4xx 參考手冊》
這個文件全方位介紹了 STM32 芯片的各種片上外設,它把 STM32 的時鐘、存儲器架構、及各種外設、寄存器都描述得清清楚楚。當我們對 STM32 的外設感到困惑時,可查閱這個文檔。以直接配置寄存器方式開發的話,查閱這個文檔寄存器部分的頻率會相當高,但這樣效率太低了。
?《STM32F4xx 規格書》
本文檔相當于 STM32 的 datasheet,包含了 STM32 芯片所有的引腳功能說明及存儲器架構、芯片外設架構說明。后面我們使用 STM32 其它外設時,常常需要查找這個手冊,了解外設對應到 STM32 的哪個 GPIO 引腳。
?《Cortex?-M4 內核參考手冊》
本文檔由 ST 公司提供,主要講解 STM32 內核寄存器相關的說明,例如系統定時器、中斷等寄存器。這部分的內容是《STM32F4xx 參考手冊》沒涉及到的內核部分的補充。相對來說,本文檔雖然介紹了內核寄存器,但不如以下兩個文檔詳細,要了解內核時,可作為以下兩個手冊的配合資料使用。
?《Cortex-M3 權威指南》、《cortex_m4_Technical Reference Manual》。
這兩個手冊是由 ARM 公司提供的,它詳細講解了 Cortex 內核的架構和特性,要深入了解 Cortex-M 內核,這是首選,經典中的經典,其中 Cortex-M3 版本有中文版,方便學習。因為 Cortex-M4 內核與 Cortex-M3 內核大部分相同,可用它來學習,而 Cortex-M4 新增的特性,則必須參考《cortex_m4_Technical Reference Manual》文檔了,目前只有英文版。
?《stm32f4xx_dsp_stdperiph_lib_um.chm》
這個就是本章提到的庫的幫助文檔,在使用庫函數時,我們最好通過查閱此文件來了解標準庫提供了哪些外設、函數原型或庫函數的調用的方法。也可以直接閱讀源碼里面的函數的函數說明。
總結
以上是生活随笔為你收集整理的No.2 STM32F429IGT6 固件库 CMSIS标准及库和STM32官方文档资料总结 (STM32F429/F767/H743)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ISPRS_Potsdam,Vaihin
- 下一篇: java帐篷_帐篷的选用常识