diff --git a/Modbus_communication/Modbus_RTU_Salve/common.cpp b/Modbus_communication/Modbus_RTU_Salve/common.cpp index a32df01..38eea15 100644 --- a/Modbus_communication/Modbus_RTU_Salve/common.cpp +++ b/Modbus_communication/Modbus_RTU_Salve/common.cpp @@ -328,13 +328,13 @@ BYTE Input_Parity(void) unsigned int Count_Read_date_number(int Function_code, unsigned int Operations_Number) { unsigned int Read_date_number = 0; - if (Function_code == 0x01) //读线圈 + if (Function_code == 0x01 || Function_code == 0x0F) //读线圈 { Read_date_number = Operations_Number / 8; if (Operations_Number % 8) Read_date_number++; } - if (Function_code == 0x03)//读寄存器 + if (Function_code == 0x03 || Function_code == 0x10)//读寄存器 Read_date_number = Operations_Number * 2; return Read_date_number; }