chen
2025-05-07 c8c1cf5223f0576d4c378ac627d6eeed6caf04d5
keil/include/main/main.c
@@ -62,7 +62,7 @@
#include "HIDO_Timer.h"
#include "TCPClient.h"
//#define DEBUG_MODE
#define DEBUG_MODE
extern int simple_main(void);
extern int temp_main(void);
#define TEST_UART_POLL_MODE 0
@@ -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)
{
@@ -208,6 +208,7 @@
uint8_t gps_enable_flag,motor_open_air_flag,moter_open_uwb_flag,flag_fenli_alarm = 0,fenli_alarm_count,delaysleep_count,enbale_blink_flag;
int need_open_gps_count;
uint32_t keystarttime,keystarttime2;
extern uint32_t get_in_num,get_out_num;
void MotorPoll(void)
{
    if(UWB_work_state==UN_BIND) {
@@ -321,6 +322,9 @@
        second_count = 0;
        MinuteTask();
    }
      TagListUpdate_person_num_car();
      //in_table_log();
//      if(!power_low_flag)
//      Gps_change();
//      else{
@@ -370,7 +374,7 @@
   green_charge_state=0;
   charge_red_on();
   }
    UWBPoll();
   charge_state_change();//充电状态判断
if(secondtask_count++%2==0)
    {
@@ -380,7 +384,7 @@
    }
      if(enbale_blink_flag)
   {
      delay_us(5000);
      //delay_us(5000);
   green_charge_state=0;
   charge_red_off();
   }      
@@ -407,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为升级处理当调试时候改为
@@ -415,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];
@@ -451,7 +457,7 @@
}
uint8_t calibration_start;
void IdleTask(void)
{
//    if(gpio_pin_get_val(INPUT_5V_Pin))
@@ -480,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)
{
@@ -527,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();
@@ -562,6 +574,8 @@
//    TCPClient_Init();
    gpio_open();
      board_output_init();//配置adcGND引脚
//      battery_monitor_open();
//      Voltage_input=battery_monitor_get();
@@ -572,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引脚
@@ -583,7 +597,7 @@
 
   // 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();
@@ -597,8 +611,8 @@
//       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)//确认是否休眠下才开启功能
//         {
//        if(flag_TCP_reconnectting||IfTCPConnected())