| | |
| | | #define DEBUG_MODE |
| | | extern int simple_main(void); |
| | | extern int temp_main(void); |
| | | void UserKeyState_change(void); |
| | | void uart_change_check(uint16_t gpio_state); |
| | | #define TEST_UART_POLL_MODE 0 |
| | | #define TEST_UART_INTERUPT_MODE 1 |
| | |
| | | // { |
| | | // keystarttime3 = HIDO_TimerGetTick(); |
| | | // } |
| | | UserKeyState_change(); |
| | | } |
| | | void PowerTask(void) |
| | | { |
| | |
| | | { |
| | | voltage_Task(); |
| | | } |
| | | uint8_t fang_dou_flag=0; |
| | | void SecondTask(void) |
| | | {static uint8_t second_count; |
| | | if(second_count++>60) |
| | |
| | | uint8_t tt=1; |
| | | uint8_t flag_sleeptimer,flag_secondtask,secondtask_count,log_4g_enable_flag; |
| | | uint8_t uwb_enable_flag=0; |
| | | |
| | | uint32_t falling_time,rising_time,press_start_time,current_time; |
| | | bool button_pressed; |
| | | uint8_t change_buffer_flag=0; |
| | | // 按键状态机 |
| | | typedef enum { |
| | | IDLE, // 空闲状态 |
| | | WAIT_NEXT_RISING, // 已按下待确认 |
| | | WAIT_NEXT_FALLING // 等待释放状态 |
| | | } ButtonState; |
| | | volatile ButtonState sos_state = IDLE,temp_state; |
| | | #define MAX_WAIT_TIME_S 3 |
| | | void check_input_change(void) |
| | | { |
| | | uint16_t gpio_state; |
| | |
| | | delaysleep_count--; |
| | | //GPS工作逻辑 |
| | | } |
| | | |
| | | void UserKeyState_change(void) |
| | | { |
| | | if(change_buffer_flag) |
| | | { |
| | | current_time = HIDO_TimerGetTick(); |
| | | if(current_time-falling_time>MAX_WAIT_TIME_S) |
| | | {//初始化状态 |
| | | change_buffer_flag=0; |
| | | current_time=0; |
| | | falling_time=0; |
| | | } |
| | | } |
| | | } |
| | | //static void move_handler(enum IO_PIN_T pin) |
| | | //{ |
| | | // nomove_count=0; |
| | | //} |
| | | uint8_t change_buffer_flag=0; |
| | | |
| | | |
| | | static void gpio_change_handler(enum IO_PIN_T pin) |
| | | { |
| | | change_buffer_flag=1; |
| | | //change_buffer_flag=1; |
| | | falling_time = HIDO_TimerGetTick(); |
| | | // 记录新的按下时间 |
| | | sos_state=WAIT_NEXT_RISING; |
| | | change_buffer_flag = 1; |
| | | } |
| | | |
| | | void _4gUsart_handler(enum IO_PIN_T pin) |
| | |
| | | port = g_com_map[TCP_PORT]; |
| | | g_com_map[VERSION] = (1<<8)|0; |
| | | LOG_INFO(TRACE_MODULE_APP,"设备ID: %x .\r\n",dev_id); |
| | | LOG_INFO(TRACE_MODULE_APP,"固件版本:4G-GPS定位手环 V%d.%d. \r\n",g_com_map[VERSION]>>8,g_com_map[VERSION]&0xff); |
| | | LOG_INFO(TRACE_MODULE_APP,"固件版本:MK工装测试标签 V%d.%d. \r\n",g_com_map[VERSION]>>8,g_com_map[VERSION]&0xff); |
| | | LOG_INFO(TRACE_MODULE_APP,"服务器地址: %d.%d.%d.%d:%d.\r\n",ip0,ip1,ip2,ip3,port); |
| | | } |
| | | |
| | |
| | | flag_secondtask = 0; |
| | | SecondTask(); |
| | | } |
| | | |
| | | // PowerTask(); |
| | | //// IMUTask(); |
| | | //UserKeyTask(); |
| | | UserKeyTask(); |
| | | IdleTask(); |
| | | #ifndef DEBUG_MODE |
| | | //if(flag_sleeptimer) |