1.前言
这个例程花了我好几天的时间,涉及到的内容比较多,走了很多弯路,一定要总结一下!
首先说明,我的开发板不是比较流行的正点原子家的,而是普中的STM32F1,原子家的开发板太贵了。到目前为止,我还没有发现我的开发板出现硬件上的问题,就是客服很不给力,关于仿真器配置的一个小问题就解决不了。好在网上资料比较丰富,慢慢也能解决自己遇到的一些问题。
思路和程序网上大家列举的都一样。在上网查资料的过程中发现,ARM开发板就是厉害,我想找什么问题,不管大家用什么型号的开发板,程序几乎一点都没有变化,问题讨论起来方便多了!
2.程序摘要
分为4部分:GPIO配置、USART参数配置、NVIC总中断配置、中断函数;
在主函数中初始化以上配置,直接进入while(1)就行了。
- 首先配置管脚GPIOA:GPIO_Init
//使用USART1的PA9和PA10,打开GPIOA:
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
//打开USART1时钟;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE);
//通过结构体配置GPIOA的USART1接口PA9,输出为“复用推挽输出”:
GPIO_Init