From dd08a0f8ffd2c5ae1db9ba5aa90f3c41e264749c Mon Sep 17 00:00:00 2001 From: zhangbo <zhangbo@qq.com> Date: 星期二, 15 七月 2025 17:39:12 +0800 Subject: [PATCH] 测试通过XYZ的1g加速度 --- keil/include/main/main.c | 70 +++++++++++++++++++++++++---------- 1 files changed, 50 insertions(+), 20 deletions(-) diff --git a/keil/include/main/main.c b/keil/include/main/main.c index 0b5a648..9ec506d 100644 --- a/keil/include/main/main.c +++ b/keil/include/main/main.c @@ -24,6 +24,7 @@ #include "PCA9555.h" #include "WS2812.h" #include "DBG.h" +#include "SC7A22H.h" //#define DEBUG_MODE extern int simple_main(void); @@ -48,6 +49,7 @@ #define INACTIVE_TIMEOUT 30 +uint8_t input5v_flag=0; extern uint8_t mUsartReceivePack[100]; extern uint8_t mUsart2ReceivePack[150]; extern uint8_t state5V_prase_flag,gps_prase_flag; @@ -275,6 +277,7 @@ } } +uint16_t gaodu; uint8_t guanjiflag; uint8_t heartbeasend_flag; uint32_t guanjiflagtime; @@ -366,6 +369,7 @@ HIDO_TimerTick(); // if(nomove_count<=g_com_map[NOMOVESLEEP_TIME])//防止溢出 nomove_count++; + gaodu=GetPressAndHeight()*100; // else{ // nomove_count=g_com_map[NOMOVESLEEP_TIME]+1; // } @@ -586,7 +590,7 @@ // } g_com_map[MODBUS_MODE] = 0; log_4g_enable_flag=g_com_map[LOG_4G_ENABLE]; - g_com_map[VERSION] = (1<<8)|22; + g_com_map[VERSION] = (1<<8)|24; LOG_INFO(TRACE_MODULE_APP,"设备ID: %x .\r\n",dev_id); @@ -623,10 +627,16 @@ extern uint8_t ota_flag; uint8_t bat_percent_only_one=1; extern uint8_t jiancebat_percent_flag; +extern uint8_t double_click_flag; + void IdleTask(void) { if(read_5v_input_pca()) { + if(input5v_flag==0) + { + NVIC_SystemReset(); + } if(state5v==0) { state5v=1; @@ -680,8 +690,8 @@ HIDO_TimerPoll(); HIDO_ATLitePoll(); TCPClient_Poll(); - if(g_com_map[RTCMMODE_INDEX] == RTCMMODE_TCP) - {TCPClient_Poll_1();} +// if(g_com_map[RTCMMODE_INDEX] == RTCMMODE_TCP) +// {TCPClient_Poll_1();} if(flag_secondtask) { flag_secondtask = 0; @@ -785,6 +795,19 @@ } } + + if(double_click_flag) + { + double_click_flag=0; + nomove_count=0; + unsigned char CLICK_status; + + SL_SC7A22H_I2c_Spi_Read(SL_SC7A22H_SPI_IIC_MODE, 0x39, 1, &CLICK_status); + test_gravity_reading(); + + + } + } void boot_deinit(void) { @@ -902,7 +925,6 @@ int test1,test3; uint32_t test4; extern uint8_t receive_flag; -uint16_t gaodu; static void app_wdt_callback(void *dev, uint32_t status) { ASSERT(status, "WDT TIMEOUT,程序复位"); @@ -921,14 +943,16 @@ boot_deinit(); board_pins_config(); gpio_open(); - IIC2_Init(); - Accelerometer_Init(); + IIC2_Init(); + Accelerometer_Init(); + // delay_ms(100); BarInit(); // delay_ms(100); // gaodu=GetPressAndHeight(); PCA9555_init(); - board_debug_console_open_baud(TRACE_PORT_UART1,BAUD_115200); + board_debug_console_open_baud(TRACE_PORT_UART1,BAUD_921600); + pca_input_detection_init(pca_handler);//pca检测输入 // while(1); // Reset reason reset_cause_get(); @@ -960,10 +984,10 @@ // NTRIPClient_Init(); // NTRIPApp_Init(); // } - if(g_com_map[RTCMMODE_INDEX] == RTCMMODE_TCP) - { - TCPClient_Init_1(); - } +// if(g_com_map[RTCMMODE_INDEX] == RTCMMODE_TCP) +// { +// TCPClient_Init_1(); +// } // HTTPClient_Init(); wdt_open(WDT_ID0,&app_wdt_cfg);//30s检测喂狗 LED_output_init();//配置彩色灯引脚 @@ -981,11 +1005,12 @@ if(!read_5v_input_pca()) { Set4LEDColor(BLUE,GREEN,WHITE,RED); - delay_ms(500); + delay_ms(100); Set4LEDColor(RED,WHITE,RED,WHITE); - delay_ms(500); + delay_ms(100); Set4LEDColor(LEDOFF,LEDOFF,LEDOFF,LEDOFF); } + g_com_map[MODBUS_MODE] = 0; state5v=0; state5V_prase_flag=state5v; @@ -1000,8 +1025,10 @@ sleep_timer_start(__MS_TO_32K_CNT(SLEEP_TIMER_NUM));//测试 PCA9555_Set_One_Value_Output(ADC_MINIUS,0);//拉低 adc_get(&sample[0], NUM_SAMPLES, adc_callback);//adc采样 - pca_input_detection_init(pca_handler);//pca检测输入 + gaodu=GetPressAndHeight()*100; + if(read_init_5v_input_pca()) + {input5v_flag=1;} while (1) { @@ -1011,17 +1038,20 @@ HIDO_ATLitePoll(); TCPClient_Poll(); wdt_ping(WDT_ID0);//喂狗 - if(g_com_map[RTCMMODE_INDEX] == RTCMMODE_TCP) - { - TCPClient_Poll_1(); - } +// if(g_com_map[RTCMMODE_INDEX] == RTCMMODE_TCP) +// { +// TCPClient_Poll_1(); +// } if(flag_secondtask) { flag_secondtask = 0; SecondTask(); } - IMUTask(); +// SC7A22H_get_double_click(); +// SL_SC7A22H_RawData_Read(); + IMUTask(); IdleTask(); - check_step_and_update_state(); + check_step_and_update_state(); +// test_gravity_reading(); } } -- Gitblit v1.9.3