Commit c4cb490d authored by Vinogradov Aleksei's avatar Vinogradov Aleksei Committed by Pavel Vainerman

Modbus: Исправил ошибку в расчете id регистров, приводившую к наложение…

Modbus: Исправил ошибку в расчете id регистров, приводившую к наложение регистров с разными функциями
parent a7ad456f
...@@ -3659,8 +3659,8 @@ namespace uniset ...@@ -3659,8 +3659,8 @@ namespace uniset
int max = numeric_limits<ModbusRTU::ModbusData>::max(); // по идее 65535 int max = numeric_limits<ModbusRTU::ModbusData>::max(); // по идее 65535
int fn_max = numeric_limits<ModbusRTU::ModbusByte>::max(); // по идее 255 int fn_max = numeric_limits<ModbusRTU::ModbusByte>::max(); // по идее 255
// fn необходимо привести к диапазону 0..max // для fn необходимо сдвинуть регистр max * fn;
return max + mbreg + max + uniset::lcalibrate(fn, 0, fn_max, 0, max, false); return max + mbreg + max * fn;
} }
// ---------------------------------------------------------------------- // ----------------------------------------------------------------------
size_t ModbusRTU::numBytes( const size_t nbits ) size_t ModbusRTU::numBytes( const size_t nbits )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment