| | |
| | | // gpio_pin_clr(LORA_IRQ); |
| | | //gpio_pin_clr(LORA_NRST); |
| | | //gpio_pin_clr(LORA_NRST);//lora休眠 |
| | | Radio.Standby(); |
| | | // Radio.Standby(); |
| | | |
| | | Radio.Sleep(); |
| | | } |
| | | ////States_t State = LOWPOWER; |
| | |
| | | |
| | | if(flag_writepara_needreset) //配置写入完成设备需要重启 |
| | | { |
| | | printf("网关下发配置写入完成,重启"); |
| | | SCB->AIRCR = 0X05FA0000|(unsigned int)0x04; //软复位回到bootloader |
| | | LOG_INFO(TRACE_MODULE_APP,"网关下发配置写入完成,重启\r\n"); |
| | | // SCB->AIRCR = 0X05FA0000|(unsigned int)0x04; //软复位回到bootloader |
| | | sys_reset(0); |
| | | } |
| | | Radio.Standby(); |
| | | if(LoraUp_flag) |
| | |
| | | uint8_t rxdone=0; |
| | | extern uint16_t set_mk_time; |
| | | extern mk_send_message_to_BLE(void); |
| | | uint8_t tt4=1; |
| | | void OnRxDone( uint8_t *payload, uint16_t size, int16_t rssi, int8_t snr ) |
| | | { |
| | | uint16_t checksum1; |
| | |
| | | LoraSendComMap(WGRSP_RWTAG_READ); |
| | | break; |
| | | case WGRSP_RWTAG_WRITE: |
| | | |
| | | rec_index = RX_Buffer[PWTAG_WRITE_IDX_IDX]; |
| | | switch(rec_index) |
| | | { |
| | |
| | | default : |
| | | memcpy(&rec_value,&RX_Buffer[PWTAG_WRITE_VALUE_IDX],2); |
| | | g_com_map[rec_index/2] = rec_value; |
| | | // if(rec_index/2==POWER)//新增判断 |
| | | // { |
| | | // memcpy(&set_mk_time,&RX_Buffer[PWTAG_WRITE_VALUE_IDX],2); |
| | | // //mk_send_message_to_BLE(); //发送给蓝牙 |
| | | // //LOG_INFO(TRACE_MODULE_APP, "修改成功g_com表为%#x,时间为%#x\r\n",g_com_map[POWER],set_mk_time); |
| | | // } |
| | | // save_com_map_to_flash(); |
| | | if(rec_index/2==POWER)//新增判断 |
| | | { |
| | | memcpy(&set_mk_time,&RX_Buffer[PWTAG_WRITE_VALUE_IDX],2); |
| | | mk_send_message_to_BLE(); //发送给蓝牙 |
| | | //LOG_INFO(TRACE_MODULE_APP, "修改成功g_com表为%#x,时间为%#x\r\n",g_com_map[POWER],set_mk_time); |
| | | } |
| | | save_com_map_to_flash(); |
| | | LoraRspWriteCommap(SUBMSG_WRITE_ANCPARA); |
| | | flag_writepara_needreset = 1; |
| | | no_rx_flag = 1; |
| | | } |
| | | |
| | | break; |
| | | case WGRSP_RWTAG_UPDATE: |
| | | rec_index = RX_Buffer[PWTAG_WRITE_IDX_IDX]; |
| | |
| | | } |
| | | |
| | | } |
| | | LOG_INFO(TRACE_MODULE_APP, "进入回复2\r\n"); |
| | | |
| | | if(!no_rx_flag) |
| | | { |
| | | if(lora_jianting_flag&&LoraUp_flag==0) |
| | |
| | | Radio.Rx(0); |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | void OnTxTimeout( void ) |