十堰市郧城建设网站,建筑人才网官网首页,公司注册地址和经营地址,wordpress国外vps串口基础知识详细介绍#xff1a; 该链接详细介绍了串并行、单双工、同异步、连接方式 https://blog.csdn.net/weixin_43386810/article/details/127156063 该文章将介绍串口数据的电平变化、波特率计算、脉宽计算以及数据传输量的计算。 捕获工具#xff1a;逻辑分析仪… 串口基础知识详细介绍 该链接详细介绍了串并行、单双工、同异步、连接方式 https://blog.csdn.net/weixin_43386810/article/details/127156063 该文章将介绍串口数据的电平变化、波特率计算、脉宽计算以及数据传输量的计算。 捕获工具逻辑分析仪LA1010 波特率115200 数据位8bit 校验位无 停止位1bit 1.空闲态 UART总线不在传输数据的时候总线处于空闲状态为高电平 2.起始信号 开始信号串口通信的开始标志位 3.数据位 串口发送数据先发低位再发高位 4.奇/偶校验位校验数据是否正确 奇校验数据位和校验位1的个数为奇数 假设数据位0x55(0101 0101)校验位1 假设数据位0x51(0101 0001)校验位0 偶校验数据位和校验位1的个数为偶数 假设数据位0x55(0101 0101)校验位0 假设数据位0x51(0101 0001)校验位1 5.停止信号发送数据结束回到高电平状态校准时钟信号 一帧数据发送结束后需要校准时钟信号为什么需要校准时钟信号呢 因为串口采用的是异步通信方式双方都有自己独立的时钟源虽然设置了双方的时钟源保持一致 但是在发送数据时每发送一帧数据时都会产生误差越往后发送的数据累计误差越大 所以每发送一帧数据之后需要校准时钟信 使用逻辑分析仪LA1010进行捕获和分析串口数据。 截取其中一帧数据进行分析无数据传输时为高电平 起始位 1bit绿色、高电平 -- 低电平。 数据位 8bit白色、高 / 低电平。 停止位 1bit红色、高 / 低电平位 -- 高电平。 下图为起始位、数据位、停止位的具体时间 C2-C1起始位 8.64us。 A2-A1数据位中的某一位 8.61us。 B2-B1停止位 8.62us。 可以看出起始位和停止位都是1bit。 根据数据位时间8.61us可以计算出大概波特率为: 1000 000 us / 8.61us ≈ 116144 bit/s 计算得出1s时间可传输约116144 bit 数据和设定的115200波特率基本符合偏差为约0.99%。 通信设备主机和从机之间的波特率偏差可以影响通信的稳定性和可靠性。一般来说在串口通信中波特率的偏差在正负5%以内是可以正常通信的。 波特率的偏差指的是实际通信速率与预期通信速率之间的差异。例如如果主机和从机之间的波特率设定为115200 bps那么在实际通信中波特率可以偏差在115200 bps的正负5%范围内即109440 bps到120960 bps之间。 超出正负5%的波特率偏差可能导致接收到的数据出现误码通信错误率增加甚至无法正常通信。因此为了确保通信的稳定性通常在主机和从机之间的波特率设置时应尽量控制在正负5%以内的偏差范围内。 一帧数据包含起始位、停止位、数据位一共10 bit 数据即传输一字节数据需要: 8.61us * 10bit 86.1us 当我们传输一组33字节的数据则需要: 33Byte * 86.1us 2841.3us 2.8413ms 通过标尺验证该计算方法准确性 和计算的2.8413ms差别不大计算正确。