Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: FXOS8700CQ MODSERIAL mbed
Fork of Avnet_ATT_Cellular_IOT by
Diff: sensors.cpp
- Revision:
- 70:24d5800f27be
- Parent:
- 69:5a3414cc7531
- Child:
- 71:45a5e426df81
--- a/sensors.cpp Thu Aug 11 04:38:02 2016 +0000
+++ b/sensors.cpp Thu Aug 11 07:40:45 2016 +0000
@@ -443,13 +443,13 @@
bGPS_present = true;
PRINTF("Xadow GPS Scan ID response = 0x%02X%02X (length), 0x%02X%02X%02X%02X\r\n", scan_id[0], scan_id[1], scan_id[2], scan_id[3], scan_id[4], scan_id[5]);
char status = gps_get_status();
- if (iSensorsToReport == TEMP_HUMIDITY_ACCELEROMETER_GPS)
+ if ((status != 'A') && (iSensorsToReport == TEMP_HUMIDITY_ACCELEROMETER_GPS))
{ //we must wait for GPS to initialize
PRINTF("Waiting for GPS to become ready... ");
while (status != 'A')
{
wait (5.0);
- char status = gps_get_status();
+ status = gps_get_status();
unsigned char num_satellites = gps_get_sate_in_veiw();
PRINTF("%c%d", status, num_satellites);
}
@@ -475,7 +475,8 @@
void Read_GPS()
{
- unsigned char gps_quality = 0; //default
+ unsigned char gps_quality = 0; //default
+ char sign;
if (bGPS_present)
{
if ((gps_get_status() == 'A') && (gps_get_mode2() != '1'))
@@ -483,8 +484,24 @@
gps_quality = 1;
}
PRINTF("gps_quality : %d\r\n", gps_quality);
- PRINTF("gps_get_latitude : %c:%f\r\n", gps_get_ns(), gps_get_latitude());
- PRINTF("gps_get_longitude : %c:%f\r\n", gps_get_ew(), gps_get_longitude());
+ if (gps_get_ns() == 'S')
+ {
+ sign = '-'; //negative number
+ }
+ else
+ {
+ sign = '\0'; //empty character
+ }
+ PRINTF("gps_get_latitude : %c%f\r\n", sign, gps_get_latitude());
+ if (gps_get_ew() == 'W')
+ {
+ sign = '-'; //negative number
+ }
+ else
+ {
+ sign = '\0'; //empty character
+ }
+ PRINTF("gps_get_longitude : %c%f\r\n", sign, gps_get_longitude());
PRINTF("gps_get_altitude : %f meters\r\n", gps_get_altitude());
PRINTF("gps_get_speed : %f knots\r\n", gps_get_speed());
PRINTF("gps_get_course : %f degrees\r\n", gps_get_course());
