From a95c209ade37589fa69990670da2506f5d10cc88 Mon Sep 17 00:00:00 2001 From: chen <15335560115@163.com> Date: 星期日, 22 六月 2025 16:47:29 +0800 Subject: [PATCH] 无感闸机测试可用版本,解决多标签时数组访问越界问题,存入授权表问题,但是多个设备的控制gpio的关断间隔过短,导致频繁开关未解决 --- keil/include/main/main.c | 55 ++++++++++++++++++++++++++++--------------------------- 1 files changed, 28 insertions(+), 27 deletions(-) diff --git a/keil/include/main/main.c b/keil/include/main/main.c index b59dabe..cac88e7 100644 --- a/keil/include/main/main.c +++ b/keil/include/main/main.c @@ -153,7 +153,7 @@ }; void uart_receive_callback(void *dev, uint32_t err_code) { - uart_receive(UART_ID1,m_EUART_DMA_RXBuf,EUART_RX_BUF_SIZE,uart_receive_callback); + uart_receive(UART_ID0,m_EUART_DMA_RXBuf,EUART_RX_BUF_SIZE,uart_receive_callback); } void mcu_deep_sleep(void) { @@ -295,7 +295,7 @@ } #define BIND_COUNT_NUM 50 -uint8_t bind_flag,bind_count=BIND_COUNT_NUM; +uint8_t bind_flag=1,bind_count=BIND_COUNT_NUM; extern uint8_t find_flag; void SecondTask(void) {static uint8_t second_count; @@ -309,7 +309,8 @@ if(bind_count--<=0) { bind_count=BIND_COUNT_NUM; - copy_taglist_to_flash(); + copy_taglist_to_flash(); + sys_reset(0); bind_flag=0; } } @@ -462,28 +463,28 @@ } void IdleTask(void) { -if(read_5v_input_pca()) - { - if(state5v==0) - { - state5v=1; - state5V_prase_flag=state5v; - gps_prase_flag=0;//解除gps解析 - uart1_change_from_gps_to_debug();//测试 - PCA9555_Set_One_Value_Output(MCU_A,1);//输出高电平切换为5V输入 - } - }else { - if(state5v==1) - { - g_com_map[MODBUS_MODE] = 0; - state5v=0; - state5V_prase_flag=state5v; - gps_prase_flag=1;//恢复gps解析 - uart1_change_from_debug_to_gps();//测试 - PCA9555_Set_One_Value_Output(MCU_A,0);//输出低电平切换为GPS - } - } - UART_CheckReceive(); +//if(read_5v_input_pca()) +// { +// if(state5v==0) +// { +// state5v=1; +// state5V_prase_flag=state5v; +// gps_prase_flag=0;//解除gps解析 +// uart1_change_from_gps_to_debug();//测试 +// PCA9555_Set_One_Value_Output(MCU_A,1);//输出高电平切换为5V输入 +// } +// }else { +// if(state5v==1) +// { +// g_com_map[MODBUS_MODE] = 0; +// state5v=0; +// state5V_prase_flag=state5v; +// gps_prase_flag=1;//恢复gps解析 +// uart1_change_from_debug_to_gps();//测试 +// PCA9555_Set_One_Value_Output(MCU_A,0);//输出低电平切换为GPS +// } +// } + UART0_CheckReceive(); } void boot_deinit(void) { @@ -509,7 +510,7 @@ board_clock_run(); boot_deinit(); board_pins_config(); - board_debug_console_open_baud(TRACE_PORT_UART1,BAUD_115200); + board_debug_console_open_baud(TRACE_PORT_UART0,BAUD_115200); // Reset reason reset_cause_get(); reset_cause_clear(); @@ -545,7 +546,7 @@ //uart_open(UART_ID1, &test_uart_cfg); // uart1_change_from_gps_to_debug(); //Uart1GpsRecDebugSend(); - uart_receive(UART_ID1,m_EUART_DMA_RXBuf,EUART_RX_BUF_SIZE,uart_receive_callback); + uart_receive(UART_ID0,m_EUART_DMA_RXBuf,EUART_RX_BUF_SIZE,uart_receive_callback); // Initialize low power mode power_init(); -- Gitblit v1.9.3