单片机UART一对多:同时读取多个传感器基于modbus协议

文章目录

背景

很多传感器现在都做成了串口模块,如激光测距传感器TOF050,在开发时使用串口功能模块不仅大大加快了我们的开发进度,还能降低功能模块直接的耦合度,专业是功能交给专业的模块做,也能保证质量。
图:TOF050激光测距模块

以TOF050模块为例,当我们同时需要接4个激光测距模块时,显然需要使用4个UART串口,分别读取距离值,这限制了我们可以外接的模块数量。

基于modbus协议,对UART串口进行改造,就可以实现单个串口同时外接多个UART设备,互不干扰。

MODBUS协议介绍

modbus介绍可以参考如下:https://cloud.tencent.com/developer/article/1540241

简而言之,在串口中使用modbus协议,主机需要先发送要读取的设备编号,相应设备编号的设备回传主机要读取的数据,而不符合该设备编号的设备保持静默状态。在主设备读取从设备时,遵循下面的通信协议:

UART接口改一对多

参考如下链接:https://blog.csdn.net/Ajisa_i/article/details/124731439

UART为点对点通信,直接将多个从机的TX线接到主机的RX上,是不能通信的。因此需要做如下改造:

这样,结合MODBUS协议,从机同时只会有1个在发送数据,不会互相干扰。二极管可以选用肖特基二极管SS14,其压降只有0.26V,响应速度10ns,实际支持2M的串口波特率。

参考链接

MODBUS协议介绍
UART改一对多

相关推荐
芯片人0078 小时前
纯硬件一键开关机ASIC芯片,为什么比 MCU 方案更适合更可靠
人工智能·单片机·嵌入式硬件·物联网·芯片
染予9 小时前
Ka 阵面星历下发与执行逻辑说明
stm32·嵌入式硬件
芯片人00710 小时前
武汉广昇科技的GMUX1308A模拟开关芯片成功导入中国台湾上市企业联昌电子,助力汽车电子供应链自主可控
科技·嵌入式硬件·物联网·汽车·芯片
恒锐丰科技林技术员13 小时前
EG2181D 半桥栅极驱动芯片详解:高压 MOS/IGBT 驱动实用器件
经验分享·嵌入式硬件·硬件工程
国科安芯13 小时前
面向卫星测控应答机的抗辐射MCU信号采集与定时控制研究
单片机·嵌入式硬件·mcu·架构·卫星·商业航天·抗辐射
CC城子13 小时前
EtherNet/IP I/O 丢包排查(linux系统)
linux·单片机·tcp/ip·ethernetip
新晨单片机设计14 小时前
S010A-基于STM32单片机水温控制系统(数码管显示)【Proteus仿真+Keil程序+原理图】
stm32·单片机·嵌入式硬件
事界见闻14 小时前
高性能电机控制MCU选型对比:精度、功耗与实时性如何兼得?
单片机·嵌入式硬件
Brilliantwxx15 小时前
【STM32】 初认识USART串口
linux·stm32·单片机·嵌入式硬件·架构
分享资料15 小时前
用小电容消除高频信号的原因
嵌入式硬件·硬件工程