GPS and Compass update every1 sec

Dependencies:   HMC6352 mbed

main.cpp

Committer:
airaylee
Date:
2013-12-05
Revision:
3:5eba63777267
Parent:
2:e70394e9c959

File content as of revision 3:5eba63777267:

#include "mbed.h"
#include "GPS.h"
#include "HMC6352.h"

Serial pc(USBTX, USBRX);
GPS gps(p9, p10);
HMC6352 compass(p28, p27);

//HMC6352 use an I2C interface so we here have scl-p27 and sda-28 
//BR-355 GPS use serial port p10-RX
int main() {
    while(1) {
        wait(1);
        pc.printf("%f,", compass.sample() / 10.0);
        if(gps.sample()) {
            pc.printf("%f,%f\n\r", gps.longitude, gps.latitude);
        } else {
            pc.printf("0,0\n\r");
        }
    }
}


/*
$GPRMC,000115.039,V,,,,,,,291006,,*2C
$GPGGA,000116.031,,,,,0,00,,,M,0.0,M,,0000*52
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,3,1,12,20,00,000,,10,00,000,,31,00,000,,27,00,000,*7C
$GPGSV,3,2,12,19,00,000,,07,00,000,,04,00,000,,24,00,000,*76
$GPGSV,3,3,12,16,00,000,,28,00,000,,26,00,000,,29,00,000,*78
$GPRMC,000116.031,V,,,,,,,291006,,*27
$GPGGA,000117.035,,,,,0,00,,,M,0.0,M,,0000*57
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPRMC,000117.035,V,,,,,,,291006,,*22
$GPGGA,000118.039,,,,,0,00,,,M,0.0,M,,0000*54
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPRMC,000118.039,V,,,,,,,291006,,*21
$GPGGA,000119.035,,,,,0,00,,,M,0.0,M,,0000*59
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPRMC,000119.035,V,,,,,,,291006,,*2C
$GPGGA,000120.037,,,,,0,00,,,M,0.0,M,,0000*51
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPRMC,000120.037,V,,,,,,,291006,,*24
*/