标准库函数对每个外设都建立了初始化结构体,比如USART InitTypeDef结构体成员用于设置外设工作参数,并由外设初始化配置函数,比如USART Init调用。这些设定参数将会设置外设相应的寄存器,达到配置外设工作环境的目的。
初始化结构体定义在stm32f10x_usart.h文件中,库函数定义在stm32f10x_usart.c文件中,USART初始化结构体如下所述。
USART所涉及的库函数如下:
初始化结构体的定义、库函数的使用可参考库函数手册及例题理解、运用。
【例4.8】如图4.21所示,完成STM32单片机与PC间的串口通信。要求使用ART1,PC机发送一个字符,STM32单片机接收到后把接收到的字符直接发送给PC机,验证PC机与串口的通信是否实现。
图4.21 STM 32单片机与PC间的串口通信
编程分析:STM32单片机与PC间的串口通信,为了实现电平的转换使用了MAX3232ESE芯片,通信使用PC机的COM1口,波特率使用115200bps,8位数据位、无奇偶校验位、停止位1位。
编程要点如下。
(1)初始化串口引脚。(www.daowen.com)
(2)开启所用外设时钟。
(3)配置NVIC(中断优先级)。
(4)初始化串口中断。
(5)编写串口接收中断服务函数。
程序编写及分析:由于LED部分编程在例4.2已完成,本例在其基础上实现。
(1)复制模板工程文件,在该文件夹下在新建USART_init文件夹,用于存放新建的串口初始化USART_init.h头文件、串口初始化USART_init.c源程序文件。
(2)添加stm32f10x_usart.c、misc.c、USART_init.c及stm32f10x_it文件夹下的stm32f10x_it.c到工程中,并将对应的头文件路径添加到编译路径中。
USART_init.h头文件程序
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。