嵌入式硬件通信接口协议-UART(二)不同电气规范下的标准

文章首发于同名微信公众号:DigCore

欢迎关注同名微信公众号:DigCore,及时获取最新技术博文。

 

在上一篇《嵌入式硬件通信接口协议-UART(一)协议基础》中,简单而细致描述了UART的各个配置项以及通信过程的信号时序,此篇将继续介绍UART接口在不一样的电气特性下,所使用的一些接口规范。

简介

实际上UART只是对信号时序进行定义,而未定义其电气特性。在不一样的应用场景下,不同的走线空间,不同程度干扰的恶劣环境,不同的平台和和设备间,要使用UART进行通信,信号管脚的电气特性差异就是个很大的障碍,并且在很多低功耗设备的信号电平一般都较低,因此,应对不一样的应用场景和环境,而制定出不一样的电气特性协议。

UART在不同电气规范下的接口

对于不同平台或者使用环境,信号管脚的电气特性依次可以分为TTL/CMOS、RS232、RS422、RS485。

TTL/CMOS

TTL电平,逻辑“0”等于0V电压,逻辑“1”等于+5V电压。

CMOS电平,逻辑“0”接近0V电压,逻辑“1”接近电源电压(3.3V或其他)。

TTL电路与CMOS电路比较

1)TTL电路是电流控制器件,而CMOS电路是电压控制器件。

2)TTL电路的速度快,传输延迟时间短(5-10ns),但是功耗大。

CMOS电路的速度慢,传输延迟时间长(25-50ns),但功耗低。

CMOS电路本身的功耗与输入信号的脉冲频率有关,频率越高,芯片即越热,这是正常现象。

常见的,在嵌入式开发时,UART的电平信号由MCU芯片决定,并且与芯片有关。

RS-232

RS232完整缩写EIA-RS-232C 标准,其中EIA是Electronic Industry
Association代表美国电子工业协会,RS是Recommended Standard
推荐标准,232表示标识号,C表示第三次修改。

它是在1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。

由此可见,RS232才是UART的鼻祖!

E:\\AllNoteFiles\\外围通信接口时序图\\RS232维基截图.png

RS232对电气特性、逻辑电平和各种信号线功能都作了规定。

在TxD和RxD信号管脚上:

逻辑“1”电压范围-3V~-15V

逻辑“0”电压范围+3~+15V

在RTS、CTS、DSR、DTR和DCD等控制线上:

信号有效(接通,ON状态,正电压)电压范围+3V~+15V

信号无效(断开,OFF状态,负电压)电压范围-3V~-15V

可见RS232的信号管脚特性为负逻辑电平的信号。具体可以观察如下一张MAX232芯片的数据波形:

上述的示波器截图中,通道1(橙色)是RS232电平,通道2(绿色)是UART电平。

UART电平是数据输出的bit流逐一对应的电平,bit流依次是起始位“0”、数据“0011,1011”(即DigCore的标志0xDC的二进制LSB排列)、奇校验位“0”、停止位“1”,最后引脚处于高电平的空闲态;

而负逻辑电平的RS232的信号电压不仅恰好相反,而且电压大小也不一样。在MAX232芯片上,逻辑“0”对应的是+10V,逻辑“1”对应的是-10V。

同时RS232还定义了机械接口特性,常见的有DB-9接口和DB-25接口,其接口定义如下表:

 针脚信号定义作用
DB-91DCD载波检测Received Line Signal Detector(Data Carrier Detect)
 2RXD接收数据Received Data
 3TXD发送数据Transmit Data
 4DTR数据终端准备好Data Terminal Ready
 5SGND信号地Signal Ground
 6DSR数据准备好Data Set Ready
 7RTS请求发送Request To Send
 8CTS清除发送Clear To Send
 9RI振铃提示Ring Indicator
DB-251 屏蔽地线 
 2TXD发送数据Transmit Data
 3RXD接收数据Received Data
 4RTS发送请求Request To Send
 5CTS发送清除Clear To Send
 6DSR数据准备好Data Set Ready
 7SG信号地Signal Ground
 8DCD载波检测Received Line Signal Detector(Data Carrier Detect)
 9 发送返回(+) 
 10 未定义 
 11 数据发送(-) 
 12~17 未定义 
 18 数据接收(+) 
 19 未定义 
 20DTR数据终端准备好Data Terminal Ready
 21 未定义 
 22RI振铃Ring Indicator
 23~24 未定义 
 25 接收返回(-)

E:\\AllNoteFiles\\外围通信接口时序图\\DB9接口结构和引脚定义.png

RS-422

RS-422标准全称是“平衡电压数字接口电路的电气特性”,该协议制定了接口电路的电气特性。

除了引脚的电气特性,其他规范基本都是沿用RS232的规范。

RS-422的信号线采用的是差分传输方式,即原来的TxD、RxD信号线,此时分别改用两根线来完成,即TxD+和TxD-、RxD+和RxD-两组,并且利用两根线之间的电压差值来表示数据的逻辑“1”和逻辑“0”

逻辑“1”的差分信号电压差范围:+2~+6V

逻辑“0”的差分信号电压差范围:-6~-2V

最大通信距离:1500米

通信速率范围:100 kbit / s - 10 Mbit / s

E:\\AllNoteFiles\\外围通信接口时序图\\RS422维基截图.png

RS-485

EIA于1983年在RS-422基础上制定了RS-485标准,由之前的4线改为2线传输,即全双工改为半双工,增加了多点、双向通信能力。2线制的半双工,仅由2差分线A、B来连接,其中A线的“高”表示逻辑“0”而低表示逻辑“1”;B线的“高”表示逻辑“1”,“低”表示逻辑“0”。

