当前位置:文档之家› STM32固件库文件结构及作用详解

STM32固件库文件结构及作用详解

STM32固件库文件结构及作用详解
STM32固件库文件结构及作用详解

STM32标准外设固件库文件结构及用途

文件夹树图及文件作用详述

stm32f10x_stdperiph_lib_V3.5.0--------------ST 公司针对STM32提供的函数接口

├─Release_Notes.html -------------------------官方网页资源

├─stm32f10x_stdperiph_lib_um.chm

-------------库的帮助文档 ├─stm32f10x_stdperiph_lib_um.chw ├─htmresc -----------------------------------CMSIS 内核和ST 公司Logo │ ├─CMSIS_Logo_Final.jpg │ └─logo.bmp ├─Libraries ----------------------------------固件库 │ ├─CMSIS -Cortex Microcontroller Software Interface Standard(Cortex 内核软件接口标准) │ │ ├─CMSIS debug support.htm ------------官方网页资源 │ │ ├─CMSIS_changes.htm ------------------官方网页资源 │ │ ├─License.doc │ │ ├─CM3 固件库文件夹树形图

│ │ │ ├─CoreSupport----为采用Cortex-M3核设计SOC的芯片商设计的芯片外设提供一个进入M3内核的接口

│ │ │ │ ├─core_cm3.c

│ │ │ │ └─core_cm3.h

│ │ │ └─DeviceSupport

│ │ │ └─ST

│ │ │ └─STM32F10x

│ │ │ ├─Release_Notes.html

│ │ │ ├─stm32f10x.h --------------------定义寄存器的地址及使用的结构体封装

│ │ │ ├─system_stm32f10x.c--------------设备外设访问层,主要配置时钟频率

│ │ │ ├─system_stm32f10x.h--------------配置时钟频率相应的头文件

│ │ │ └─startup--------由汇编编写的系统启动文件,不同的文件对应不同的芯片型号

│ │ │ ├─arm-------ARM编译器启动文件

│ │ │ │ ├─startup_stm32f10x_cl.s------cl:互联型产品,stm32f105/107系列

│ │ │ │ ├─startup_stm32f10x_hd.s------hd:高密度产品,FLASH大于128

│ │ │ │ ├─startup_stm32f10x_hd_vl.s---vl:超值型产品,stm32f100系列

│ │ │ │ ├─startup_stm32f10x_ld.s------ld:低密度产品,FLASH小于64K

│ │ │ │ ├─startup_stm32f10x_ld_vl.s

│ │ │ │ ├─startup_stm32f10x_md.s------md:中等密度产品,FLASH=64 or 128 │ │ │ │ ├─startup_stm32f10x_md_vl.s

│ │ │ │ └─startup_stm32f10x_xl.s----xl:超高密度(容量)产品,stm32f101/103系列│ │ │ ├─gcc_ride7………………GCC编译器启动文件

│ │ │ ├─iar………………………………IAR编译器启动文件

│ │ │ └─TrueSTUDIO……………TrueSTUDIO编译器启动文件

│ │ └─Documentation

│ │ └─CMSIS_Core.htm --------------CMSIS_Core网页资源

│ └─STM32F10x_StdPeriph_Driver-----------CMSIS的设备外设函数,由stm32f10x_ppp.c或 stm32f10x_ppp.h ││文件组成,PPP表示外设名称。每个外设驱动库函数对应一个头文件| | 和源文件.

│ ├─Release_Notes.html

│ ├─inc(include缩写)--------------各个外设的头文件

│ └─src(source缩写)--------------每个设备外设的驱动程序,这些外设是芯片制造商在Cortex-M3核外加的│ ├─misc.c--------------提供了外设对内核中的NVIC(Nested Vectored Interrupt Controller),| |嵌套向量中断控制器的访问函数

│ ├─stm32f10x_adc.c---------------模数转换器

│ ├─stm32f10x_bkp.c---------------备份寄存器

│ ├─stm32f10x_can.c---------------控制器局域网模块

