基于STM32 的串口通信的研究外文翻译资料

 2022-11-25 14:44:39

英语原文共 3 页,剩余内容已隐藏,支付完成后下载完整资料


基于STM32 的串口通信的研究

摘要:串口是微处理器的重要外部接口。它可以用于微处理器与计算机、以及微处理器和微处理器之间的通信和信息交换。它也是调试程序的重要手段。STM32串口资源都很丰富,而且功能也很强大。一般多达5个串口,满足了通信需求。本文研究了STM32与计算机之间的串行通信。两个STM32与多个STM32之间的串口通信通过串口进行连接。这为短距离有线网络建设和信息交换提供了新思路。

关键词:串口通信;STM32;网络

介绍

串口作为一种早期的串行通信,由于其简单的接口而得到了广泛的应用。

串口可以通过适当的设置支持同步和异步通信。通信速率可以设置为300, 600, 1200、2400, 4800, 9600、19200, 115200和460800。波特率/s最大速度可达400 K。支持全双工和半双工通信。

STM32串口介绍

要实现串口通信,必须打开串口时钟,设置相应的I/O端口模式,配置波特率,数据位长度,奇偶校验等信息。这里有一些与串口配置相关联的寄存器。

串口时钟使能

串行时钟使能寄存器如图1所示。因为串口1使用PA9,PA10引脚,所以你需要把图1中的IOPARST设置为1;同样,由于要使用串口1,图1中第十四位UARTAR1RST需要设置为1。

图 1 串口时钟使能寄存器

串口控制

串口控制寄存器如图2所示。通过设置串口控制寄存器可以配置串口的收发功能,同时串口的收发会产生中断。如果图表中的 RE=1,那么串口可以接收数据;如果TE=1,那么串口允许发送数据;如果RXNEIE=1,那么就打开了串口的接收中断。

图 2 串口控制寄存器

数据收发

数据收发寄存器如图3所示,串口每次收发一字节数据。

图 3 串口接收寄存器

串口状态

串口状态寄存器如图4所示。图中的寄存器表明了串口的运行状态。例如,RXNE=1 表示接收缓存不为空,串口收到了数据。TXE=1表示发送缓存为空,也就是数据已经发送完毕。

图 4 串口状态寄存器

软件编程

在下面的设计中,在KEIL 5下用C语言编程,完成了串口的初始化、波特率及中断的初始化。下面是一部分代码:

void uart_init(u32 pclk2,u32 bound)

{

float temp;

u16 mantissa;

u16 fraction;

temp=(float)(pclk2*1000000)

mantissa=temp;

fraction=(temp-mantissa)*16;

mantissalt;lt;=4;

mantissa =fraction;

RCC-gt;APB2ENR|=1lt;lt;2;

RCC-gt;APB2ENR|=1lt;lt;14;

GPIOA-gt;CRHamp;=0XFFFFF00F;

GPIOA-gt;CRH|=0X000008B0;

RCC-gt;APB2RSTR|=1lt;lt;14;

RCC-gt;APB2RSTRamp;=~(1lt;lt;14);

USART1-gt;BRR=mantissa;

USART1-gt;CR1|=0X200C;

#if EN_USART1_RX

USART1-gt;CR1|=1lt;lt;5;

MY_NVIC_Init(3,3,USART1_IRQn,2);

#endif

}

上面的代码完成了串口1的初始化。函数MY_NVIC_Init完成了串口中断的初始化,中断分组为2,抢占模式下优先级为3,非抢占模式下优先级也为3。调用函数uart_init可以配置串口波特率为115200。

总结

本文阐述了STM32串口的工作原理,并详细阐述了串口的配置。在Keil MDK开发环境中,对串口进行编程,实现了STM32与计算机之间的通信。给出了部分代码,并调用该代码实现串口的初始化。如果代码被适当修改,可以改变串行通信的波特率,并且可以实现双机通信,甚至可以实现多机通信。

参考文献

  1. .Li Jing, Zhang Xiaorui. Persea nanmu Oliver, wireless LED message display system based on STM32 MCU [J], laboratory research and exploration of.2016,35 (5): 127-129.
  2. .Hu Sihai, Li Zhihua. Wireless temperature and humidity detection system based on STM32 and Lab [J], VIEW, China,.2015,41 (5): 99-102.
  3. Chen Feng, Wu Yubin, Cao Danhua. Design of EEG signal acquisition instrument based on STM32 and USB virtual serial port, [J], instrument technology and sensor.2016,12:65-68.
  4. Liu Chunhu, Fu Bin, Lian Lian. Multi serial remote repeater development of vehicle control system underwater based on STM32
  5. computer measurement and control,.2013,21 (6): 1537-1540.
  6. Liu Kang, Yang Lishen, Wang Lei, Zhang Anwei. Research on wireless sensor network gateway based on [J]. Computer applications and software,.2016,33 (3): 159-166. SNMP

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[22530],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

课题毕业论文、外文翻译、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。