理论教育 STM32单片机实践:基于物联网的USART通信

STM32单片机实践:基于物联网的USART通信

时间:2023-11-09 理论教育 版权反馈
【摘要】:如图4.21所示,完成STM32单片机与PC间的串口通信。要求使用ART1,PC机发送一个字符,STM32单片机接收到后把接收到的字符直接发送给PC机,验证PC机与串口的通信是否实现。图4.21STM 32单片机与PC间的串口通信编程分析:STM32单片机与PC间的串口通信,为了实现电平的转换使用了MAX3232ESE芯片,通信使用PC机的COM1口,波特率使用115200bps,8位数据位、无奇偶校验位、停止位1位。添加stm32f10x_usart.c、misc.c、USART_init.c及stm32f10x_it文件夹下的stm32f10x_it.c到工程中,并将对应的头文件路径添加到编译路径中。

STM32单片机实践:基于物联网的USART通信

标准库函数对每个外设都建立了初始化结构体,比如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头文件程序

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