最后更新:2022-06-28 19:26:10 手机定位技术交流文章
通信协议主要实现两台设备之间的数据交换功能,通信协议分为硬件层协议和软件层协议.硬件层协议决定数据的传输方式,例如,发送0x63从设备1到设备2,0x63的二进制数为0110 0011,这些八个二进制系数由设备1传输到设备2.涉及到1怎么传,0怎么传的问题,这就是硬件层的问题。
硬件层协议目前更常被称为RS-232、RS-485、SPI、IIC等。RS-232规定,线路上的电压是x伏特,这意味着传输是0,y伏传输的则是1。再者,例如,要选择多少线发送数据,选择电缆传输输入的材料,它们也由硬件层协议约束。
MCU管脚输出TTL平整,TTL平整是指,当MCU管脚正常输出零电流时,通常电压为0V,当MCU管脚正常输出1电流时,电压是5V。因为TTL被信号线等同化,一条地线产生,信号线上的干扰信号将与有效信号一起发送到接收机。使有效信号受到干扰,485通信实际上通过硬件层的转换芯片从MCU转换TTL电极:
一个由MCU发出的TTL信号由芯片转换成两个线(A线、B线)上的信号。 当MCU输入低TTL电流到转换器时,转换器将B的电压比A的电压高,而反过来,A的电压比B的电压高。
RS-485协议指定两个电线之间的差是0或1,并且电压可以通过仪器测量,因此RS-485是一个硬件层协议。
485协议的接收器可能是另一个MCU,而MCU管也只接受TTL方程,因此开关芯片带有两个电压线,因此两个线的差价电压需要转换为TTL方程。
把TTL转到485,核心是集成芯片,中间没有程序代码,纯粹硬件逻辑。同理,同样适用于将485转换为TTL。现在许多芯片集成接收器并转换成IC,注意,转换器和接收器仍不能同时工作,最常见的转换芯片是MAX485。
显而易见,硬件层协议是旨在让车辆通过的道路。
首先,了解单一工作通信是什么。单一工作通信是传输数据只在一个方向的方式。半双重通信是指不能同时发送数据的通信双方,并且必须在错误的时间段中发送。
RS-485只有两个通讯线,这两条通讯线需要在一个传输中使用,因此,485只能实现半双向通信。485实现半双重工作通信,会遇到一个问题,当MCU1向MCU2发送数据时,不知道MCU2数据是否在线上,因为没有其他可以用来判断受援者的状况的线条,这也可能导致数据冲突。因此,RS-485实现半双重工作通信,必须监管高级软件协议,也就是说,"你不能仅仅发送你想要发送的数据。"可以理解,软件层协议就像交通规则,它允许数据按照顺序传输。
本文由 在线网速测试 整理编辑,转载请注明出处。