UART:
uart帧格式
空闲位:即空闲的状态 高电平
起始位:低电平
数据位:5-8位自定义长度
校验位:奇偶校验……
停止位:高电平
高低电平约定:uart采用TTL电平 高电平>2.4V,低电平<0.4V
通信双方:约定上述的帧格式和波特率,波特率表示双方通信速率的约定,每秒传输多少个字节,如9600 bps (bit pre second)
RS232、RS485 :
这两个协议都是基于uart协议之上的协议,只是对电气属性或者说物理属性做了些规定。
目的:增强信号抗干扰能力,增强数据传输距离等……增强都是相对uart而言的,都是为解决uart存在的缺陷问题,而改进的的(电气层)协议
RS232 :
逻辑1的电平为-3~-15V,逻辑0的电平为+3~+15V
通信距离:大约15m
编程方式:RS232不涉及编程,只是改变了电气属性,编程还是按uart来
RS232与TTL电平转换(usrt用的是TTL电平):max232芯片
故,两个mcu之间通信若使用RS232协议增强信号传输距离或提高抗干扰,一般采用mcu1->max232 ---------> max232->mcu2方式,转换芯片可选用其他型号。
RS485 :
逻辑1的电平为-3~-15V,逻辑0的电平为+3~+15V
注意:RS485电平信号是差分信号,即两根线的电压差值,因此使用RS485扩展的uart协议变成了半双工通信,不能同时发送和接受数据,故对uart编程的时候要注意。
同行距离:大约1500m
还有个特点:不仅可以一对一,还可以一对多,可实现结点组网,即主从模式,一个主机的rs485总线上可以挂载多个rs485从机,区分主从机是程序员根据需求软件编程实现的,485协议还是只是电气属性的改变。
RS232、RS485相对于原uart 通信速率变快了是因为信号得到了增强,抗干扰能力强了,可以提高波特率的上限,设定更高的波特率,实现提高通信速率(个人理解)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)