![](/media/cache/profiles/2012_sf_avc_095.jpg.50x50_q85.jpg)
2018 revision to classic DataBus AVC code.
Dependencies: LSM303DLM Servo SerialGraphicLCD L3G4200D IncrementalEncoder SimpleShell
Ublox6.h
- Committer:
- shimniok
- Date:
- 2018-12-13
- Revision:
- 16:eb28d0f64a9b
- Child:
- 18:3f8a8f6e3cc1
File content as of revision 16:eb28d0f64a9b:
#ifndef __UBLOX6_H #define __UBLOX6_H /** uBlox GPS UBX Protocol Reader * Parses uBlox GPS binary protocol * * @author Wayne Holder; Ported to mbed by Michael Shimniok */ #include "mbed.h" class Ublox6 { public: // TODO 3 convert this to time units static const int lag=40; // number of updater steps by which gps output lags reality /** * UBX protocol parser (Wayne Holder) * @param cc is the character to parse * @note stores parsed gps data in member variables and sets _available * to true to indicate gps data is waiting. */ void parse(unsigned char cc); /** * get latitude */ double latitude(void); /** * get longitude */ double longitude(void); /** * Get Horizontal Dilution of Precision * @return float horizontal dilution of precision */ float hdop(void); /** * get count of active satellites */ int sat_count(void); /** * get speed in m/s */ float speed_mps(void); /** * get heading in degrees */ float heading_deg(void); /** * determine if data is available to be used */ bool available(void); /** * reset the data available flag */ void reset_available(void); private: int _available; // is data available? float _latitude; // temp storage, latitude float _longitude; // temp storage, longitude float _hdop; // horiz dilution of precision float _course_deg; // course in degrees float _speed_mps; // speed in m/s int _sat_count; // satellite count }; #endif