STM32学习之路(一---串口)

STM32的串口是MCU的重要外部接口,同时也是软件开发重要的调试手段。我学习的是库函数版本的程序的写法,所有的寄存器都是库函数配置的。
串口设置的一般步骤可以分为以下几个步骤:
1、串口时钟使能,GPIO时钟使能
2、串口的复位
3、GPIO端口模式的设置
4、串口参数的初始化
5、开启中断并且初始化NVIC(如果需要开启中断就要这个步骤)
6、使能串口
7、编写中断处理函数
上面几个步骤需要的函数,基本上都在库函数的stm32f10x_usart.h和stm32f10x_usart.c中。
1、串口复位:当外设出现异常的时候可以通过复位设置,实现该外设的复位,然后重新配置这个外设达到让其重新工作的目的。一般在系统刚开始配置外设的时候,都会先执行复位该外设的操作。
2、初始化:
在这里插入图片描述
第一块程序是串口和GPIO的时钟使能
第二块是GPIO的初始化,结构体的第一个成员变量是要声明的IO口,第 二个是传输速度配置,第三个是IO口的模式配置
第三块是和第二块内容相同
第四块是中断优先级的设置,第一个成员变量是通道的选择,第二个变量是要抢占的优先级,第三个成员变量是要抢占的子优先级,第四个成员变量是使能外部中断通道(中断的优先级需要抢占优先级和子优先级共同决定)
在这里插入图片描述
在上面的这段程序中,主要的作用是对串口初始化,第一个结构体的成员变量是对串口波特率的设置,第二个变量是串口通信时的字长,第三个成员变量设置的是停止位,第四个是设置奇偶校验位,第五个是设置的是有无硬件数据流控制,最后一个是串口通信的模式。
串口中断函数的编写主要看自己想在中断的时候做些什么操作,根据需要可以写也可以不写。

猜你喜欢

转载自blog.csdn.net/weixin_42994525/article/details/82763109