From dc8bff918d20531e7136d794bea3de870049c567 Mon Sep 17 00:00:00 2001 From: yelvlab Date: Mon, 23 Dec 2024 20:00:58 +0800 Subject: [PATCH] =?UTF-8?q?=E9=AA=8C=E8=AF=81=E6=B1=82=E5=92=8CCRC?= =?UTF-8?q?=E8=AE=A1=E7=AE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/rs485.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/rs485.c b/src/rs485.c index 7ae303c..52ff6d7 100644 --- a/src/rs485.c +++ b/src/rs485.c @@ -39,15 +39,17 @@ void rs485_config(void) { void process_command(uint8_t *cmd, size_t length) { char combined_str[3]; - - // printf("\n"); - // printf("%s\n", combined_str); - // } - - // printf("length: %d\r\n", length); - - printf("%c", calculate_crc(cmd, length - 2)); + printf("%c", cmd[length - 2]); + + if (calculate_crc(cmd, length - 2) == cmd[length - 2]) { + printf("CRC check success\r\n"); + } else { + printf("CRC check failed\r\n"); + return; + } + + if (cmd[0] == 0xD5 && cmd[1] == 0x03) { if (cmd[2] == 0x02) { sprintf(combined_str, "%c%c", cmd[3], cmd[4]);