stm32固件库(STM32F10x标准外设库)V3.5简介
? ? ? STM32F固件庫是根據CMSIS(ARM Cortex微控制器軟件接口標準)而設計的。CMSIS標準由ARM和芯片生產商共同提出,讓不同的芯片公司生產的Cortex M3微控制器能在軟件上基本兼容。
? ? STM32F10x的固件庫是一個完整的軟件(稱固件包),包括所有的標準外設的設備驅動程序,其本質是一個固件函數包(庫),它由程序、數據結構和各種宏組成,包括了微控制器所有外設的性能特征。
? ? 此函數庫還包括每一個外設的驅動描述和應用實例,為開發者訪問底層硬件提供了一個中間API(APPlication Programming Interface,應用編程接口)。通過使用固件函數庫,無須深入掌握底層硬件細節,開發者就可輕松應用每一個外設。每個外設都由一組函數組成,這組函數覆蓋了此外設的所有功能 。每個器件的開發都由一個通用API驅動,API對此驅動程序的結構、函數和參數外稱都進行了標準化。
? ??STM32F10x標準外設庫--目錄結構
? ?
(1)、LOGO圖標;(2)、庫函數與啟動文件;(3)、驅動示例和工程模板;(4)、ST官方開發板實例;(5)、更新說明;(6)、庫使用幫助文件。
? ? 主要介紹2、3、4目錄:
? ? (2)、Librarier目錄
? ? ?此目錄含2個目錄(CMSIS、STM32F10x_StdPeriph_Driver),見下圖:
?
? ? 一、CMSIS子目錄
? ? CMSIS子目錄是STM32F10x的內核庫目錄,核心子目錄為CM3,其余目錄可忽略。
? ? CM3目錄下有2個子目錄,如下圖:
? ??
? ?1)CoreSupport子目錄
? ? 內有2個重要文件,一個是core_cm3.c(內核通用源文件),另一個是core_cm3.h(內核通用頭文件)。上述文件位于CMSIS核心層的核內外設訪問層,由ARM公司提供,包含用于訪問內核寄存器的名稱、地址定義等內容。
? ?2)、DeviceSupport子目錄
? ??
1)、stm32f10x.h:STM32F10x頭文件;
2)、system_stm32f10x.c:系統初始化源文件;
3)、ststem_stm32f10x.h:?系統初始化頭文件;
4)、startup:啟動文件子目錄,內包含4個子目錄,其中arm子目錄內存的都是根據FLASH容量大小所對應的啟動文件(見下圖)。
? ? 上述文件位于CMSIS核心層的設備外設訪問層,由ST公司提供,包含片上核外設寄存器外稱、地址定義、中斷向量定義等。
?二、STM32F10x_StdPeriph_Driver目錄
? ? 此目錄是STM32F10x標準外設驅動庫函數目錄,包括了所有STM32F10x微控制器的外設驅動,如GPIO、TIMER、SysTick、ADC、DMA、USART、SPI、I2C等。
? ? 內有2個子目錄(inc、src)見下圖:
1)、inc子目錄: include的縮寫,存放的是每個外設庫函數的頭文件。
2)、src子目錄:source的縮寫,存放的是每個外設庫函數的源文件。
(3)、Project目錄
? ? 此目錄對應標準外設庫體系架構的用戶層,存放ST公司官方提供的STM32F10x外設驅動示例(STM32F10x_StdPeriph_Example)和工程模板(STM32F10x_StdPeriph_Template)。
內有2個目錄,見下圖
?
?1)、STM32F10x_StdPeriph_Example子目錄
2)、?STM32F10x_StdPeriph_Template子目錄
上圖5個子目錄是開發工具,每個目錄下存放的STM32F10x的工程文件。
用戶相關應用文件5個(main.c、stm32f10x.conf.h、stm32f10x_it.c、stm32f10x_it.h、system_stm32f10x.c),無論是哪種開發工具構建的STM32F10x工程,用戶的具體應用都只與這5個文件有關。這樣,在同一型號的微控制器上開發不同應用時,不須修改相關開發工具目錄下的工程文件,只需要用新寫的應用程序文件替換這5個文件即可。
(4)、Utilities子目錄
? ? 此目錄存放ST公司官方評估板的BSB(Board Support Package,板級支持包)和第三方固件
?
?
?
?
? ??
? ??
總結
以上是生活随笔為你收集整理的stm32固件库(STM32F10x标准外设库)V3.5简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Unity Joystick手势操作
- 下一篇: html拖拽手势,h5实现手势操作放大缩