From bccfff0ace10f85619e9f1fd4b2806f99e9390c2 Mon Sep 17 00:00:00 2001 From: chen <15335560115@163.com> Date: 星期六, 16 八月 2025 18:33:27 +0800 Subject: [PATCH] 防丢标签V1.0,demo版本实现震动和测距 --- keil/include/main/main.c | 34 ++++++++++++++++++---------------- 1 files changed, 18 insertions(+), 16 deletions(-) diff --git a/keil/include/main/main.c b/keil/include/main/main.c index 7aa9d35..520b7cd 100644 --- a/keil/include/main/main.c +++ b/keil/include/main/main.c @@ -68,7 +68,7 @@ #include "mk_phy.h" #include "mk_pwm.h" -#define DEBUG_MODE +//#define DEBUG_MODE extern int simple_main(void); extern int temp_main(void); void uart_change_check(uint16_t gpio_state); @@ -157,6 +157,18 @@ .int_tx = false, #endif }; +static void pwm_callback(void *dev, uint32_t status) +{ +// uint8_t id = *(uint8_t *)dev; +// LOG_INFO(TRACE_MODULE_APP, "PWM %x interrupt callback\r\n", id); + +// gpio_pin_toggle(IO_PIN_7); +} +struct PWM_CFG_T usr_pwm_cfg = { + .general_prescale = 15, + .int_en = 1, + .callback = pwm_callback, + }; 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); @@ -278,7 +290,7 @@ second_count = 0; MinuteTask(); } - + search_in_motor_list();//每秒判断一次根据距离最近的判断该不该震动 if(g_com_map[MOTOR_ENABLE]) { if(motor_keeptime-->0) @@ -416,9 +428,9 @@ ip2 = (g_com_map[TCP_IP_2]>>12&0xf)*1000+(g_com_map[TCP_IP_2]>>8&0xf)*100+(g_com_map[TCP_IP_2]>>4&0xf)*10+(g_com_map[TCP_IP_2]&0xf); ip3 = (g_com_map[TCP_IP_3]>>12&0xf)*1000+(g_com_map[TCP_IP_3]>>8&0xf)*100+(g_com_map[TCP_IP_3]>>4&0xf)*10+(g_com_map[TCP_IP_3]&0xf); port = g_com_map[TCP_PORT]; - g_com_map[VERSION] = (1<<8)|4; + 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,"固件版本:防丢器标签 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); } @@ -542,13 +554,7 @@ uint32_t tx_en_start_u32; uint32_t tx_en_start_u321; uint8_t baifenbi=5; -static void pwm_callback(void *dev, uint32_t status) -{ -// uint8_t id = *(uint8_t *)dev; -// LOG_INFO(TRACE_MODULE_APP, "PWM %x interrupt callback\r\n", id); -// gpio_pin_toggle(IO_PIN_7); -} static void voltage_input_handler() { @@ -582,11 +588,7 @@ wdt_close(WDT_ID0); LOG_INFO(TRACE_MODULE_APP, "UWB simple example\r\n"); - struct PWM_CFG_T usr_pwm_cfg = { - .general_prescale = 15, - .int_en = 1, - .callback = pwm_callback, - }; + pwm_open(&usr_pwm_cfg); // pwm_ch_enable(PWM_ID0, &usr_pwm_ch0_cfg); gpio_open(); @@ -632,7 +634,7 @@ LoraUp_Poll(); #ifndef DEBUG_MODE - if(sleep_flag&&state5v==0){//开始一段时间无休眠 + if(sleep_flag&&state5v==0&&!motor_state){//开始一段时间无休眠 trace_flush(); uint32_t lock = int_lock(); //LOG_INFO(TRACE_MODULE_APP, "进入低功耗"); -- Gitblit v1.9.3