From 00a42dde83853cc73976901bd8a0bdc8dc0a2be3 Mon Sep 17 00:00:00 2001 From: yincheng.zhong <634916154@qq.com> Date: 星期一, 02 十二月 2024 10:10:32 +0800 Subject: [PATCH] V2.18 换回SF7 解决lora 有时接收不工作的问题,罗姆10标签测试通过 --- Src/application/dw_mbx_tag.c | 21 +++++++++------------ 1 files changed, 9 insertions(+), 12 deletions(-) diff --git a/Src/application/dw_mbx_tag.c b/Src/application/dw_mbx_tag.c index d585612..c3bc9eb 100644 --- a/Src/application/dw_mbx_tag.c +++ b/Src/application/dw_mbx_tag.c @@ -245,7 +245,7 @@ wg_state_enum wg_state = WG_Lost; uint8_t lora_sendbuffer[200]; u8 seq_num; -extern u8 wg_lost_count; +extern u32 wg_lost_count; uint16_t wg_report_freq,wg_report_id; #define WG_LOST_SWITCH_THRES 5 #define WG_LOST_NOUWB_COUNT 60 @@ -336,7 +336,7 @@ } } } - lora_sendbuffer[BAT_IDX] = group_mindist_index;//测距基站数量 + if(report_ancnum>LORA_REPORT_MAXANC_NUM) //考虑lora传输时间,最多发送10个基站数据。 report_ancnum = LORA_REPORT_MAXANC_NUM; #ifdef USE_GPS @@ -349,7 +349,7 @@ memcpy(&lora_sendbuffer[SOURCE_ID_IDX],&g_com_map[DEV_ID],2); memcpy(&lora_sendbuffer[DEST_ID_IDX],&wg_report_id,2); lora_sendbuffer[SEQNUM_IDX] = seq_num++; - //lora_sendbuffer[BAT_IDX] = bat_percent; + lora_sendbuffer[BAT_IDX] = bat_percent; lora_sendbuffer[STATE_IDX] = !GET_USERKEY|stationary_flag<<1; #ifdef USE_GPS memcpy(&lora_sendbuffer[GPS_JINGDU_IDX],&gps_jingdu,8); @@ -361,11 +361,8 @@ lora_sendbuffer[GPS_CHAFENLINGQI] = gps_chafenlingqi; #endif // memcpy(&lora_sendbuffer[BAR_HEIGHT_IDX],&bar_height,2); - memcpy(&lora_sendbuffer[ANCID_IDX+report_ancnum*2],recnum,6); - report_ancnum+=3; - lora_sendbuffer[ANCNUM_IDX] = report_ancnum; - memcpy(&lora_sendbuffer[ANCID_IDX],report_ancid,(report_ancnum-3)*2); + memcpy(&lora_sendbuffer[ANCID_IDX],report_ancid,report_ancnum*2); memcpy(&lora_sendbuffer[ANCID_IDX+report_ancnum*2],report_ancdist,report_ancnum*2); checksum = Checksum_u16(lora_sendbuffer,4*report_ancnum+ANCID_IDX); memcpy(&lora_sendbuffer[ANCID_IDX+report_ancnum*4],&checksum,2); @@ -426,9 +423,9 @@ { Lora_send_flag=0; #ifdef GROUPID_SWITCH -// if(rec_secdelay>0) -// { -// rec_secdelay--; + if(rec_secdelay>0) + { + rec_secdelay--; // if(lora_jianting_flag) // { // if(++group_id>GROUP_NUM) @@ -443,8 +440,8 @@ // SwitchLoraSettings(UWB_CHANNEL_FRQ+group_id,UWB_CHANNEL_SF,0); // Radio.Rx(0); // } -// return; -// } + return; + } // //找3个小组中最近距离最大的小组,上传报文后切换到这个小组,因为上传报文会时间占用。 // if(group_min_dist[1]>group_min_dist[2]) //如果1大于2 // { -- Gitblit v1.9.3