看一张图就可以明白了,如下图引用的是维基百科RS485介绍的时序图片:

https://upload.wiki/img/blog_pic/【硬件电路】嵌入式硬件通信接口协议-UART(二)不同电气规范下的标准.org/wikipedia/commons/thumb/f/f2/RS-485_waveform.svg/487px-RS-485_waveform.svg.png

E:\\AllNoteFiles\\外围通信接口时序图\\RS485维基截图.png

参考资料:

维基百科UART:https://en.wikipedia.org/wiki/Universal_asynchronous_receiver-transmitter

维基百科RS-482:https://en.wikipedia.org/wiki/RS-422

维基百科RS-485:https://en.wikipedia.org/wiki/RS-485

E:\\Software\\WebSite\\gitee\\digcore\\site_img\\DigCore_Blog_Follow.png

### 回答1: 嵌入式ARM协议中的LIN总线是一种低成本、低速率的串行通信协议,主要用于汽车电子系统中的设备通信。LIN总线主要用于连接车辆的各个电子控制单元(ECU),如仪表盘、门控制模块、座椅调节模块等,以实现数据的传输和控制。 LIN总线协议基于主从结构,其中一个ECU充当主节点,负责发送指令和协调通信,而其他ECU则作为从节点,负责接收指令并执行相应的操作。主节点通过发送特定的帧让从节点执行特定的任务,从而实现控制和通信。 LIN总线的通信速率相对较低,通常在20kbps到20Mbps之间。这是为了满足低成本和低功耗的需求而设计的。此外,LIN总线还采用了不同的物理层电压标准,如12V和5V。这样可以适应不同的应用场景和硬件要求。 在嵌入式ARM系统中,LIN总线可以通过软件和硬件实现。通过使用ARM处理器的UART通信接口,可以将指令转化为LIN总线的帧格式,实现数据的发送和接收。同时,还可以使用专用的LIN总线驱动芯片来简化通信的实现。这些芯片通常具有LIN总线协议的硬件支持,可以提供更高的性能和稳定性。 总的来说,嵌入式ARM协议中的LIN总线是一种用于汽车电子系统的通信协议,通过低成本、低速率的串行通信实现ECU之间的数据传输和控制。它提供了灵活和可靠的通信方式,使得车辆系统的各个模块能够协同工作,实现更高的性能和功能。 ### 回答2: 嵌入式ARM协议中的LIN(Local Interconnect Network)总线是一种低成本、低速率的串行通信协议,常用于汽车和工业领域中。 LIN总线主要用于连接车辆不同的电子控制单元(ECU),包括车身电子系统、信息娱乐系统等。它的设计目标是为了提供可靠的数据传输,并保持较低的硬件和软件成本。 在LIN总线中,通讯由一个主节点(Master)和若干从节点(Slave)组成。主节点负责控制总线的访问和数据传输的时序,从节点则是被动响应主节点的指令。主节点通过发送帧(Frame)来控制从节点的操作,并接收从节点上报的数据。 LIN总线的通信速率相对较低,通常在20kbps至20Mbps之间,这是为了满足成本和可靠性的要求。它使用单线通信,通过追加校验位和帧头来确保数据的完整性和正确性。 作为一种低成本的通信协议,LIN总线在汽车和工业控制应用中发挥着重要作用。它常用于门锁系统、车窗控制、座椅调节、仪表盘等模块的通信。LIN总线的主要优点包括低成本、低功耗、简单的网络拓扑和更低的研发成本。 总而言之,嵌入式ARM协议中的LIN总线是一种低成本、低速率的串行通信协议,用于连接车辆不同的电子控制单元。它通过主节点和从节点的通信方式来实现数据传输和控制,具备低成本、低功耗等优点,广泛应用于汽车和工业控制领域。 ### 回答3: 嵌入式ARM协议——LIN总线,全称是局域网互连网络(Local Interconnect Network),是一种用于汽车电子控制系统的串行通信总线协议。 LIN总线是针对在车内各种电子设备之间进行通信而设计的低成本、低速率数据传输网络。它可以连接车内电子控制单元(ECU)之间的传感器、执行器和其他外设,例如仪表板、门锁、窗户控制器和座椅调节器等。 LIN总线采用了单一主节点和多个从节点的拓扑结构。主节点负责发送消息,而从节点是被动接收消息并执行相应的操作。主从节点之间的通信通过单线半双工方式进行,使得LIN总线在成本和可靠性方面都得到了优化。 LIN总线的通信速率相对较低,一般在20kbps至20Mbps之间。由于车内电子设备通常只要求低速率的数据传输,因此LIN总线可以满足大部分应用的需求。 LIN总线的协议栈包含物理层、数据链路层和应用层。物理层负责定义信号电气特性,例如电压和线缆类型。数据链路层负责提供错误检测和纠正机制,以确保数据的可靠传输。应用层定义了消息的格式和内容,包括标识符、数据字节和校验位等。 相比于其他汽车网络协议,如CAN总线,LIN总线具有更低的成本和更简单的实现。它适用于一些较简单的车内电子设备,不需要高速数据传输的场景。 总而言之,嵌入式ARM协议——LIN总线是一种适用于车内电子控制系统的低成本、低速率的串行通信协议,通过单一主节点和多个从节点的拓扑结构实现通信。它的简单实现和性价比使得它在一些简单车内电子设备中得到广泛应用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值