From 8b4b676312f925f4335b9d3ebdfe498cba2c8495 Mon Sep 17 00:00:00 2001 From: zhyinch <zhyinch@gmail.com> Date: 星期三, 07 四月 2021 09:44:24 +0800 Subject: [PATCH] V1.20 增加震动使能控制 --- Src/application/dw_app.c | 24 +++++++++++++++--------- 1 files changed, 15 insertions(+), 9 deletions(-) diff --git a/Src/application/dw_app.c b/Src/application/dw_app.c index 2abebf4..05052a3 100644 --- a/Src/application/dw_app.c +++ b/Src/application/dw_app.c @@ -315,7 +315,7 @@ last_nearbase_num=next_nearbase_num; nearbase_num=next_nearbase_num; recbase_num=0; - motor_state=0; +// motor_state=0; tx_near_msg[BATTARY_IDX] = bat_percent; tx_near_msg[BUTTON_IDX] = !GET_USERKEY|stationary_flag<<1; @@ -429,13 +429,7 @@ final_msg_set_ts(&tx_near_msg[FINAL_MSG_RESP_RX_NEARBASE_IDX], resp_rx_ts); final_msg_set_ts(&tx_near_msg[FINAL_MSG_FINAL_TX_TS_IDX], final_tx_ts); tx_near_msg[MESSAGE_TYPE_IDX]=NEAR_FINAL; - if(rec_remotepara_state&&!memcmp(&rx_buffer[TAG_ID_IDX],&dev_id,2)) - { - para_update = 1; - tx_near_msg[TAGCONFIGSUCCESS_INDEX] = 1; - para_len = frame_len-22; - memcpy(rec_remotepara,&rx_buffer[REMOTEPARA_INDEX],para_len); - } + dwt_writetxdata(28+nearbase_num*4, tx_near_msg, 0);//将发送数据写入DW1000 dwt_writetxfctrl(28+nearbase_num*4, 0);//设定发送数据长度 @@ -452,7 +446,17 @@ lastsync_timer=sync_timer; offsettimeus=ancsync_time-current_count*LPTIMER_LSB+offset; SetNextPollTime(tyncpoll_time); - + if(rec_remotepara_state&&rec_remotepara_state!=g_com_map[REMOTEPARA_STATE]) + { + g_com_map[REMOTEPARA_STATE]=rec_remotepara_state; + memcpy(rec_remotepara,&rx_buffer[REMOTEPARA_INDEX],REMOTEPARA_LEN); + memcpy(&g_com_map[COM_INTERVAL],&rec_remotepara[0],8); + memcpy(&g_com_map[POWER],&rec_remotepara[8],10); + save_com_map_to_flash(); + delay_ms(100); + NVIC_SystemReset(); + + } // count_offset=sync_count-current_count-143; // current_slottimes=(ancsync_time-10000)/(g_com_map[COM_INTERVAL]*1000); @@ -516,6 +520,8 @@ } // dwt_write32bitreg(SYS_STATUS_ID,SYS_STATUS_RXFCG| SYS_STATUS_ALL_RX_ERR); } + if(mainbase_lost_count>tag_frequency*BASELOST_STOPMOTOR_TIME) + {motor_state=0; } dwt_write32bitreg(SYS_STATUS_ID,SYS_STATUS_RXFCG| SYS_STATUS_ALL_RX_ERR); nearbase_num=recbase_num; j=0; -- Gitblit v1.9.3