From 617d989d294c30b5f04f643b1ec7e5d9b4878a1a Mon Sep 17 00:00:00 2001 From: zhyinch <zhyinch@gmail.com> Date: 星期二, 01 三月 2022 11:52:30 +0800 Subject: [PATCH] 1对6 --- 源码/核心板/Src/application/dw_app.c | 19 +++++++++++++++---- 1 files changed, 15 insertions(+), 4 deletions(-) diff --git "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/dw_app.c" "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/dw_app.c" index d0f053a..861e9ab 100644 --- "a/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/dw_app.c" +++ "b/\346\272\220\347\240\201/\346\240\270\345\277\203\346\235\277/Src/application/dw_app.c" @@ -808,12 +808,13 @@ dwt_write32bitreg(SYS_STATUS_ID, SYS_STATUS_ALL_RX_ERR); } } -u8 frame_len; +u8 frame_len,jumptime; u8 rec_gpsdata[1000]; extern u8 RTCMdata[2000]; u16 recgpsdata_i,recdata_len; void UWBSendOnePackData(u8* data_addr,u8 len) { + delay_ms(jumptime); g_Resttimer = 0; LED0_BLINK; g_start_sync_flag=1; @@ -861,7 +862,11 @@ USART_puts(rec_gpsdata,recgpsdata_i); break; } + }else{ + jumptime=time32_incr%20; } + }else{ + jumptime=time32_incr%20; } } } @@ -1016,6 +1021,7 @@ extern u8 gpsdataready_flag; extern u16 gps_packlen; u8 totalpack_num,currentpack_num; +u16 sendtimes; void RecOnePackData(void) { dwt_setrxtimeout(0);//设定接收超时时间,0位没有超时时间 @@ -1043,7 +1049,7 @@ { recdata_len = frame_len-14; memcpy(rec_gpsdata,&rx_buffer[DATA_IDX],recdata_len); - if(gpsdataready_flag) + // if(gpsdataready_flag) { gpsdataready_flag = 0; tx_sync_msg[MESSAGE_TYPE_IDX]=DATA_RESPONSE; @@ -1061,13 +1067,15 @@ dwt_writetxdata(110+14, tx_sync_msg, 0);//将Poll包数据传给DW1000,将在开启发送时传出去 dwt_writetxfctrl(110+14, 0);//设置超宽带发送数据长度 dwt_starttx(DWT_START_TX_IMMEDIATE); + sendtimes++; }else{ tx_sync_msg[CURENTPACKNUM_IDX] = 1; memcpy(&tx_sync_msg[DATA_IDX],&RTCMdata[send_i],remain_i); dwt_writetxdata(remain_i+14, tx_sync_msg, 0);//将Poll包数据传给DW1000,将在开启发送时传出去 dwt_writetxfctrl(remain_i+14, 0);//设置超宽带发送数据长度 dwt_starttx(DWT_START_TX_IMMEDIATE); - remain_i = 0; + remain_i = 0; + sendtimes++; } delay_us(1000); } @@ -1078,16 +1086,19 @@ GPS_ParseGGA(rec_gpsdata,recdata_len); - const char *fmt = "{\"battery\":4.2,\"dev_type\":\"11\",\"device_sn\":\"15625411\",\"gps_type\":%d,\"high\":%.8lf,\"lat\":%.8lf,\"lng\":%.8lf}"; + const char *fmt = "{\"battery\":4.2,\"dev_type\":\"11\",\"device_sn\":\"15625394\",\"gps_type\":%d,\"high\":%.8lf,\"lat\":%.8lf,\"lng\":%.8lf}"; double lat = 0; double lon = 0; double high = 0; uint8_t gps_type; gps_type = HIDO_UtilStrBufToInt(stPosState[2].m_pData,1); + if(gps_type!=0) + { GPS_ParseLon(&stPosState[1], &lon); GPS_ParseLat(&stPosState[0], &lat); GPS_ParseHeight(&stPosState[3], &high); + } printf(fmt,gps_type, high, lat, lon); //USART_puts(rec_gpsdata,recdata_len); } -- Gitblit v1.9.3