STM32学习笔记(江协科技)-----串口通信协议

目录

串口通信

通信线:

电平标准:

波特率:

空闲时:高电平

起始位:

数据位:

校验位:     

停止位:

完整的数据帧:

举例:

发送0x55,无校验

发送0x55,偶校验

​编辑


串口通信

(全双工,异步)

通信线:

VCC:高电平

GND:低电平

TX:发送引脚

RX:接收引脚

1设备与2设备互联:VCC接VCC,GND接GND,1的TX接2的RX,1的RX接2的TX(交叉连接)

电平标准:

电平标准是1和0的表达方式,是人为规定的电压与数据的关系。

TTL电平:+3.3V或+5V表示1,0V表示0

RS232电平:-3V~-15V表示1,+3V~+15V表示0

RS485电平:两线压差+2V~+6V表示1,-2V~-6V表示0(差分信号)

波特率:

串口通信的速率(每秒传输数据的位数)

因为是异步通信,所以需要规定双方通信的速率。

若波特率为4800,则发送一位的时间就是1s/4800

若波特率为9600,则发送一位的时间就是1s/9600

若波特率为115200,则发送一位的时间就是1s/115200   

空闲时:高电平

起始位:

标志一个数据帧的开始,规定为低电平。即产生一个下降沿。表示传输开始。

数据位:

8位,1为高电平,0位低电平,低位先行。

若要发送0x0F,首先转化为2进制:00001111,然后低位先行:发送 D1~D7:11110000

校验位:     

用来判断数据是否出错。

奇校验:8位数据位+1位校验位=奇数个1

偶校验:8位数据位+1位校验位=偶数个1

但是当两位数据同时出错,奇偶校验就检测不出。此时需要使用CRC校验,之后会更新。

停止位:

用于数据间隔,固定为高电平。恢复空闲状态。

可以配置,可以选择1位,1.5位,2位。一般都使用1位。

完整的数据帧:

举例:

发送0x55,无校验

  1. 空闲状态高电平~~起始位:低电平,产生下降沿,表示数据帧开始。~~0x55转为二进制,即为10101010,低位先行:10101010.~~停止位:高电平

发送0x55,偶校验

空闲状态高电平~~起始位:低电平,产生下降沿,表示数据帧开始。~~0x55转为二进制,即为10101010,低位先行:10101010.~~校验位:一共是偶数个1,所以校验位置0~~停止位:高电平

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值