RS485:是一种物理层的电气标准。属于物理层的接口,串行半双工通信,传输差分信号(根据电压差来确定传输 1 还是 0),支持协议的通过(如Modbus协议)。
Modbus协议介绍:
Modbus协议的报文格式介绍:
格式:从机地址(设备编号) + 功能码 + 数据(读和写) + 校验
对于读取来说:
从机地址(设备编号) —> 找谁
功能码 —> 执行什么样的操作
数据 —> 包括起始地址(读取哪个线圈或寄存器)、输出数量(读取多少)、从哪个地方开始读
校验 —> 判断数据的对错

对于写入来说:(写多个)
从机地址(设备编号) —> 找谁
功能码 —> 执行什么样的操作
数据 —> 包括起始地址(写入哪个线圈或寄存器)、输出数量(写入寄存器个数),字节数(改变多少的字节数),输出值(对应的地址位置数据改变成什么)
校验 —> 判断数据的对错

图片介绍:

读取从机寄存器的数据:(03)


向一个寄存器中写入数据:(06)

向多个寄存器中写入数据:(10)

参考链接:
STM32+RS485+Modbus-RTU(主机模式+从机模式)-标准库/HAL库开发_stm32modbus主机-CSDN博客