From 974181bcefe299fbed4c1dcd6d39be3e9f674c0e Mon Sep 17 00:00:00 2001 From: chen <15335560115@163.com> Date: 星期五, 13 六月 2025 18:04:16 +0800 Subject: [PATCH] 成功增加sscom03shell配置指令功能,但是需要输入3次才能进入函数处理未解决 --- keil/include/drivers/serial_at_cmd_app.c | 13 +++++++++++++ 1 files changed, 13 insertions(+), 0 deletions(-) diff --git a/keil/include/drivers/serial_at_cmd_app.c b/keil/include/drivers/serial_at_cmd_app.c index 5237b7a..21f806d 100644 --- a/keil/include/drivers/serial_at_cmd_app.c +++ b/keil/include/drivers/serial_at_cmd_app.c @@ -8,6 +8,7 @@ //#include "UsartII.h" //#include "main.h" #include "board.h" +#include "DBG.h" //#include "Spi.h" //#include "radio.h" @@ -151,6 +152,7 @@ char GGA_Format_message[200]; extern uint8_t bat_percent,userkey_state,gps_first_flag; extern GPSState GPS_state; +uint8_t shell_receive_state; void UsartParseDataHandler(uint8_t data) { if(state5V_prase_flag&&!g_com_map[MODBUS_MODE]) @@ -236,7 +238,18 @@ } else if ((usart_receive_state == UsartReceiveWaitMsgType) && (data == 0x3)) { usart_receive_state = UsartReceiveWaitLength; pack_msgtype = data; + }else if ((shell_receive_state == 0) && (data == 0x03)) { + shell_receive_state = 1; + uart_send(UART_ID1, data,1, NULL); + } else if ((shell_receive_state == 1) && (data == 0x03)) { + shell_receive_state = 2; + uart_send(UART_ID1, data,1, NULL); + } else if ((shell_receive_state == 2) && (data == 0x03)) { + DBG_SetMode(DBG_MODE_SHELL); + uart_send(UART_ID1, data,1, NULL); + shell_receive_state=0; } + else { usart_receive_state = UsartReceiveWaitHead0; pack_index = 0; -- Gitblit v1.9.3