dy-rB5RTBKq:
#ifndef__MYNMEA_H#define__MYNMEA_H#include"stdint.h"#include #includetypedefenum{ GPNON =0x00, GPGGA =0x01, GPGSA =0x02, GPGSV =0x04, GPRMC =0x08, GPVTG =0x10 }nmeaPACKTYPE;typedefstruct{char status; /**<定位狀態(tài),A=有效定位,V=無效定位*/uint16_t speed; /**地面速率(0000.0~1851.8公里/小時,前面的0也將被傳輸)*/}nmeaINFO;//需要獲取的信息//********************************************//********************************************//********************************************#defineRX_BUF_SIZE 10 //UART接收緩存大小//********************************************#defineUART_RX_Flag 0x01//staFlag[0]:UART是否接收到新的數(shù)據(jù)#defineGET_CHECKSUM_OK 0X02//staFlag[1]:是否已經(jīng)計算出檢驗和#defineGET_CHECKSUM_ENABLE0X04//staFlag[2]:是否使能校驗和計算//********************************************typedefstruct{ uint8_t staFlag; //狀態(tài)標志便變量 uint8_t checkStaFlag; // uint8_t checkSum[2]; uint8_t num; char rxDatNew; //當前串口接受到的數(shù)據(jù) char rxBuf[RX_BUF_SIZE]; //UART接收緩存數(shù)組:存放接收到的速度數(shù)據(jù) uint8_t pBuf; //BUF指針角標 uint8_t rxNum; // nmeaPACKTYPE nmeaPackType;}NMEA_Typedef;//************************************************externNMEA_TypedefnmeaTypedef;voidNmeaRx(void);voidNmeaDataDeal(void);#endif//__MYNMEA_H