│ ├─stm32f10x_cec.c---------------CEC网络模块

│ ├─stm32f10x_crc.c---------------CRC计算单元

│ ├─stm32f10x_dac.c---------------数模转换器

│ ├─stm32f10x_dbgmcu.c------------调试支持

│ ├─stm32f10x_dma.c---------------直接内存存取控制器

│ ├─stm32f10x_exti.c--------------外部中断事件控制器

│ ├─stm32f10x_flash.c-------------闪存存储器

│ ├─stm32f10x_fsmc.c--------------灵活的静态存储器控制器

│ ├─stm32f10x_gpio.c--------------通用输入输出

│ ├─stm32f10x_i2c.c---------------I2C接口

│ ├─stm32f10x_iwdg.c--------------独立看门狗

│ ├─stm32f10x_pwr.c---------------电源/功耗控制

│ ├─stm32f10x_rcc.c---------------复位与时钟控制器

│ ├─stm32f10x_rtc.c---------------实时时钟

│ ├─stm32f10x_sdio.c--------------SDIO接口

│ ├─stm32f10x_spi.c---------------串行外设接口

│ ├─stm32f10x_tim.c---------------定时器

│ ├─stm32f10x_usart.c-------------通用同步/异步收发器

│ └─stm32f10x_wwdg.c--------------窗口看门狗

├─Project

│ ├─STM32F10x_StdPeriph_Examples------------------标准外设库驱动的完整例程

│ │ ├─Library_Examples.html

│ │ ├─Release_Notes.html

│ │ ├─ADC---------------------------------------模数转换器

│ │ │ ├─3ADCs_DMA

│ │ │ ├─ADC1_DMA

│ │ │ ├─AnalogWatchdog

│ │ │ ├─ExtLinesTrigger

│ │ │ ├─RegSimul_DualMode

│ │ │ └─TIMTrigger_AutoInjection

│ │ ├─BKP---------------------------------------备份寄存器

│ │ │ ├─Backup_Data

│ │ │ └─Tamper

│ │ ├─CAN---------------------------------------控制器局域网模块

│ │ │ ├─DualCAN

│ │ │ ├─LoopBack

│ │ │ └─Networking

│ │ ├─CEC---------------------------------------CEC网络模块

│ │ │ └─DataExchangeInterrupt

│ │ ├─CortexM3

│ │ │ ├─BitBand

│ │ │ ├─Mode_Privilege

│ │ │ └─MPU

│ │ │ ├─accesspermission.c

│ │ │ ├─main.c

│ │ │ ├─main.h

│ │ │ ├─readme.txt

│ │ │ ├─stm32f10x_conf.h

│ │ │ ├─stm32f10x_it.c

│ │ │ ├─stm32f10x_it.h

│ │ │ ├─system_stm32f10x.c

│ │ │ └─Linker

│ │ │ ├─RIDE

│ │ │ │ └─stm32F_flash_ROAarray.ld

│ │ │ └─TrueSTUDIO

│ │ │ └─stm32f10x_flash_ROArray.ld

│ │ ├─CRC----------------------------------------CRC计数单元

│ │ │ └─CRC_Calculation

│ │ ├─DAC----------------------------------------数模转换器

│ │ │ ├─DualModeDMA_SineWave

│ │ │ ├─OneChannel_NoiseWave

│ │ │ ├─OneChannelDMA_Escalator

│ │ │ └─TwoChannels_TriangleWav e

│ │ ├─DMA----------------------------------------直接内存存取控制器│ │ │ ├─Complete list of DMA examples.txt

│ │ │ ├─ADC_TIM1

│ │ │ ├─FLASH_RAM

│ │ │ ├─FSMC

│ │ │ ├─I2C_RAM

│ │ │ └─SPI_RAM

│ │ ├─EXTI---------------------------------------外部中断事件控制器│ │ │ └─EXTI_Config

│ │ ├─FLASH--------------------------------------闪存存储器

│ │ │ ├─Dual_Boot

│ │ │ │ ├─main.c

