From 6f6d3bc73b0b59b67ec7c3acfe6cd966523741b3 Mon Sep 17 00:00:00 2001 From: yincheng.zhong <634916154@qq.com> Date: 星期三, 24 四月 2024 10:04:12 +0800 Subject: [PATCH] V1.21 修改LED显示,增加秒延迟功能 --- Src/radio/Lora.c | 16 +++++++++++++--- 1 files changed, 13 insertions(+), 3 deletions(-) diff --git a/Src/radio/Lora.c b/Src/radio/Lora.c index 03f8d2e..6f65055 100644 --- a/Src/radio/Lora.c +++ b/Src/radio/Lora.c @@ -14,6 +14,7 @@ #include "dw_mbx_tag.h" #include "Flash.h" #include "dw_driver.h" +#include "WS2812.h" static RadioEvents_t RadioEvents; #define USE_MODEM_LORA //#define USE_MODEM_FSK @@ -241,11 +242,12 @@ extern uint8_t report_ancnum; static uint16_t delaytime = 1200; static uint16_t source_id; -uint8_t rec_index; +uint8_t rec_index,rec_secdelay; uint16_t rec_value,rec_delaytime,rx_count; uint16_t rec_value,rec_delaytime,rx_count,datalen_offset; -int16_t target_count; +int32_t target_count; uint8_t shengji_flag; +extern uint32_t uwbled,gpsled,loraled,powerled; void OnRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr ) { uint16_t checksum1; BufferSize = size; @@ -276,13 +278,19 @@ if(!memcmp(&wg_report_id,&RX_Buffer[SOURCE_ID_IDX],2)) { wg_lost_count = 0; + loraled=GREEN; switch(RX_Buffer[PWTAG_RW_FLAG_IDX]) { case WGRSP_RWTAG_NONE: current_count = HAL_LPTIM_ReadCounter(&hlptim1); wg_report_freq = RX_Buffer[POLL_FREQ_IDX]+400; memcpy(&rec_delaytime,&RX_Buffer[NEXTPOLL_TIME_IDX],2); - + rec_secdelay = RX_Buffer[PWTAG_SECDELAY_IDX]; + if(BufferSize!=13||rec_secdelay>20) + { + rec_secdelay = 0; + } + if(report_ancnum<2) { datalen_offset = report_ancnum*85; @@ -303,6 +311,8 @@ break; case WGRSP_RWTAG_WRITE: rec_index = RX_Buffer[PWTAG_WRITE_IDX_IDX]; + if(rec_index<=DEV_ID) + return; if(rec_index==0xDD) { if(usart5_state==1) -- Gitblit v1.9.3