| | |
| | | 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; |
| | |
| | | USART_puts(rec_gpsdata,recgpsdata_i); |
| | | break; |
| | | } |
| | | }else{ |
| | | jumptime=time32_incr%20; |
| | | } |
| | | }else{ |
| | | jumptime=time32_incr%20; |
| | | } |
| | | } |
| | | } |
| | |
| | | extern u8 gpsdataready_flag; |
| | | extern u16 gps_packlen; |
| | | u8 totalpack_num,currentpack_num; |
| | | u16 sendtimes; |
| | | void RecOnePackData(void) |
| | | { |
| | | dwt_setrxtimeout(0);//è®¾å®æ¥æ¶è¶
æ¶æ¶é´ï¼0使²¡æè¶
æ¶æ¶é´ |
| | |
| | | { |
| | | 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; |
| | |
| | | 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); |
| | | } |
| | |
| | | |
| | | 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); |
| | | } |