Solutions for the GPS with MTK3339 lib experiments for LPC812 MAX

Dependencies:   MTK3339 mbed

Committer:
embeddedartists
Date:
Sun Nov 24 12:46:19 2013 +0000
Revision:
0:bae4bbbfa70b
First version

Who changed what in which revision?

UserRevisionLine numberNew contents of line
embeddedartists 0:bae4bbbfa70b 1 #include "mbed.h"
embeddedartists 0:bae4bbbfa70b 2 #include "MTK3339.h"
embeddedartists 0:bae4bbbfa70b 3
embeddedartists 0:bae4bbbfa70b 4 static int waitData = 0;
embeddedartists 0:bae4bbbfa70b 5 static MTK3339 gps(P0_4, P0_0);
embeddedartists 0:bae4bbbfa70b 6
embeddedartists 0:bae4bbbfa70b 7
embeddedartists 0:bae4bbbfa70b 8 static void dataAvailable() {
embeddedartists 0:bae4bbbfa70b 9 waitData |= gps.getAvailableDataType();
embeddedartists 0:bae4bbbfa70b 10 }
embeddedartists 0:bae4bbbfa70b 11
embeddedartists 0:bae4bbbfa70b 12 int main(void) {
embeddedartists 0:bae4bbbfa70b 13
embeddedartists 0:bae4bbbfa70b 14 gps.start(&dataAvailable, (MTK3339::NmeaGga|MTK3339::NmeaVtg));
embeddedartists 0:bae4bbbfa70b 15
embeddedartists 0:bae4bbbfa70b 16 while(1) {
embeddedartists 0:bae4bbbfa70b 17 while(waitData == 0);
embeddedartists 0:bae4bbbfa70b 18
embeddedartists 0:bae4bbbfa70b 19 if ((waitData & MTK3339::NmeaGga) != 0) {
embeddedartists 0:bae4bbbfa70b 20 waitData &= ~(MTK3339::NmeaGga);
embeddedartists 0:bae4bbbfa70b 21 printf("gpa: fix=%d, sats=%d, alt=%f, lat=%f, lon=%f\n",
embeddedartists 0:bae4bbbfa70b 22 gps.gga.fix, gps.gga.satellites, gps.gga.altitude,
embeddedartists 0:bae4bbbfa70b 23 gps.getLatitudeAsDegrees(), gps.getLongitudeAsDegrees());
embeddedartists 0:bae4bbbfa70b 24 }
embeddedartists 0:bae4bbbfa70b 25 if ((waitData & MTK3339::NmeaVtg) != 0) {
embeddedartists 0:bae4bbbfa70b 26 waitData &= ~(MTK3339::NmeaVtg);
embeddedartists 0:bae4bbbfa70b 27 printf("vtg: course=%f, speed=%f km/h, mode=%c\n",
embeddedartists 0:bae4bbbfa70b 28 gps.vtg.course, gps.vtg.speedKmHour, gps.vtg.mode);
embeddedartists 0:bae4bbbfa70b 29 }
embeddedartists 0:bae4bbbfa70b 30
embeddedartists 0:bae4bbbfa70b 31 waitData &= (MTK3339::NmeaGga|MTK3339::NmeaVtg);
embeddedartists 0:bae4bbbfa70b 32 }
embeddedartists 0:bae4bbbfa70b 33 }