🌹RS232协议原理
RS232总线其实是在串口层上进行改进,在电气层做了一些优化,串口只是对发送的时序做了规定,并没有定义接口的电气特性,不同器件之间通过UART通信时连接很不方便,串口还存在抗干扰能力差,通信距离短,所以衍生出了RS232协议
■接口
该标准规定采用一个25引脚的DB-25连接器,标准中对连接器的每个引脚的信号内容加以规定)还对各种信号的电平加以规定;后来IBM的PC机将RS232简化成了DB-9针脚,后来成为事实标准;现在工业控制的RS-232接口一般只使用RXD、TXD、GND三条线;
■信号
该标准规定逻辑“1”的电平为-5v到-15v,逻辑“0”的电平为+5v到+15v,选用该电气标准的目的在于提高抗干扰能力,增大通信距离,其传送距离一般可达15m
☕TTL电平是什么意思
TTL电平信号规定,+5V等价于逻辑“1”,0V等价于逻辑“0”(采用二进制来表示数据时)。这样的数据通信及电平规定方式,被称做TTL(晶体管-晶体管逻辑电平)信号系统。这是计算机处理器控制的设备内部各部分之间通信的标准技术。
🚀RS232电平转换
虽然很多处理器会继承UART控制器,但处理器产生的信号一般都是TTL信号而不是RS232标准信号,所以我们还需要在处理器外部添加电器对信号的电平进行转换,RS232编程的时候和uart没有任何区别
🐟RS232存在的问题
RS232存在的问题
■接口的信号电平值较高,易损坏接口电路的芯片,又因为与TL电平不兼容,所以需要使用电平转换芯片才能与TTL电路连接通信速度较低
■易产生共模干扰,抗噪声干扰性弱
■传输距离较短(15m)
👑RS485协议原理(RS232加强版)
■信号
RS485标准规定采用差分信号进行数据传输,差分信号的意思是两根信号线描述一个电平,两线间的电压差为+2v到
+6v表示逻辑“1”,两线间的电压差为-2v到-6v表示逻辑“0”;使用差分信号能有效地减少噪声信号的干扰,延长通信距离,RS485的通信距离可以达到1500m;RS485接口信号的电平比RS232降低了,所以不易损坏接口电路的芯片,且该电平与TTL电平兼容,可方便地与TTL电路连接
■接口
RS485采用两线制,这种接线方式为总线式拓扑结构,在同一总线上可以同时存在多个节点;因为采用两线制,数据的发送和接收都要使用这对差分信号线,发送和接收不能同时进行,所以只能采用半双工的方式工作,编程时也需要加以处理
🌸RS485电平转换
■虽然很多处理器中都会集成UART控制器,但处理器产生的信号一般都是TTL信号并不是符合RS485标准的信号,所以一般我们还需要在处理器外部去添加电路将TTL信号转换成差分信号
⌛RS485的优势
■接口的信号电平值较低,不易损坏接口电路的芯片,且与TTL电平兼容,可方便地与TTL电路连接
通信速度快√
■抗噪声干扰性强√
■传输距离较远(1500m)可实现多节点组网
♐RS485的编程理解
RS485是一种一主多从的设备,意思是说一个总线上可同时管理多个从机设备,具体怎么管理需要你自己实现软件的逻辑去管理,它和iic机制很像