1.使用虚拟串口助手创建两个虚拟连接,如COM3和COM4;
2.自己编写的软件作为主站,slav作为从站;
3.主站使用COM3,从站使用COM4;
4.主站和从站设置一样的基本参数,包括ID号;
5.如果调试bool型,需要设置slave的显示类型是bool,同理Int和float;
6.主站对应的地址
//写单个线圈05:
bool ret = false;
ret = m_modbus->writeBit(addressOffset, true);
//写单个保持寄存器06:
ret = m_modbus->writeRegister_i(addressOffset, 17);
//写浮点数10(16)
ret = m_modbus->writeRegister_f((addressOffset, 17.0);
//写多个数组10(16)
ret = m_modbus->writeRegister_array(addressOffset, productNameBuffer, Address::MaxProductNameLength);
7.从站slave只有4个,调试时根据对应的写入地址选择
8.int,bool,float暂未发现如何同时调试,需要将slave切换成对应数据类型和对应通道、对应地址才能是数据发送成功;
9.地址的定义方式可以如下:
constexpr unsigned BASE = 0x0A430;
constexpr int addressOffset = 2032; //产品名称
10.上述的函数在使用时,已选默认端的首地址,如06对应40001,在函数中只需输入偏移地址即可。
11.调试float选择对应的float即可