我做TCP server,往40009寫01,我現在使用QModbusServer 可以setdata值,但是在客戶端使用模擬器接收不到訊息。
//如果沒有定義modbus串口,直接回傳
if (!modbusDevice)
{
std::cout << "Modbus通訊失敗,請檢查配置是否正確!" << std::endl;
return;
}
QString str2 = "9c490001020001";
for(int i = 0 ;i < 10;i++)
{
int j = 2*i;
QString str1 = str2.mid(j,2);
bool ok;
quint16 hex = str1.toInt(&ok,16);
// qDebug("%d",hex);
ok = modbusDevice->setData(QModbusDataUnit::HoldingRegisters, i, hex);
// std::cout << ok<< std::endl;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/284251.html
標籤:Qt