│ │ │ │ ├─main.h

│ │ │ │ ├─readme.txt

│ │ │ │ ├─stm32f10x_conf.h

│ │ │ │ ├─stm32f10x_it.c

│ │ │ │ ├─stm32f10x_it.h

│ │ │ │ ├─system_stm32f10x.c

│ │ │ │ ├─EWARM

│ │ │ │ ├─HiTOP

│ │ ││ │ ├─STM3210X-XL_BANK1

│ │ │ │ │ │ ├─cstart_thumb2.asm

│ │ │ │ │ │ ├─setstack.asm

│ │ │ │ │ │ ├─STM3210X-XL_BANK1.htp

│ │ │ │ │ │ ├─Objects

│ │ │ │ │ │ └─Settings

││ │ │ │ │ ├─arm_arch.lsl

│ │ │ │ │ │ ├─link.lnk

│ │ │ │ │ │ ├─reset_appl.scr

│ │ │ │ │ │ ├─reset_go_main.scr

│ │ │ │ │ │ ├─StartupScript.scr

│ │ ││ │ │ └─STM32F10x_XL_Bank1.lsl

│ │ │ │ │ └─STM3210X-XL_BANK2

│ │ │ │ ├─MDK-ARM

│ │ │ │ └─TrueSTUDIO

│ │ │ ├─Program

│ │ │ └─Write_Protection

│ │ ├─FSMC-------------------------------------灵活的静态存储器控制器│ │ │ ├─NAND

│ │ │ ├─NOR

│ │ │ ├─NOR_CodeExecute

│ │ │ │ ├─main.c

│ │ │ │ ├─readme.txt

│ │ │ │ ├─stm32f10x_conf.h

│ │ │ │ ├─stm32f10x_it.c

│ │ │ │ ├─stm32f10x_it.h

│ │ │ │ ├─system_stm32f10x.c

│ │ │ │ └─binary

│ │ │ │ ├─FLASH_NOR.ini

│ │ │ │ ├─main.c

│ │ │ │ ├─readme.txt

│ │ │ │ ├─STM3210E-EVAL_NOR.FLM

│ │ │ │ ├─stm32f10x_conf.h

│ │ │ │ ├─stm32f10x_it.c

│ │ │ │ ├─stm32f10x_it.h

│ │ │ │ └─system_stm32f10x.c

│ │ │ ├─OneNAND

│ │ │ ├─SRAM

│ │ │ └─SRAM_DataMemory

│ │ │ ├─main.c

│ │ │ ├─readme.txt

│ │ │ ├─stm32f10x_conf.h

│ │ │ ├─stm32f10x_it.c

│ │ │ ├─stm32f10x_it.h

│ │ │ ├─system_stm32f10x.c

│ │ │ ├─EWARM

│ │ │ │ ├─startup_stm32f10x_hd.s

│ │ │ │ ├─startup_stm32f10x_hd_vl.s

│ │ │ │ └─startup_stm32f10x_xl.s

│ │ │ ├─HiTOP

│ │ │ │ └─cstart_thumb2.asm

│ │ │ ├─MDK-ARM

│ │ │ ├─RIDE

│ │ │ └─TrueSTUDIO

│ │ ├─GPIO---------------------------------------通用输入输出

│ │ │ ├─IOToggle

│ │ │ └─JTAG_Remap

│ │ ├─I2C----------------------------------------I2C接口

│ │ │ ├─EEPROM

│ │ │ ├─I2C_TSENSOR

│ │ │ └─IOExpander

│ │ ├─I2S----------------------------------------I2S(Inter—IC Sound)总线

│ │ │ ├─Interrupt

│ │ │ └─SPI_I2S_Switch

│ │ ├─IWDG---------------------------------------独立看门狗

│ │ │ └─IWDG_Reset

│ │ ├─Lib_DEBUG

│ │ │ └─RunTime_Check

│ │ │ ├─main.c

│ │ │ ├─readme.txt

│ │ │ ├─stm32f10x_conf.h

