|
以LED灯开发为例子
1、为控制LED灯,知道要使用GPIO外设。
2、了解GPIO外设有什么样的功能,要如何使用
3、获知GPIO的地址映射,知道它所挂载的总线APB2
4、了解ST官方库对寄存器的封装
5、了解时钟树,查看GPIOC的时钟来源,即PCLK2
6、在stm32f10x_conf.h文件中包含用到的头文件stm32f10x_gpio.h、stm32f10x_rcc.h。
7、在工程模版的基础上添加led.c、led.h用户文件
8、编写驱动初始化函数LED_GPIO_Config()
9、开启外设GPIOC时钟,分析由SystemInit()函数配置的默认的Sysclk=72MHz的时钟频率是否符合工程要求。
10、根据控制要求,定义并填充初始化结构体GPIO_InitStructure,向相应的结构体成员写入适当的参数
11、调用初始化函数GPIO_Init()初始化GPIOC。
12、编写相应的led.h头文件
13、针对不同的应用要求,编写main应用程序
14、调试程序、完成
使用ST库对外设进行初始化,一般步骤
1、定义一个xxx_InitTypeDef类型的初始化结构图
2、根据使用需求,向这些初始化结构体的成员写入特定的控制参数
3、填充好结构体之后,把这个结构体作为输入参数调用相应的外设库函数xxx_Init(),从而实现向寄存器写入控制参数,并且配置好外设。
|
|