From b0b6c44f2adbbbac2711f4531ef552e15a1e8b45 Mon Sep 17 00:00:00 2001 From: zhangbo <zhangbo@qq.com> Date: 星期一, 10 三月 2025 16:03:26 +0800 Subject: [PATCH] 对比poll_rx_en_start_u32这个的值的代码 --- keil/lora_3029.c | 603 ++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 448 insertions(+), 155 deletions(-) diff --git a/keil/lora_3029.c b/keil/lora_3029.c index c88ff6e..bd1a636 100644 --- a/keil/lora_3029.c +++ b/keil/lora_3029.c @@ -1,11 +1,42 @@ #include "lora_3029.h" #include "mk_spi.h" +#include "global_param.h" +#include "pan_port.h" +#include "pan_rf.h" +#include "dw_app_anchor.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接收,发送变量定义******/ +#define RX_TIMEOUT_VALUE 0 +#define BUFFER_SIZE 255 // Define the payload size here +uint16_t BufferSize = BUFFER_SIZE; +uint8_t TX_Buffer[BUFFER_SIZE]; +uint8_t RX_Buffer[BUFFER_SIZE]; + +int8_t RssiValue = 0; +int8_t SnrValue = 0; +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]; void Lora_init(void) { // rf_write_reg(0x04, 0x55); @@ -13,175 +44,437 @@ // uint8_t rx_data = 0; // 用于存储接收的数据 // spi_transfer(SPI_ID0, 0x09, rx_buf, 1, spi_transfer_callback); uint32_t ret = 0; - uint32_t cnt = 0; + uint32_t cnt = 0; ret=rf_init(); + + set_test_mode1_reg(); if(ret== 1) { -// printf("LORA Init Fail"); + //printf("LORA Init Fail"); while(1); } else { -// printf("LORA Init OK\r\n"); + //printf("LORA Init OK\r\n"); + } + +} + + +//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) +{ + // 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 + { + 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; + } } } -//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); -// } +static uint16_t checksum; -// //delay_ms(10000); -// -//} +//uint16_t wg_report_freq,wg_report_id; +uint8_t lora_sendbuffer[200]; +void LoraHeartBeartPoll(void) +{ -//void OnSlave(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); +// 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++; + LORA_3029_SINGLE_SEND(lora_sendbuffer,ANCID_IDX+report_ancnum*4+BT_NUM*4+4,0); + } + 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+2,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(); // } -// //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"); -// } -//} + 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) +{ -//void Warn_TTS_play() -//{ - -// 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) -// { -// 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; -// } -// } -// -// } - -// } -// memset(data,0,15); - - -// - -// - - - -//} - - - - +} -- Gitblit v1.9.3