│ │ │ ├─stm32f10x_ip_dbg.c

│ │ │ ├─stm32f10x_ip_dbg.h

│ │ │ ├─stm32f10x_it.c

│ │ │ ├─stm32f10x_it.h

│ │ │ └─system_stm32f10x.c

│ │ ├─NVIC-----------------嵌套向量中断控制器NVIC(Nested Vectored Interrupt Controller) │ │ │ ├─DMA_WFIMode

│ │ │ ├─IRQ_Mask

│ │ │ ├─IRQ_Priority

│ │ │ └─VectorTable_Relocation

│ │ │ ├─main.c

│ │ │ ├─main.h

│ │ │ ├─readme.txt

│ │ │ ├─stm32f10x_conf.h

│ │ │ ├─stm32f10x_it.c

│ │ │ ├─stm32f10x_it.h

│ │ │ ├─system_stm32f10x.c

│ │ │ └─linker

│ │ │ ├─EWARM

│ │ │ │ └─stm32f10x_flash_offset.icf

│ │ │ ├─HiTOP

│ │ │ │ ├─setstack.asm

│ │ │ │ ├─STM32100B-EVAL

│ │ │ │ │ ├─link_offset.lnk

│ │ │ │ │ └─STM32F10x_offset.ls l

│ │ │ │ ├─STM32100E-EVAL

│ │ │ │ ├─STM3210B-EVAL

│ │ │ │ ├─STM3210C-EVAL

│ │ │ │ ├─STM3210E-EVAL

│ │ │ │ └─STM3210X-XL

│ │ │ ├─RIDE

│ │ │ │ └─stm32f10x_flash_offset.ld

│ │ │ └─TrueSTUDIO

│ │ │ └─stm32f10x_flash_offset.ld

│ │ ├─PWR------------------------------------电源/功耗控制

│ │ │ ├─PVD

│ │ │ ├─STANDBY

│ │ │ └─STOP

│ │ ├─RCC------------------------------------复位与时钟控制器

│ │ │ └─RCC_ClockConfig

│ │ ├─RTC------------------------------------实时时钟

│ │ │ ├─Calendar

│ │ │ └─LSI_Calib

│ │ ├─SDIO-----------------------------------SDIO接口

│ │ │ └─uSDCard

│ │ ├─SPI------------------------------------串口外设接口

│ │ │ ├─CRC

│ │ │ ├─DMA

│ │ │ ├─FullDuplex_SoftNSS

││ │ ├─Simplex_Interrupt

│ │ │ └─SPI_FLASH

│ │ ├─SysTick

│ │ │ └─TimeBase

│ │ ├─TIM------------------------------------定时器

│ │ │ ├─6Steps

│ │ │ ├─7PWM_Output

│ │ │ ├─Cascade_Synchro

│ │ │ ├─ComplementarySignals

│ │ │ ├─DMA

│ │ │ ├─DMABurst

│ │ │ ├─ExtTrigger_Synchro

│ │ │ ├─InputCapture

│ │ │ ├─OCActive

│ │ │ ├─OCInactive

│ │ │ ├─OCToggle

│ │ │ ├─OnePulse

│ │ │ ├─Parallel_Synchro

│ │ │ ├─PWM_Input

│ │ │ ├─PWM_Output

│ │ │ ├─TIM1_Synchro

│ │ │ ├─TIM10_PWMOutput

│ │ │ ├─TIM15_ComplementarySignals

│ │ │ ├─TIM9_OCToggle

│ │ │ └─TimeBase

│ │ ├─USART----------------------------------通用同步/异步收发器

│ │ │ ├─DMA_Interrupt

│ │ │ ├─DMA_Polling

│ │ │ ├─HalfDuplex

│ │ │ ├─HyperTerminal_HwFlowControl

│ │ │ ├─HyperTerminal_Interrupt

│ │ │ ├─Interrupt

│ │ │ ├─IrDA

│ │ │ │ ├─Receive

│ │ │ │ └─Transmit

│ │ │ ├─MultiProcessor

