From fa4719dc5d0d463df55fabc56d353a4cac007dd6 Mon Sep 17 00:00:00 2001 From: zhangbo <zhangbo@qq.com> Date: 星期二, 25 二月 2025 17:55:38 +0800 Subject: [PATCH] 通过初步测试阶段,已经可以显示当前坐标,修改了蓝牙基站数量的逻辑。 --- keil/lora_3029.c | 27 ++++++++++++++------------- 1 files changed, 14 insertions(+), 13 deletions(-) diff --git a/keil/lora_3029.c b/keil/lora_3029.c index e3e1d52..3a64974 100644 --- a/keil/lora_3029.c +++ b/keil/lora_3029.c @@ -165,6 +165,8 @@ extern uint8_t DMA_RXBuf_BT[200]; extern uint8_t report_ancnum; extern uint8_t report_ancnum_bt; +uint32_t BT_SEND_flag=0; +uint8_t BT_NUM=0; void LoraReportPoll(void) { // delay_ms(100); @@ -260,36 +262,35 @@ memcpy(&lora_sendbuffer[ANCID_IDX],report_ancid,report_ancnum*2); memcpy(&lora_sendbuffer[ANCID_IDX+report_ancnum*2],report_ancdist,report_ancnum*2); uint8_t LORA_RETRANSNUSSION_BT=0; - if(0<report_ancnum_bt&&report_ancnum_bt<11) + BT_NUM=DMA_RXBuf_BT[0]; + if(0<BT_NUM&&BT_NUM<11) { lora_sendbuffer[MSG_TYPE_IDX] = LORA_MSGTYPE_TAGMSGTOWG_BT; LORA_RETRANSNUSSION_BT=ANCID_IDX+report_ancnum*4; //LORA_RETRANSNUSSION_BT report_ancnum_bt lora_sendbuffer[LORA_RETRANSNUSSION_BT] = 0x2D; //蓝牙上传标识符 - memcpy(&lora_sendbuffer[LORA_RETRANSNUSSION_BT+1],&DMA_RXBuf_BT[0],report_ancnum_bt*2+1); //基站ID - memcpy(&lora_sendbuffer[LORA_RETRANSNUSSION_BT+report_ancnum_bt*2+2],&DMA_RXBuf_BT[1+report_ancnum_bt*2],report_ancnum_bt*2);//基站距离 - lora_sendbuffer[MSG_LENGTH] = 4*report_ancnum+4*report_ancnum_bt+ANCID_IDX+4; + memcpy(&lora_sendbuffer[LORA_RETRANSNUSSION_BT+1],&DMA_RXBuf_BT[0],BT_NUM*2+1); //基站ID + memcpy(&lora_sendbuffer[LORA_RETRANSNUSSION_BT+BT_NUM*2+2],&DMA_RXBuf_BT[1+BT_NUM*2],BT_NUM*2);//基站距离 + lora_sendbuffer[MSG_LENGTH] = 4*report_ancnum+4*BT_NUM+ANCID_IDX+2; } if(lora_sendbuffer[LORA_RETRANSNUSSION_BT]==0x2D) { - checksum = Checksum_u16(lora_sendbuffer,4*report_ancnum_bt+4*report_ancnum+ANCID_IDX+2); - memcpy(&lora_sendbuffer[ANCID_IDX+report_ancnum_bt*4+report_ancnum*4+2],&checksum,2); + checksum = Checksum_u16(lora_sendbuffer,4*BT_NUM+4*report_ancnum+ANCID_IDX+2); + memcpy(&lora_sendbuffer[ANCID_IDX+BT_NUM*4+report_ancnum*4+2],&checksum,2); + BT_SEND_flag++; } else { checksum = Checksum_u16(lora_sendbuffer,4*report_ancnum+ANCID_IDX); memcpy(&lora_sendbuffer[ANCID_IDX+report_ancnum*4],&checksum,2); } - //rf_enter_continous_tx(); -// LORA_3029_SEND(lora_sendbuffer,ANCID_IDX+report_ancnum*4+2); - LORA_3029_SINGLE_SEND(lora_sendbuffer,ANCID_IDX+report_ancnum*4+report_ancnum_bt*4+4,0); + + + LORA_3029_SINGLE_SEND(lora_sendbuffer,ANCID_IDX+report_ancnum*4+BT_NUM*4+4,0); memset(DMA_RXBuf_BT, 0,200); memset(&lora_sendbuffer[ANCID_IDX],0,200); -// rf_single_tx_data(lora_sendbuffer,ANCID_IDX+report_ancnum*4+2,2); - //rf_enter_continous_rx(); - //LED_TB_ON; - // bat_percent=Get_Battary(); + for(uint8_t i=0;i<3;i++) recnum[i] = 0; -- Gitblit v1.9.3