From ae0b42614c7f3de6f13c2ebacd3c1b46662ed9e9 Mon Sep 17 00:00:00 2001 From: zhangbo <zhangbo@qq.com> Date: 星期一, 23 六月 2025 17:26:33 +0800 Subject: [PATCH] 现场试用版 --- keil/lora_3029.c | 634 ++++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 470 insertions(+), 164 deletions(-) diff --git a/keil/lora_3029.c b/keil/lora_3029.c index c88ff6e..e08ecfd 100644 --- a/keil/lora_3029.c +++ b/keil/lora_3029.c @@ -1,187 +1,493 @@ -#include "lora_3029.h" -#include "mk_spi.h" +//#include "lora_3029.h" +//#include "mk_spi.h" +//#include "global_param.h" //#include "pan_port.h" -//#include "pan_param.h" //#include "pan_rf.h" -static uint8_t tx_buf[10] = {0x55, 0x44, 0x33, 0x22, 0x11}; -static uint8_t rx_buf[10] = {0x00}; -extern void spi_transfer_callback(void *dev, uint32_t err_code); -void Lora_init(void) -{ -// rf_write_reg(0x04, 0x55); -// rf_port.spi_readwrite(0x09); -// uint8_t rx_data = 0; // 用于存储接收的数据 -// spi_transfer(SPI_ID0, 0x09, rx_buf, 1, spi_transfer_callback); - uint32_t ret = 0; - uint32_t cnt = 0; - ret=rf_init(); - if(ret== 1) - { -// printf("LORA Init Fail"); - while(1); - } - else - { -// printf("LORA Init OK\r\n"); - } -} -//void LORA_mode_select(void) -//{ -// if(TX_RX_SELECT==1) -// { -// rf_enter_continous_tx(); -// printf("fasong \n"); -// } -// else -// { -// rf_enter_continous_rx(); -// printf("jieshou\n"); -// } -//} -//void OnMaster(void) -//{ -// TX_RX_SELECT=1; -// LORA_mode_select(); -// //frame header -// send_buffer[MSG_F]=MSG_LORA_FH0; -// send_buffer[MSG_H]=MSG_LORA_FH1; -// -// send_buffer[MSG_Substance_event]=MSG_TTS; -// send_buffer[MSG_Substance2]=0; -// -// send_buffer[MESSAGE_TYPE_IDX] = DATA_LORA_TTS; -// send_buffer[GROUP_ID_LORA] = GROUP_TAG_NUM; -// rf_set_transmit_flag(RADIO_FLAG_TXDONE); -// // tx -// if(rf_get_transmit_flag()==RADIO_FLAG_TXDONE) -// { -// if(rf_continous_tx_send_data(send_buffer, 11) == OK) -// { -// printf("tx ok!\n"); -// } -// while (rf_get_transmit_flag() == RADIO_FLAG_IDLE) -// ; -// rf_set_transmit_flag(RADIO_FLAG_IDLE); -// } +//#include "dw_app_anchor.h" +//#include "HIDO_TypeDef.h" +////#include "WS2812.h" +////#include "pan_port.h" +////#include "pan_param.h" +////#include "pan_rf.h" +////#define RX_TIMEOUT_VALUE 1000 +////extern LPTIM_HandleTypeDef hlptim1; +///***lora接收,发送变量定义******/ -// //delay_ms(10000); -// -//} -//void OnSlave(void) +//extern uint32_t current_count; + +//extern uint32_t dev_id; +//uint8_t yuyin_no_sleep_flag,no_rx_flag; +//uint8_t lora_up_rec_flag; +//static uint16_t source_id; +///***lora接收,发送变量定义******/ +//uint32_t wg_lost_count = 10; +//static uint8_t tx_buf[10] = {0x55, 0x44, 0x33, 0x22, 0x11}; +//static uint8_t rx_buf[10] = {0x00}; +////extern uint32_t uwbled,gpsled,loraled,powerled; +//extern uint8_t bat_percent,taglist_num; +////uint8_t report_ancnum; +////uint16_t report_ancdist[ANC_MAX_NUM],report_ancid[ANC_MAX_NUM]; +//extern void spi_transfer_callback(void *dev, uint32_t err_code); +//extern uint16_t ancidlist_rec[TAG_NUM_IN_SYS],ancidlist_send[TAG_NUM_IN_SYS],rec_ancidlist[TAG_NUM_IN_SYS]; +//extern uint8_t report_ancnum; +//extern uint16_t report_ancdist[ANC_MAX_NUM],report_ancid[ANC_MAX_NUM]; +////extern u8 active_flag; +////void LoraInit(void) +////{ +//// RadioEvents.TxDone = OnTxDone; +//// RadioEvents.RxDone = OnRxDone; +//// RadioEvents.TxTimeout = OnTxTimeout; +//// RadioEvents.RxTimeout = OnRxTimeout; +//// RadioEvents.RxError = OnRxError; + +//// Radio.Init( &RadioEvents ); +//// SwitchLoraSettings(UWB_CHANNEL_FRQ+group_id,UWB_CHANNEL_SF,0); //切换lora接收频点 +//// if(active_flag) +//// { +//// Radio.Rx( 0 ); +//// }else{ +//// Radio.Sleep(); +//// } +////// Radio.SetRxDutyCycle(RxDutyCycle_RX_time,RxDutyCycle_SLEEP_time); +//// +////} +//void Lora_init(void) //{ -// uint8_t Rev_Frequency = 0; -// rf_irq_process(); -// int j=2; -// if (rf_get_recv_flag() == RADIO_FLAG_RXDONE) -// { -// // Rssi_dBm = RxDoneParams.Rssi; // RSSI 的测量范围是-60 到-140 -// // Snr_value = RxDoneParams.Snr; -// // printf("Rx : SNR: %f ,RSSI: %f ,size: %d\r\n", Rssi_dBm, Snr_value,RxDoneParams.Size); -// //rf_set_recv_flag(RADIO_FLAG_IDLE); -// //printf("pack_size: %d\n",RxDoneParams.Size); -// //printf("\n"); -// //memset(RF_RX_temp,0,RxDoneParams.Size); -// switch(j) -// { -// case 1: -// { -// memcpy(RF_RX_temp1,RxDoneParams.Payload,RxDoneParams.Size); -// Uart_Send(UART_ID_GPS, &RF_RX_temp1[11], RxDoneParams.Size-11); -// rf_enter_continous_rx(); //重新进入接收模式 -// j++; -// break; -// } -// case 2: -// { -// Warn_TTS_play(); -//// memcpy(RF_RX_temp2,RxDoneParams.Payload,RxDoneParams.Size); -//// Uart_Send(UART_ID_GPS, &RF_RX_temp2[11], RxDoneParams.Size-11); -//// rf_enter_continous_rx(); //重新进入接收模式 -//// j=0; -// break; -// } -// memset(RF_RX_temp1,0,250); -// memset(RF_RX_temp2,0,250); -// } -// //Rev_Frequency++; -// //printf("Rev_Frequency: %d \n",Rev_Frequency); -// } -// -// if((rf_get_recv_flag() == RADIO_FLAG_RXTIMEOUT) || (rf_get_recv_flag() == RADIO_FLAG_RXERR)) -// { -// rf_set_recv_flag(RADIO_FLAG_IDLE); -// printf("Rxerr\r\n"); -// } +//// rf_write_reg(0x04, 0x55); +//// rf_port.spi_readwrite(0x09); +//// uint8_t rx_data = 0; // 用于存储接收的数据 +//// spi_transfer(SPI_ID0, 0x09, rx_buf, 1, spi_transfer_callback); +// uint32_t ret = 0; +// uint32_t cnt = 0; +// ret=rf_init(); +// +// set_test_mode1_reg(); +// if(ret== 1) +// { +// //printf("LORA Init Fail"); +// while(1); +// } +// else +// { +// //printf("LORA Init OK\r\n"); +// } + //} -//void Warn_TTS_play() +////void TagListUpdate(void) +////{ +//// uint16_t i,j=0,k=0,temp[TAG_NUM_IN_SYS]; +//// for(i=0; i<taglist_num; i++) +//// { +//// if(tagofflinetime[i]++<REPORT_TAG_KEEPTIMES) +//// { +//// report_ancid[k]=tagid_list[i]; +//// report_ancdist[k++]=tagdist_list[i]; +//// } +//// if(tagofflinetime[i]++<TAG_KEEPTIMES) +//// { +//// tagid_list[j]=tagid_list[i]; +//// tagdist_list[j] = tagdist_list[i]; +//// tagofflinetime[j++]=tagofflinetime[i]; +//// } +//// } +//// report_ancnum = k; +//// taglist_num=j; +////} +//extern wg_state_enum wg_state; +//uint8_t lora_sendbuffer[200]; +//uint8_t seq_num; +//extern uint16_t lora_up_uwb_flag; +////extern uint8_t wg_lost_count; +//uint16_t wg_report_freq,wg_report_id; +//uint8_t wg_report_sf; +//#define WG_LOST_SWITCH_THRES 3 +//#define WG_LOST_NOUWB_COUNT 60 +//#define DEFAULT_WG_ID 0xFFFF +//#define DEFAULT_LR_WG_ID 0xFFFE +//uint8_t lora_jianting_flag = 1; +//void LoraReportFreqPoll(void) //{ - -// uint8_t data[15]={0}; -// static HIDO_UINT32 Power_r = 0,Open_PJ,Group_id; -// uint8_t MSG_DATA=0; -// -// memcpy(data,RxDoneParams.Payload,11); -// Group_id=data[GROUP_ID_LORA]; -// - -// //delay_ms(5000); -// //copy 数据内容 -// MSG_DATA=data[MSG_Substance_event]; -// data[MSG_Substance2]=0; -//// if(EC6000_FLAG==1) -//// { -////// Open_PJ = sprintf(TTS_Lora_Open, "您已离开规定区域,请立刻返回"); -//// //Open_PJ = sprintf(TTS_Lora_Open, "设备"); -//// TTS_Play((HIDO_UINT8 *)TTS_Lora_Open, strlen(TTS_Lora_Open)); -//// } -// if(data[MSG_F]==MSG_LORA_FH0&&data[MSG_H]==MSG_LORA_FH1&&data[MESSAGE_TYPE_IDX]==DATA_LORA_TTS&&EC6000_FLAG==1) -// { - -// if(Group_id==2) +// // wg_state = WG_Lost; +// if(wg_lost_count++>WG_LOST_NOUWB_COUNT) +// { +// lora_jianting_flag = 0; +// } else { +// lora_jianting_flag = 1; +// } +// if(wg_state==WG_Lost) +// { +// static uint8_t channel_switch_count = 0; +// // channel_switch_count = 10; +// if(channel_switch_count++>1) +// { +//// channel_switch_count = 0; +//// wg_report_id = DEFAULT_LR_WG_ID; +//// wg_report_freq = LR_DATA_CHANNEL_FRQ; //如果丢失链接就进入WG管理信道。 +//// wg_report_sf = LR_DATA_CHANNEL_SF; +// } +// else // { -// switch(MSG_DATA) -// { -// case 0x10 : -// { -// Open_PJ = sprintf(TTS_Lora_Open, "高压危险,请保持安全距离"); -// TTS_Play((HIDO_UINT8 *)TTS_Lora_Open, strlen(TTS_Lora_Open)); -// delay_ms(1000); -// break; -// } -// case 0x11 : -// { -// Open_PJ = sprintf(TTS_Lora_Open, "您已离开规定区域,请立刻返回"); -// TTS_Play((HIDO_UINT8 *)TTS_Lora_Open, strlen(TTS_Lora_Open+5)); -// break; -// } -// case 0x12 : -// { -// Open_PJ = sprintf(TTS_Lora_Open, "实验语音3"); -// TTS_Play((HIDO_UINT8 *)TTS_Lora_Open, strlen(TTS_Lora_Open)); -// break; -// } -// } -// +// wg_report_id = DEFAULT_WG_ID; +// wg_report_freq = REPORT_MANGE_CHANNEL_FRQ; //如果丢失链接就进入WG管理信道。 +// wg_report_sf = REPORT_CHANNEL_SF; +//// wg_report_freq = TEST_MANAGE_CHANNEL_FRQ; +//// wg_report_sf = TEST_MANAGE_CHANNEL_SF; // } +// } else { +// if(wg_lost_count>WG_LOST_SWITCH_THRES) +// { +// wg_state = WG_Lost; +// } +// } +//} +//static uint16_t checksum; -// } -// memset(data,0,15); +////uint16_t wg_report_freq,wg_report_id; +//uint8_t lora_sendbuffer[200]; +//void LoraHeartBeartPoll(void) +//{ + +//// lora_up_uwb_flag=2; +//// rf_set_default_para(); + +///*****************************心跳包上传内容************************************/ +// lora_sendbuffer[MSG_TYPE_IDX] = LORA_MSGTYPE_TAGHEARTBEAT; +// lora_sendbuffer[MSG_LENGTH] = 14; +// memcpy(&lora_sendbuffer[SOURCE_ID_IDX],&g_com_map[DEV_ID],2); +// memcpy(&lora_sendbuffer[DEST_ID_IDX],&wg_report_id,2); +// memcpy(&lora_sendbuffer[HB_VERSION_IDX],&g_com_map[VERSION],2); +// lora_sendbuffer[HB_UWBPOWER_IDX] = g_com_map[POWER]; +// lora_sendbuffer[HB_LORAPOWER_IDX] = g_com_map[LORA_POWER]; +// checksum = Checksum_u16(lora_sendbuffer,14); +// memcpy(&lora_sendbuffer[14],&checksum,2); +// LORA_3029_SINGLE_SEND(lora_sendbuffer,16,0); +// +///*****************************心跳包上传内容*************************************/ +// +//} +//#define HEATBEAT_UPDATE_TIME 100 +//uint16_t heatbeat_count = HEATBEAT_UPDATE_TIME-1 ; +//uint16_t flag_getwgresp = 0; +//uint16_t test_temp[10]={0x1306,9688,1000}; +//uint16_t test_temp2[10]={0xff,0xcd,0x19}; +//int16_t intheight; //气压 +//extern uint32_t dangqian_frqe; +//extern uint16_t recnum[3]; +//extern uint32_t freq_list[4]; +//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); + +//#ifdef _USE_BAR +// GetPressAndHeight(); +// intheight = Height*100; +//#endif +//#ifdef _SMT_TEST +// printf("气压值:%d",intheight); +//#endif + +// TagListUpdate(); + +// LoraReportFreqPoll(); +// flag_getwgresp = 0; +// // wg_report_freq = REPORT_MANGE_CHANNEL_FRQ; +// //Lora_init(); +// uint32_t para; + +// para=freq_list[2] * 100000; +//// rf_set_freq(wg_report_freq*100000); +//// rf_set_carrier_wave_off(); +//// rf_set_carrier_wave_on(); +// rf_set_freq(para); +// //rf_set_sf(UWB_CHANNEL_SF); +//// rf_set_tx_power(para); +//// rf_set_carrier_wave_freq(freq_list[1] * 100000); +//// rf_set_freq(para); +// rf_set_sf(REPORT_CHANNEL_SF); +// //rf_set_default_para(wg_report_freq,REPORT_CHANNEL_SF); +// // SwitchLoraSettings(wg_report_freq,REPORT_CHANNEL_SF,g_com_map[LORA_POWER]); +// dangqian_frqe=rf_read_freq(); +// if(heatbeat_count++>HEATBEAT_UPDATE_TIME && WG_Connected == wg_state) //如果心跳包到达上传时间,并且网关处于链接状态,就上传心跳包 +// { +// heatbeat_count = 0; +// LoraHeartBeartPoll(); +// return; +// } +// for(uint16_t i=0; i<report_ancnum-1; i++) +// { +// for(uint16_t j=0; j<report_ancnum-1-i; j++) +// { +// if(report_ancdist[j]>report_ancdist[j+1]) +// { +// uint16_t id,dist; +// uint8_t bat; +// id = report_ancid[j]; +// dist = report_ancdist[j]; +// report_ancid[j] = report_ancid[j+1]; +// report_ancdist[j] = report_ancdist[j+1]; +// report_ancid[j+1] = id; +// report_ancdist[j+1] = dist; +// } +// } +// } +// +// if(report_ancnum>LORA_REPORT_MAXANC_NUM) //考虑lora传输时间,最多发送10个基站数据。 +// { +// report_ancnum = LORA_REPORT_MAXANC_NUM; +// } +// +//#ifdef USE_GPS +// lora_sendbuffer[MSG_TYPE_IDX] = LORA_MSGTYPE_TAGMSGTOWG_GPS; +// lora_sendbuffer[MSG_LENGTH] = 4*report_ancnum+30; +//#else +// lora_sendbuffer[MSG_TYPE_IDX] = LORA_MSGTYPE_TAGMSGTOWG; +// lora_sendbuffer[MSG_LENGTH] = 4*report_ancnum+ANCID_IDX; +//#endif +// 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; +// //GET_USERKEY这个是那个lora——busy那个引脚 +//// lora_sendbuffer[STATE_IDX]=0x01; +//// lora_sendbuffer[GATEWAY_CHANL]=0x02; +//// lora_sendbuffer[CHANL_NUM]=0x03; +// // lora_sendbuffer[STATE_IDX] = !GET_USERKEY|stationary_flag<<1; +//#ifdef USE_GPS +// memcpy(&lora_sendbuffer[GPS_JINGDU_IDX],&gps_jingdu,8); +// memcpy(&lora_sendbuffer[GPS_WEIDU_IDX],&gps_jingdu,8); +// memcpy(&lora_sendbuffer[GPS_HEIGHT_IDX],&gps_height,8); +// lora_sendbuffer[GPS_STATE_IDX] = gps_state; +// lora_sendbuffer[GPS_SATEL_NUM_IDX] = gps_satel_num; +// lora_sendbuffer[GPS_SPOWER_IDX] = gps_signalpower; +// lora_sendbuffer[GPS_CHAFENLINGQI] = gps_chafenlingqi; +//#endif +// // memcpy(&lora_sendbuffer[BAR_HEIGHT_IDX],&bar_height,2); +//// memcpy(&report_ancid,test_temp,10); +//// memcpy(&report_ancdist,test_temp2,10); + +// lora_sendbuffer[ANCNUM_IDX] = report_ancnum; +// 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; +// 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],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*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); +// } -// +// 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); +// //LED_TB_ON; -// - - +// +// for(uint8_t i=0;i<3;i++) +// recnum[i] = 0; //} +//static uint16_t delaytime = 1200; +//static uint16_t source_id; +//uint8_t rec_index,rec_secdelay; +////uint16_t rec_value,rec_delaytime,rx_count; +////uint16_t rec_value,rec_delaytime,rx_count,datalen_offset; + +//uint8_t shengji_flag,time=5; +//extern uint32_t uwbled,gpsled,loraled,powerled; +//extern struct RxDoneMsg RxDoneParams; + +////extern uint8_t Lora_tx_ancnum; +////extern u8 lora_seq_nb2; +//extern uint16_t lora_yingda_num; +//uint8_t lora_tx_flag=0; +//uint8_t lora_txanchor_power_flag; +//extern uint16_t Lora_tx_ancid[50]; +//extern uint16_t Lora_tx_ancdist[50]; +//extern uint8_t Lora_tx_anc_electricity[50]; +//uint8_t lora_seq_nb1; + +//extern uint8_t lora_sendbuffer[200]; +//void LoraSendComMap(uint8_t cmd) +//{ +// uint8_t data_length = 0x50; +// uint16_t checksum = 0; +// lora_sendbuffer[MSG_TYPE_IDX] = LORA_MSGTYPE_READPARARESP; +// lora_sendbuffer[MSG_LENGTH] = data_length+11; +// memcpy(&lora_sendbuffer[SOURCE_ID_IDX],&g_com_map[DEV_ID],2); +// memcpy(&lora_sendbuffer[DEST_ID_IDX],&wg_report_id,2); +// lora_sendbuffer[RP_CMD_IDX] = cmd; +// lora_sendbuffer[RP_INDEX_IDX] = 2; +// lora_sendbuffer[RP_LEN_IDX] = data_length; +// memcpy(&lora_sendbuffer[9], &g_com_map[1], data_length); +// checksum = Checksum_u16(lora_sendbuffer,11+data_length); +// memcpy(&lora_sendbuffer[11+data_length],&checksum,2); +// LORA_3029_SINGLE_SEND(lora_sendbuffer,data_length+13,0); +// //++; +// // Delay_Ms(100); +//} +//void LoraRspWriteCommap(uint8_t index) +//{ +// uint8_t data_length = 2; +// uint16_t checksum = 0; +// lora_sendbuffer[MSG_TYPE_IDX] = LORA_MSGTYPE_READPARARESP; +// lora_sendbuffer[MSG_LENGTH] = data_length+9; +// memcpy(&lora_sendbuffer[SOURCE_ID_IDX],&g_com_map[DEV_ID],2); +// memcpy(&lora_sendbuffer[DEST_ID_IDX],&wg_report_id,2); +// lora_sendbuffer[RP_CMD_IDX] = WGRSP_RWTAG_WRITE; +// lora_sendbuffer[RP_INDEX_IDX] = index; +// lora_sendbuffer[RP_LEN_IDX] = data_length; +// memcpy(&lora_sendbuffer[7], &g_com_map[index/2], data_length); +// checksum = Checksum_u16(lora_sendbuffer,9+data_length); +// memcpy(&lora_sendbuffer[9+data_length],&checksum,2); +// // Radio.Send(lora_sendbuffer,data_length+11); +// LORA_3029_SINGLE_SEND(lora_sendbuffer,data_length+11,0); +// // Delay_Ms(100); +//} +//uint8_t t22[20],ti; +//uint8_t no_yingdaflag; +//uint8_t aRxBuffer[1]; + +//extern uint8_t group_id; +//uint16_t lora_send_count; +//uint8_t mode_flag=0; +//uint32_t frqe,dangqian_frqe; +//uint32_t freq_list[4] = {DEFAULT_up_FREQ/100000,4730,4780,4910}; + +//#define TX_LEN 10 +//extern uint8_t tx_test_buf[TX_LEN]; + +//void Lora_Tx_Poll() +//{ +// +//// if(lora_tx_flag) +//// { +//// OnMaster(); +////// +//// //rf_enter_continous_rx(); +//// } +// if(lora_tx_flag) +// { +//// gpio_pin_set(IO_PIN_5); +// +// if(lora_send_count++%10==0||lora_jianting_flag) +// { +// lora_tx_flag=0; +//#ifdef GROUPID_SWITCH +// if(rec_secdelay>0) +// { +// rec_secdelay--; +//// if(lora_jianting_flag) +//// { +//// if(++group_id>GROUP_NUM) +//// { +//// group_id = 1; +//// } +//// t22[ti++] = group_id; +//// if(ti>=20) +//// ti=0; +//// group_min_dist[group_id] = 0xffff; +//// Radio.Standby(); +//// SwitchLoraSettings(UWB_CHANNEL_FRQ+group_id,UWB_CHANNEL_SF,0); +//// Radio.Rx(0); +//// } +// return; +// } +//// //找3个小组中最近距离最大的小组,上传报文后切换到这个小组,因为上传报文会时间占用。 +//// if(group_min_dist[1]>group_min_dist[2]) //如果1大于2 +//// { +//// group_maxdist_index = group_min_dist[1]>group_min_dist[3]?1:3; //取 1和3 最大值 +//// group_mindist_index = group_min_dist[2]<group_min_dist[3]?2:3;//取 2和3 最小值 +//// +//// }else{ +//// group_maxdist_index = group_min_dist[2]>group_min_dist[3]?2:3; //取 2和3 最大值 +//// group_mindist_index = group_min_dist[1]<group_min_dist[3]?1:3;//取 1和3 最小值 +//// } +////// group_id = 1; +//// group_id = group_maxdist_index; +//#endif +// t22[ti++] = group_id; +// if(ti>=20) +// ti=0; +// // group_min_dist[group_id] = 0xffff; +// // Radio.Standby(); +// //rf_antenna_close(); +//// rf_set_mode(RF_MODE_STB3); +//// uint32_t para; +//// frqe=((UWB_CHANNEL_FRQ+group_id)*100000); +//// para=freq_list[1] * 100000; +////// rf_set_default_para(frqe,UWB_CHANNEL_SF); +//// rf_set_carrier_wave_off(); +////// rf_set_carrier_wave_on(); +//// rf_set_freq(para); +//// rf_set_sf(5); +////// rf_set_tx_power(para); +////// rf_set_carrier_wave_freq(freq_list[1] * 100000); +//// //SwitchLoraSettings(UWB_CHANNEL_FRQ+group_id,UWB_CHANNEL_SF,0); +//// dangqian_frqe=rf_read_freq(); +// // LoraSendComMap(WGRSP_RWTAG_READ); +// +// //delay_us(5000); +//// rf_enter_continous_rx(); +// //LedTask(); +// //LoraHeartBeartPoll(); +//// if(rf_continous_tx_send_data(tx_test_buf, TX_LEN) != OK) +//// { +//// while(1); +//// } +// // rf_get_mode(); +//// LoraReportPoll(); +// // LedOff_task(); + +// } +// } + +// +//} +//uint8_t TX_RX_SELECT=0; + +//int LORA_3029_SINGLE_SEND(uint8_t *buffer, uint8_t size,uint8_t time) +//{ +// if((rf_single_tx_data(lora_sendbuffer,size,time))!= OK) +// { +// while(1); +// } +// rf_delay_us(1); +// +// //rf_enter_single_rx(); +// //rf_enter_single_timeout_rx(700); +//} + +//int LORA_3029_CONTINOUS_SEND(uint8_t *buffer, uint8_t size) +//{ - +//} -- Gitblit v1.9.3