在前面的博文中,我已经介绍了温湿度传感器中使用的MODBUS协议,今天就实际测试一下。
测试采用的是冀欧速传感器和DT5019的USB到RS485转换线,硬件上先将黄色线连接到T/R+,绿线连接到T/R-。
串口工具采用的是XCOM 2.1,它比较方便处理十六进制数据。测试前需要选择16进制显示和16进制发送,去掉“发送新行”(这会导致自动发送回车,不满足MODBUS-RTU协议的规定)。
查询数据发送“01 03 00 00 00 02 C4 0B” ,其含义在前面的博文中已经介绍了,就是读温湿度寄存器的意思。
温湿度传感器返回的数据是“01 03 04 00 3F 02 2F CB 7E”。按照前文的介绍,00 3F是温度,6.3℃。我办公室没有那么冷,正常返回应该是0xFD或0xFC,也就是25℃左右,这个数可能是刚上电不太准确。湿度是0x22F,55.9%RH。