diff --git a/Modbus_communication/Modbus_TCP/TCP_client.cpp b/Modbus_communication/Modbus_TCP/TCP_client.cpp index 94a8ead..2a0a9a2 100644 --- a/Modbus_communication/Modbus_TCP/TCP_client.cpp +++ b/Modbus_communication/Modbus_TCP/TCP_client.cpp @@ -226,28 +226,28 @@ bool Tcp_client(string IP, unsigned int Port_number) unsigned int Operations_Number = Input_Operations_Number(Function_code); unsigned int Starting_address = Input_Starting_address(); string Write_date = Input_Write_date(Function_code, Operations_Number); - int Message_len = Crate_TCP_Message(Request_Message, Function_code, Operations_Number, Starting_address, Write_date); + int Request_Message_len = Crate_TCP_Message(Request_Message, Function_code, Operations_Number, Starting_address, Write_date); printf("主站请求 :"); - for (int i = 0; i < Message_len; i++) + for (int i = 0; i < Request_Message_len; i++) { printf("%02x ", Request_Message[i]); } printf("\n"); - Log_Note(Request_Message, 1, Message_len); + Log_Note(Request_Message, 1, Request_Message_len); Clear_recv_buf(ClientSocket); - send(ClientSocket, (char*)Request_Message, Message_len, 0); + send(ClientSocket, (char*)Request_Message, Request_Message_len, 0); memset(Response_Message, 0, 260); - int ret = recv(ClientSocket, (char*)Response_Message, 260, 0); - if (ret > 0) + int Response_Message_len = recv(ClientSocket, (char*)Response_Message, 260, 0); + if (Response_Message_len > 0) { - Log_Note(Response_Message, 0, ret); + Log_Note(Response_Message, 0, Response_Message_len); printf("从站响应 :"); - for (int i = 0; i < ret; i++) + for (int i = 0; i < Response_Message_len; i++) { printf("%02x ", Response_Message[i]); } printf("\n"); - if (Analysis_Response_Message(Response_Message, Request_Message, ret)) + if (Analysis_Response_Message(Response_Message, Request_Message, Response_Message_len)) printf("响应报文异常\n\n"); } else diff --git a/Modbus_communication/Modbus_TCP/common.cpp b/Modbus_communication/Modbus_TCP/common.cpp index 8a20b62..d6b7668 100644 --- a/Modbus_communication/Modbus_TCP/common.cpp +++ b/Modbus_communication/Modbus_TCP/common.cpp @@ -258,6 +258,14 @@ int Crate_TCP_Message(UINT8 *Message, int Function_code, unsigned int Operations } +/********************************************************************************************* +* 功能    : 日志记录 +* 描述   : 记录每次通信的请求和响应报文 +* 输入 : *Message 消息帧存放的数组 flage = 1 请求报文 flage = 其他 响应报文 +* Message_len 报文数据长度 +* 输出 : 无 +*********************************************************************************************/ + void Log_Note(UINT8 *Message, int flage, int Message_len) { FILE *fp = NULL;