1.先使用keil新建一个project的基本代码
2.stm32启动文件添加
将stm32的启动文件,在原工程当中新建一个Start文件夹把相关的启动文件放到文件夹当中
然后还需要找到下面三个文件
stm32f10x.h是stm32的外设寄存器的声明和定义,后面那两个文件用于配置系统时钟,stm32系统频率为72MHZ,就是这两个文件的功劳。都把这三个文件也都丢掉Start文件夹当中用于配置stm32的系统启动文件,实现系统时钟的时候要用到PLL(锁相环),这就需要操作寄存器,寄存器都是以存储器映射的方式来访问的
我们还需要内核的寄存器描述文件,因为stm32是由内核和内核的外围外设电路组成的,所以需要一个寄存器描述文件
新建完上面这些步骤之后,如果你只是想搞寄存器开发,那么上述的操作已经能符合操作了,但是要想进行库函数开发,那么这个时候还需要进行其他配置
core_cm3.c的功能
3.在添加完上面的文件之后,需要引入头文件
电机魔术棒下面的C++/C按钮,将现在工程当中含有的文件夹路径都放到上面
4.三个重要的文件
其中最上面的那个stm32f10x_conf.h用来配置stm32的库函数的包含关系的,就是引入库函数的那些头文件和包含关系等等
下面那两个stm32f10x_it文件用于配置中断的相关功能
记得在添加之后还需要把一个宏定义复制到C/C++当中的Define当中
5.引入的启动文件类型
根据芯片的flash的容量和型号来 选择具体后缀名的启动文件
6.启动文件的作用和功能
启动文件的是处理器上电复位后最先运行的一段汇编程序,其作用是初始化堆栈指针SP、初始化程序计数器PC、设置堆、栈的大小、设置异常向量的入口地址,配置外部的SRAM,设置C库的入口分支为_main.所以启动文件作用很重要。
7.复位的时候会进入一个中断
服务的时候进入SystemInit函数和main函数