半小时搞懂STM32知识点——UART

admin2024-05-15  0

1.UART

1.1为什么使用UART这种协议?介绍一下UART及其特点

成本低,硬件简单,数据格式灵活;

低速+全双工+异步+串行通信

半小时搞懂STM32知识点——UART,第1张

1.2 UART数据帧格式

半小时搞懂STM32知识点——UART,第2张

起始位(1)+数据位(5-8)+ 校验位(1)+停止位(0.5-2)

最高12位,最低7.5位。

1.3 请解释 UART 的奇偶校验?

奇校验:数据位中1的数目+校验位(0/1)的1数目是奇数

偶校验:数据位中1的数目+校验位(0/1)的1数目是偶数

1.4 UART与模块通信的全流程是什么

①初始化:两边需要设置成相同的波特率,数据位,校验位,停止位

②发送数据:发送方将数据放在内部的发送缓冲区中,按照预设的格式诸位发送。

③接收数据:检测到起始位后开始按设定的波特率接收数据位,存入内部的接收缓冲区

④错误检测和校正:如果开启了校验位,接收设备还会进行错误检测,并在检测到错误时进行相应的处理,可能包括请求重发等。

1.5 UART串口通讯,万一通讯出现异常,你是怎么解决的?异常后怎么处理?

①检查接线:硬件连接问题

②检查串口设置:确认串口的波特率、数据位、停止位和校验位等设置与通信对端一致。

③检查共地问题:通信双方是否有共地

④检查供电问题

异常之后可以采取:

①超时处理,重发或重新建立连接;

②错误检测和纠正:使用校验位或CRC校验检测和纠正数据中的错误;

③日志记录:记录通信过程中的异常情况,包括错误码、错误信息、时间戳等;

1.6 UART怎么确定数据正确性?

奇偶校验、CRC校验、应用层协议检查(应用层协议通常会定义特定的数据格式和结构。接收端可以根据协议规范对接收到的数据进行验证,例如检查数据长度、数据类型或其他应用层约定的字段。

1.7 UART为什么需要串口转换RS232RS485USB?

TTL电平:逻辑“1”通常为高电平(5V或3.3V),逻辑“0”为低电平(0V)。广泛应用于微控制器和数字电路中,不适合长距离传输。

RS232:相对于TTL电平,RS232使用更高的电压范围(通常+/-3V至+/-25V)。逻辑“1”(-3V到-25V)和逻辑“0”(+3V到+25V)的定义与TTL相反。它适用于长距离通信

USB(通用串行总线):用于计算机和外围设备之间的通信,支持更高的数据传输速率和电源传输。USB适配器、USB串口调试器。

RS485:使用差分信号传输,可以实现远距离和高可靠性通信,常用于工业环境。工业自动化、楼宇管理系统、仪器仪表等

1.8 IIC协议,UART协议,SPI协议异同点?和对应的使用场景?

协议UARTIICSPI
线数324
种类串行通信串行通信串行通信
方式异步全双工同步半双工同步全双工
主从011
速率速度慢速度中速度快
应用调试读取MPU驱动屏幕
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明原文出处。如若内容造成侵权/违法违规/事实不符,请联系SD编程学习网:675289112@qq.com进行投诉反馈,一经查实,立即删除!