最新回复
仪表端一般是MODBUS从站,单片机相当于主站,设计通讯时要注意以下几点:
1. 两端的通讯接口硬件特性要一致,如RS232或RS485等,且保证接线正确。仪表端设置比较简单,单片机端则要注意串口初始化时的相关寄存器设置。可以先接到电脑的串口上,看看单片机串口发出的数据是否正确。
2. 两端通讯接口的设置要一致,包括波特率、校验位、字长、停止位。
2. 主站发送的请求报文中,包含的从站地址码要与仪表设置的相同。
3. 主站发送的请求报文中,包含的功能码、寄存器地址、寄存器个数等信息要遵循所选仪表的规范,这在仪表的说明书中应该能找到,或向厂家索取。
4. 主站发送的请求报文中,包含的CRC校验码必须计算正确,且发送次序必须正确。
5. 如果是RS485通讯方式,主站在发送完成后,要立即转成接收状态,才能正确接收到完整的应答报文。如果单片机设计的是RS232,用中断方式处理收发,外加232/485转换器,就不用考虑这个操作了。
以上是个人一些经验,希望能帮到你。
详情
回复
发表于 2016-4-9 13:14
| |
|
|
| |
|
|
此帖出自单片机论坛
| ||
个人签名淘宝:https://viiot.taobao.com/Q群243090717
多年专业物联网行业经验,个人承接各类物联网外包项目 |
||
此帖出自单片机论坛
| ||
|
||
曾经的版主且威望大于2000,或对EEWORLD论坛有突出贡献的坛友
EEWorld Datasheet 技术支持