Example using the MTK3339 (GPS) library.
This example has been tested using the Embedded Artists GPS Receiver Board, EA-ACC-023
Diff: main.cpp
- Revision:
- 0:828a0c36c3e2
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Thu Nov 07 11:53:56 2013 +0000 @@ -0,0 +1,36 @@ +#include "mbed.h" +#include "MTK3339.h" + +static int waitData = 0; +static MTK3339 gps(P4_22, P4_23); + + +static void dataAvailable() { + waitData |= gps.getAvailableDataType(); +} + +int main(void) { + + gps.start(&dataAvailable, (MTK3339::NmeaGga|MTK3339::NmeaVtg)); + + while(1) { + while(waitData == 0); + + if ((waitData & MTK3339::NmeaGga) != 0) { + waitData &= ~(MTK3339::NmeaGga); + printf("gpa: fix=%d, sats=%d, alt=%f, lat=%f, lon=%f\n", + gps.gga.fix, gps.gga.satellites, gps.gga.altitude, + gps.getLatitudeAsDegrees(), gps.getLongitudeAsDegrees()); + } + if ((waitData & MTK3339::NmeaVtg) != 0) { + waitData &= ~(MTK3339::NmeaVtg); + printf("vtg: course=%f, speed=%f km/h, mode=%c\n", + gps.vtg.course, gps.vtg.speedKmHour, gps.vtg.mode); + } + + waitData &= (MTK3339::NmeaGga|MTK3339::NmeaVtg); + } + + + +} \ No newline at end of file