当前位置: 首页 >应用方案 >技术应用 >

OSI模型的rs485通信数据链路层

RS-485是一种双工通信系统,其中同一总线上的多个设备可以双向通信。RS485通信接口最常用作半双工,如上图所示,只有一条通信线路(“A”“B”成对)。在半双工中,设备轮流使用同一条线路,在该线路中主机将断言对总线的控制并发送命令,所有其他设备都在监听。预期的接收者将侦听其地址,然后该设备将断言控制并做出响应。相反,在全双工系统中,例如行外设接口(SPI射频模块)通用异步收发器 (UART串口模块),主机和从设备可以使用专用输入和输出线同时通信。

数据层RS485接口通常使用 UART 进行串行通信,主机UART以全双工方式驱动和接收串行通信。它连接到构成物理层的RS485接口通信差分收发器,并将信号转换为半双工差分格式,以便在RS485总线上使用。然后主机将通过UARTRS485端口之间通信,它会告诉收发器何时在发送和接收之间切换。从设备也将以同样的方式使用它们的UART

具有专用发送和接收线路的UART串口模块允许它以全双工、半双工甚至单工方式运行,这意味着数据只能通过一条线路输出或输入。由于RS485接口通信通常是半双工的,因此连接到它的UART也将以半双工方式运行。

图 7:UART串口通信转RS-485的常见用途
7UART RS-485 的常见用途

UART 接口是异步的,这意味着通信不包括时钟。主机和从机设备必须使用自己的内部时钟,并且两个设备都必须知道数据将以何种时钟速率传输。这与串行外设接口 (SPI) 等同步系统不同,其中一条信号线包含一个时钟,总线上的监听设备可以在该时钟上捕获数据。

此外,UART 通常具有大多数设备将使用的标准格式,但可以配置许多选项来更改标准。UART 的空闲状态是高电压,因此要开始传输,UART 使用一个称为起始位的低脉冲,然后是 8 位数据,并以高停止位完成,图 8

图 8:UART串口通信数据帧

8UART 数据帧

主处理器将使用一个IO 引脚将 RS-485 收发器置于发送模式,并将一个字节从 UART TX 线发送到 RS-485 收发器的数据(D DI)线。收发器会将单端 UART 比特流转换为 A B 线上的差分比特流,图 3。数据离开收发器后,主机立即将收发器模式切换为接收。从机系统是相同的,这意味着从机 RS-485 收发器接收传入的比特流,将其转换为单端信号,并通过从机的 UART RX 线将其发送到主机设备。当从设备准备好响应时,它会像主机最初那样发送,而主机现在接收,图 9

图 9:主机通过RS485总线发送命令,从机响应
9主机通过RS-485总线发送命令,从机响应示意图

图 10:定义了数据链路层的 OSI 模型
10:定义了数据链路层的 OSI 模型

亿佰特人每一天都致力于更好的助力物联化、智能化、自动化的发展,提升资源利用率,更多产品更多资料,感兴趣的小伙伴可以登录我们的官网http://www.ebyte.com/进行了解,还有客服小姐姐在线答疑哦!

https://www.wjx.cn/jq/84863372.aspx