初始STM32固件库
1-汇编编写的启动文件
startup_stm32f10x_hd.s:设置堆栈指针、设置PC指针、初始化中断向量表、配置系统时钟、对用C库函数_main,最终去到C的世界
2-时钟配置文件
system_stm32f10x.c:把外部时钟HSE=8M,经过PLL倍频为72M。
3-外设相关的
stm32f10x.h:实现了内核之外的外设的寄存器映射
xxx:GPIO、USRAT、I2C、SPI、FSMC
stm32f10x_xx.c:外设的驱动函数库文件
stm32f10x_xx.h:存放外设的初始化结构体,外设初始化结构体成员的参数列表,外设固件库函数的声明
4-内核相关的
CMSIS - Cortex 微控制器软件接口标准
core_cm3.h:实现了内核里面外设的寄存器映射
core_cm3.c:内核外设的驱动固件库
NVIC(嵌套向量中断控制器)、SysTick(系统滴答定时器)
misc.h
misc.c (ST特有的,ST公司对内核进行裁剪,去掉一些没用的外设)
5-头文件的配置文件
stm32f10x_conf.h:头文件的头文件(所有外设的头文件)
//stm32f10x_usart.h
//stm32f10x_i2c.h
//stm32f10x_spi.h
//stm32f10x_adc.h
//stm32f10x_fsmc.h
......
6-专门存放中断服务函数的C文件
stm32f10x_it.c
stm32f10x_it.h
中断服务函数你可以随意放在其他的地方,并不是一定要放在stm32f10x_it.c
#include "stm32f10x.h" // 相当于51单片机中的 #include <reg51.h>
int main(void)
{
// 来到这里的时候,系统的时钟已经被配置成72M。
}
最新文章
- js中的垃圾回收机制
- 达成成就:排名和AC数相同
- 第一个android应用程序
- ubuntu11.04编译TQ2440 Qt2.2.0 成功
- Java 包装类 自动装箱和拆箱
- C#.net 摄像头驱动程序,用avicap32.dll
- Linux for周期运行命令注意事项
- java_JDBC(3)
- 本机安装mysql服务,步骤教程(另附SQLyog和Navicat工具)
- ruby:TypeError: 对象不支持此属性或方法
- hadoop知识点总结
- C. Painting the Fence
- (转)深入理解Java注解类型(@Annotation)
- BZOJ3253 : 改编
- linux安装rabbitmq3.6.5
- 关于poi导出excel三种方式HSSFWorkbook,SXSSFWorkbook,csv的总结
- linux shell 脚本攻略学习4
- forget words out1
- 如何提高单片机Flash的擦写次数
- Lichee (五) sysconfig1.fex 配置系统