From f73319d2b0740aadcae90dc3891beb86ea52acea Mon Sep 17 00:00:00 2001 From: zcn1123 <2363211205@qq.com> Date: Wed, 2 Sep 2020 18:14:39 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=BC=82=E5=B8=B8=E7=A0=8101?= =?UTF-8?q?/02=E5=93=8D=E5=BA=94=E6=8A=A5=E6=96=87=E7=94=9F=E6=88=90?= =?UTF-8?q?=E6=A8=A1=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Modbus_RTU_Salve/RTU_Salve.cpp | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/Modbus_communication/Modbus_RTU_Salve/RTU_Salve.cpp b/Modbus_communication/Modbus_RTU_Salve/RTU_Salve.cpp index 41b2b31..8494576 100644 --- a/Modbus_communication/Modbus_RTU_Salve/RTU_Salve.cpp +++ b/Modbus_communication/Modbus_RTU_Salve/RTU_Salve.cpp @@ -192,7 +192,18 @@ void Create_0x10_Response_Message(UINT8 *Requst_Message, UINT8 *Response_Message } } - +/********************************************************************************************* +* 功能     :  生成异常功能码响应报文 +* 描述    : 对不支持的功能码生成对应的异常响应报文 +* 输入 : *Requst_Message 请求报文 *Response_Message响应报文 +* 返回值 : 无 +**********************************************************************************************/ +void Create_Abnormal_Function_Code_Response_Message(UINT8 *Requst_Message, UINT8 *Response_Message) +{ + Response_Message[0] = Device_ID; + Response_Message[1] = Requst_Message[1] + 0x80; + Response_Message[2] = 0x01; +} /********************************************************************************************* * 功能     :  生成响应报文 * 描述    : 检查设备请求报文来生成对应功能的响应报文 @@ -211,7 +222,7 @@ bool Create_Response_Message(UINT8 *Requst_Message, UINT8 *Response_Message) case 0x03:Create_0x03_Response_Message(Requst_Message, Response_Message); break; case 0x0F:Create_0x0F_Response_Message(Requst_Message, Response_Message); break; case 0x10:Create_0x10_Response_Message(Requst_Message, Response_Message); break; - default: + default: Create_Abnormal_Function_Code_Response_Message(Requst_Message, Response_Message); } return true; }