│ │ │ ├─Polling

│ │ │ ├─Printf

│ │ │ ├─Smartcard

│ │ │ └─Synchronous

│ │ └─WWDG------------------------------------窗口看门狗

│ │ └─WWDG_Reset

│ └─STM32F10x_StdPeriph_Template----------------官方的一个库工程模板

│ ├─main.c----------------------------------用户文件程序入口

│ ├─Release_Notes.html

│ ├─stm32f10x_conf.h----被包含进stm32f10x.h 文件。是用来配置使用了什么外设的头文件,用这个头文| |件我们可以很方便地增加或删除上面driver目录下的外设驱动函数库;还可配置是否使用“断言”编译选项.│ ├─stm32f10x_it.c------------专门用来编写中断服务函数的,在修改之前,这个文件已经定义了一些系统| | 常的接口,其它普通中断服务函数由我们自己添加。

│ ├─stm32f10x_it.h

│ ├─system_stm32f10x.c------------微控制器专用系统文件

│ ├─EWARM-------------------------IAR EWARM的项目模板示例

│ │ ├─Project.ewd

│ │ ├─Project.ewp

│ │ ├─Project.eww

│ │ ├─readme.txt

│ │ ├─stm32f10x_flash.icf

│ │ ├─stm32f10x_flash_extsram.icf

│ │ ├─stm32f10x_nor.icf

│ │ └─stm32f10x_ram.icf

│ ├─HiTOP

│ │ ├─STM32100B-EVAL

│ │ ├─STM32100E-EVAL

│ │ ├─STM3210B-EVAL

│ │ ├─STM3210C-EVAL

│ │ ├─STM3210E-EVAL

│ │ └─STM3210E-EVAL_XL

│ ├─MDK-ARM------------------------KEIL RVMDK的项目模板示例

│ │ ├─note.txt

│ │ ├─Project.uvgui.DELL

│ │ ├─Project.uvopt

│ │ ├─Project.uvproj

│ │ ├─Project_STM32100E-EVAL.dep

│ │ ├─Project_uvopt.bak

│ │ ├─Project_uvproj.bak

│ │ ├─readme.txt

│ │ └─STM32100E-EVAL

│ │ └─STM32100E-EVAL.plg

│ ├─RIDE---------------------------Raisonance RIDE的项目模板示例

│ │ ├─Project.rapp

│ │ ├─Project.rprj

│ │ ├─readme.txt

│ │ └─stm32f10x_flash_extsram.ld

│ └─TrueSTUDIO---------------------TrueSTUDIO的项目模板示例

│ ├─note.txt

│ ├─stm32f10x_flash_extsram.ld

│ ├─.metadata

│ │ └─Link

│ ├─STM32100B-EVAL

│ ├─STM32100E-EVAL

│ ├─STM3210B-EVAL

│ ├─STM3210C-EVAL

│ ├─STM3210E-EVAL

│ └─STM3210E-EVAL_XL

└─Utilities--------------------包含了用于STM3210B-EVAL和STM3210E-EVAL评估板的专用驱动└─STM32_EVAL

├─Release_Notes.html

├─stm32_eval.c

├─stm32_eval.h

├─Common

│ ├─fonts.c

│ ├─fonts.h

│ ├─stm32_eval_i2c_ee.c

│ ├─stm32_eval_i2c_ee.h

│ ├─stm32_eval_i2c_tsensor.c

│ ├─stm32_eval_i2c_tsensor.h

│ ├─stm32_eval_sdio_sd.c

│ ├─stm32_eval_sdio_sd.h

│ ├─stm32_eval_spi_flash.c

│ ├─stm32_eval_spi_flash.h

│ ├─stm32_eval_spi_sd.c

│ └─stm32_eval_spi_sd.h

├─STM32100B_EVAL

├─STM32100E_EVAL

├─STM3210B_EVAL

├─STM3210C_EVAL

├─STM3210E_EVAL

└─STM32L152_EVAL

相关主题
文本预览
相关文档 最新文档