ModbusRTU寄存器地址對不上問題!
在發送的數據幀中,需要指定要訪問的寄存器地址。在本公司的MODBUS 協議地址分配表中,寄存器的地址=數據幀中寄存器的地址+1。舉例來說,需要訪問輸入寄存器的30257地址,其中“3”為輸入寄存器地址的前綴,在某些組態軟件中會用到,但是“3”不作為寄存器地址。“0257”是十進制數,表示寄存器地址,如果客戶自己編寫程序,則在發送的數據幀中,寄存器地址應填寫“256”(即0x0100);如果在組態軟件中,則直接填寫“257”即可。
解釋:該地址并非是我公司寫錯,因MODBUS是MODCON公司開發的一個通訊協議。第三方設備的地址都是+1,如果用串口工具或是**編程語言寫命令就要減去1
