Prototyping the Adaptable Emergency System on an C027 board.

Dependencies:   C027_Support mbed

Fork of c027_prototyping by Philémon Favrod

Committer:
aroulin
Date:
Tue Sep 30 16:06:35 2014 +0000
Revision:
4:f1708f6ec905
Child:
7:eeef6f9fa1db
Merge GPS Locate and SMS features

Who changed what in which revision?

UserRevisionLine numberNew contents of line
aroulin 4:f1708f6ec905 1 #include "gps_locate.h"
aroulin 4:f1708f6ec905 2 #include "GPS.h"
aroulin 4:f1708f6ec905 3
aroulin 4:f1708f6ec905 4 int gps_on(void)
aroulin 4:f1708f6ec905 5 {
aroulin 4:f1708f6ec905 6 return 0;
aroulin 4:f1708f6ec905 7 }
aroulin 4:f1708f6ec905 8
aroulin 4:f1708f6ec905 9 int gps_off(void)
aroulin 4:f1708f6ec905 10 {
aroulin 4:f1708f6ec905 11 return 0;
aroulin 4:f1708f6ec905 12 }
aroulin 4:f1708f6ec905 13
aroulin 4:f1708f6ec905 14 int gps_locate(struct gps_data_t* gps_data)
aroulin 4:f1708f6ec905 15 {/*
aroulin 4:f1708f6ec905 16 // Power on gps
aroulin 4:f1708f6ec905 17 GPSI2C gps;
aroulin 4:f1708f6ec905 18
aroulin 4:f1708f6ec905 19 int ret = 0;
aroulin 4:f1708f6ec905 20 char buf[512] = {0};
aroulin 4:f1708f6ec905 21
aroulin 4:f1708f6ec905 22 while ((ret = gps.getMessage(buf, sizeof(buf))) > 0) {
aroulin 4:f1708f6ec905 23 int len = LENGTH(ret);
aroulin 4:f1708f6ec905 24 if ((PROTOCOL(ret) == GPSParser::NMEA) && (len > 6)) {
aroulin 4:f1708f6ec905 25 if (!strncmp("$GPGLL", buf, 6)) {
aroulin 4:f1708f6ec905 26 double la = 0, lo = 0;
aroulin 4:f1708f6ec905 27 char ch;
aroulin 4:f1708f6ec905 28 if (gps.getNmeaAngle(1,buf,len,la) &&
aroulin 4:f1708f6ec905 29 gps.getNmeaAngle(3,buf,len,lo) &&
aroulin 4:f1708f6ec905 30 gps.getNmeaItem(6,buf,len,ch) && ch == 'A') {
aroulin 4:f1708f6ec905 31 printf("GPS Location: %.5f %.5f\r\n", la, lo);
aroulin 4:f1708f6ec905 32 printf(link, "I am here!\n"
aroulin 4:f1708f6ec905 33 "https://maps.google.com/?q=%.5f,%.5f", la, lo);
aroulin 4:f1708f6ec905 34 }
aroulin 4:f1708f6ec905 35 } else if (!strncmp("$GPGGA", buf, 6)) {
aroulin 4:f1708f6ec905 36 double a = 0;
aroulin 4:f1708f6ec905 37 if (gps.getNmeaItem(9,buf,len,a)) // altitude msl [m]
aroulin 4:f1708f6ec905 38 printf("GPS Altitude: %.1f\r\n", a);
aroulin 4:f1708f6ec905 39 } else if (!strncmp("$GPVTG", buf, 6)) {
aroulin 4:f1708f6ec905 40 double s = 0;
aroulin 4:f1708f6ec905 41 if (gps.getNmeaItem(7,buf,len,s)) // speed [km/h]
aroulin 4:f1708f6ec905 42 printf("GPS Speed: %.1f\r\n", s);
aroulin 4:f1708f6ec905 43 }
aroulin 4:f1708f6ec905 44 }
aroulin 4:f1708f6ec905 45 }*/ return 0;
aroulin 4:f1708f6ec905 46 }