chen
2025-05-07 c8c1cf5223f0576d4c378ac627d6eeed6caf04d5
keil/include/main/main.c
@@ -145,7 +145,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)
{
@@ -323,7 +323,7 @@
        MinuteTask();
    }
      TagListUpdate_person_num_car();
      in_table_log();
      //in_table_log();
      
//      if(!power_low_flag)
//      Gps_change();
@@ -411,6 +411,7 @@
extern uint16_t ip0,ip1,ip2,ip3,port;
extern uint8_t gps_4g_flag;
extern uint8_t gps_need_data_flag,gps_open_flag;
extern  float pd_offset,offset;
void Program_Init(void)
{
    Usart1ParseDataCallback = UsartParseDataHandler;//需改为默认为gps处理,UsartParseDataHandler为升级处理当调试时候改为
@@ -419,6 +420,7 @@
    group_id=g_com_map[GROUP_ID];//组ID
//    tag_frequency = 1000/g_com_map[COM_INTERVAL];//测距频率这个存的是测距时间
    memcpy(&disoffset,&g_com_map[DIST_OFFSET],2);
      memcpy(&pd_offset,&g_com_map[PDOFFSET],4);
//    g_com_map[ALARM_DISTANCE1] = 40;
//    g_com_map[ALARM_DISTANCE2] = 40;
    warning_distance=g_com_map[ALARM_DISTANCE1];
@@ -455,7 +457,7 @@
}
uint8_t calibration_start;
void IdleTask(void)
{
//    if(gpio_pin_get_val(INPUT_5V_Pin))
@@ -484,7 +486,13 @@
//            //UartDeinit();
//        }
//    }
      UART_CheckReceive();
      UART0_CheckReceive();
         if(g_com_map[CNT_CALIB])
   {
      g_com_map[CNT_CALIB]=0;
      save_com_map_to_flash();
      calibration_start=1;
   }
}
int bind_check(void)
{
@@ -531,7 +539,7 @@
    board_clock_run();
    boot_deinit();
    board_pins_config();
    board_debug_console_open(TRACE_PORT_UART1);
    board_debug_console_open(TRACE_PORT_UART0);
    // Reset reason
    reset_cause_get();
    reset_cause_clear();
@@ -566,6 +574,8 @@
//    TCPClient_Init();
    gpio_open();
      board_output_init();//配置adcGND引脚
//      battery_monitor_open();
//      Voltage_input=battery_monitor_get();
@@ -576,7 +586,7 @@
    Accelerometer_Init();
    IO_control_init();
    io_pin_mux_set(SCL_PIN, IO_FUNC0);//测试测距波形
    gpio_pin_set_dir(SCL_PIN , GPIO_DIR_IN, 0);
    gpio_pin_set_dir(SCL_PIN , GPIO_DIR_OUT, 0);
    io_pull_set(SCL_PIN , IO_PULL_UP, IO_PULL_UP_LEVEL4);
    //gps_air780_power_change(0,1);//开启gps,4G 
//加速度计初始化必须在IO_control_init之前因为复用SDA引脚
@@ -587,21 +597,21 @@
 
   // 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();
      //AIR780E_Reset(); //4G模块重启,耗时1.5秒,这个是无法同步的关键
    sleep_timer_open(true, SLEEP_TIMER_MODE_RELOAD, sleep_timer_callback);
    sleep_timer_start(__MS_TO_32K_CNT(g_com_map[COM_INTERVAL]));//测试
    //sleep_timer_start(__MS_TO_32K_CNT(SLEEP_TIMER_NUM));//测试
    //sleep_timer_start(__MS_TO_32K_CNT(g_com_map[COM_INTERVAL]));//测试
    sleep_timer_start(__MS_TO_32K_CNT(SLEEP_TIMER_NUM));//测试
 //   board_5V_input_init(voltage_input_handler);
       adc_get(&sample[0], NUM_SAMPLES, adc_callback);//adc采样
    board_acceleration_detection_init(move_handler);
//       LOG_INFO(TRACE_MODULE_APP, "测试进入app");
      board_4GUsart_detection_init(_4gUsart_handler);
    while (1)
    { test4=gpio_pin_get_val(SCL_PIN);
    {
         UWBPoll();
//         if(!power_low_flag)//确认是否休眠下才开启功能
//         {