| | |
| | | { |
| | | Usart1ParseDataCallback = UsartParseDataHandler;//需改为默认为gps处理,UsartParseDataHandler为升级处理当调试时候改为 |
| | | parameter_init_anchor();//g_com_map表初始化角色默认为基站 |
| | | g_com_map[DEV_ID]=0x1234; |
| | | g_com_map[DEV_ID]=0x1131; |
| | | // g_com_map[GROUP_ID]=1; |
| | | dev_id=g_com_map[DEV_ID];//这里不太对 |
| | | group_id=g_com_map[GROUP_ID];//组ID |
| | |
| | | |
| | | void IdleTask(void) |
| | | { |
| | | // BT_LED_ON; |
| | | UART0_CheckReceive(); |
| | | // BT_LED_OFF; |
| | | } |
| | | |
| | | int bind_check(void) |
| | |
| | | |
| | | uint16_t checksum1; |
| | | rf_irq_process(); |
| | | |
| | | LORA_LED_OFF; |
| | | no_rx_flag=0; |
| | | tx_flag=rf_get_transmit_flag(); |
| | | recv_flag=rf_get_recv_flag(); |
| | |
| | | switch(RX_Buffer[PWTAG_RW_FLAG_IDX]) |
| | | { |
| | | case WGRSP_RWTAG_NONE: |
| | | |
| | | // wg_report_freq = RX_Buffer[POLL_FREQ_IDX]+400; |
| | | // memcpy(&rec_delaytime,&RX_Buffer[NEXTPOLL_TIME_IDX],2); |
| | | // if(report_ancnum<2) |
| | | // { |
| | | // datalen_offset = report_ancnum*85; |
| | | // }else{ |
| | | // datalen_offset = (report_ancnum-1)*46+85; |
| | | // } |
| | | // rec_secdelay = RX_Buffer[PWTAG_SECDELAY_IDX]; |
| | | // if(BufferSize!=13||rec_secdelay>20) |
| | | // { |
| | | // rec_secdelay = 0; |
| | | // } |
| | | // |
| | | // sleep_time_count = rec_delaytime*3.2768 - delaytime-datalen_offset; |
| | | // while(sleep_time_count>=32768) |
| | | // sleep_time_count-=32768; |
| | | // sleep_timer_start(sleep_time_count); |
| | | wg_report_freq = RX_Buffer[POLL_FREQ_IDX]+400; |
| | | memcpy(&rec_delaytime,&RX_Buffer[NEXTPOLL_TIME_IDX],2); |
| | | if(report_ancnum<2) |
| | | { |
| | | datalen_offset = report_ancnum*85; |
| | | }else{ |
| | | datalen_offset = (report_ancnum-1)*46+85; |
| | | } |
| | | rec_secdelay = RX_Buffer[PWTAG_SECDELAY_IDX]; |
| | | if(BufferSize!=13||rec_secdelay>20) |
| | | { |
| | | rec_secdelay = 0; |
| | | } |
| | | sleep_time_count = rec_delaytime - delaytime-datalen_offset; |
| | | while(sleep_time_count>=1000) |
| | | sleep_time_count-=1000; |
| | | sleep_timer_start(sleep_time_count); |
| | | |
| | | break; |
| | | case WGRSP_RWTAG_READ: |
| | |
| | | //rf_set_mode(RF_MODE_STB3); |
| | | rf_set_transmit_flag(RADIO_FLAG_IDLE); |
| | | Loratx_flag++; |
| | | LORA_LED_ON; |
| | | rf_enter_single_timeout_rx(100); |
| | | |
| | | } |
| | | if((recv_flag == RADIO_FLAG_RXTIMEOUT)) |
| | | { |