chen
2025-05-28 07f7a9b6e66e5673380e173c4d710d6f9acb557d
keil/include/main/main.c
@@ -68,7 +68,7 @@
uint8_t enable_sleep_count,sleep_flag;
uint32_t battery_get_count;
//#define DEBUG_MODE
uint32_t reboot_num;
struct UART_CFG_T test_uart_cfg =
{
        .parity = UART_PARITY_NONE,
@@ -118,7 +118,7 @@
        .callback = app_wdt_callback,
    };
uint8_t state5v = 1;
uint8_t state5v = 0;
uint8_t bat_percent=0,g_start_send_flag=1;
int16_t fVoltage_mv;
uint8_t bat_percent;
@@ -133,9 +133,10 @@
void boot_deinit(void);
void Get_batterty_Voltage(void);
void Calculate_battery_percent(void);
uint8_t sleep_limit_time=1;
static 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 UartInit(void)
{
@@ -176,9 +177,12 @@
{
    //sleep_timer_start(__MS_TO_32K_CNT(1000));
   static uint8_t lost_jumpcount=0;
   reboot_num++;
   if(reboot_num>=3600)
      NVIC_SystemReset(); //软复位回到bootloader
      enable_sleep_count++;
   if(enable_sleep_count==SLEEP_START_TIME){
   if(enable_sleep_count==sleep_limit_time){
      enable_sleep_count=0;
      sleep_flag=1;
   }
@@ -236,21 +240,24 @@
group_id=g_com_map[GROUP_ID];
memcpy(&dev_id ,&g_com_map[DEV_ID],2);
tag_frequency=1000/g_com_map[COM_INTERVAL];   
g_com_map[VERSION] = (1<<8)|5;
g_com_map[VERSION] = (1<<8)|12;
LOG_INFO(TRACE_MODULE_APP,"设备ID: %x .\r\n",dev_id);
LOG_INFO(TRACE_MODULE_APP,"固件版本:UWB-标签 V%d.%d. \r\n",g_com_map[VERSION]>>8,g_com_map[VERSION]&0xff);
LOG_INFO(TRACE_MODULE_APP,"固件版本:UWB-免布线信标 V%d.%d. \r\n",g_com_map[VERSION]>>8,g_com_map[VERSION]&0xff);
}
uint8_t test1;
void IdleTask(void)
{ UART0_CheckReceive();
   test1=gpio_pin_get_val(INPUT_5V_Pin);
   if(gpio_pin_get_val(INPUT_5V_Pin))
   {
      //UART_CheckSend();
// bat_percent=Get_Battary();
      if(state5v==0)
      {
         state5v=1;
         sleep_flag=0;
         sleep_limit_time=30;//新增插入串口后30s不休眠
         enable_sleep_count=0;//重新插拔可以重置时间
      }   
   }else{
        if(state5v==1)
@@ -335,11 +342,11 @@
   #endif
      //Serial0_PutString("进入app测试\r\n");
    while (1)
    {  wdt_ping(WDT_ID0);//喂狗
    {
         if(g_start_send_flag)
         {
         //LOG_INFO(TRACE_MODULE_APP, "测距ing");
         wdt_ping(WDT_ID0);//喂狗
         g_start_send_flag = 0;
         gpio_pin_set(LED_PIN);//亮
         TagRange();