GPS test

Dependencies:   mbed GYSFDMAXB

Committer:
cocorlow
Date:
Fri Apr 23 17:15:04 2021 +0000
Revision:
6:b4dfe0daefc6
Parent:
5:8301960b3ae8
ok

Who changed what in which revision?

UserRevisionLine numberNew contents of line
cocorlow 0:f7f81e36e9d7 1 #include "mbed.h"
cocorlow 0:f7f81e36e9d7 2 #include <string.h>
cocorlow 1:020b393621e5 3 #include "GYSFDMAXB.hpp"
cocorlow 0:f7f81e36e9d7 4
cocorlow 3:25e3289b0411 5
cocorlow 0:f7f81e36e9d7 6 Serial pc(USBTX, USBRX);
cocorlow 1:020b393621e5 7 GYSFDMAXB gps(PC_12, PD_2);
cocorlow 5:8301960b3ae8 8 DigitalOut led(LED1);
cocorlow 0:f7f81e36e9d7 9
cocorlow 1:020b393621e5 10 void Display()
cocorlow 0:f7f81e36e9d7 11 {
cocorlow 1:020b393621e5 12 pc.printf("################################\r\n");
cocorlow 1:020b393621e5 13 pc.printf("%d h %d m %d s %d ms\r\n", gps.Hours, gps.Minutes, gps.Seconds, gps.Milliseconds);
cocorlow 1:020b393621e5 14 pc.printf("%d / %d / %d\r\n", gps.Year, gps.Month, gps.Day);
cocorlow 5:8301960b3ae8 15 pc.printf("Latitude : %c %f\r\n", gps.N_S, gps.Latitude);
cocorlow 5:8301960b3ae8 16 pc.printf("Longitude : %c %f\r\n", gps.E_W, gps.Longitude);
cocorlow 5:8301960b3ae8 17 pc.printf("Elevation : %f\r\n", gps.Elevation);
cocorlow 1:020b393621e5 18 gps.Calcurate();
cocorlow 5:8301960b3ae8 19 pc.printf("Local N : %f\r\n", gps.Position.x);
cocorlow 5:8301960b3ae8 20 pc.printf("Local E : %f\r\n", gps.Position.y);
cocorlow 5:8301960b3ae8 21 pc.printf("Local D : %f\r\n", gps.Position.z);
cocorlow 5:8301960b3ae8 22 pc.printf("Satellites : %d\r\n", gps.Satellites);
cocorlow 5:8301960b3ae8 23 /*
cocorlow 5:8301960b3ae8 24 pc.printf("start_index : %d\r\n", gps.start_index);
cocorlow 5:8301960b3ae8 25 pc.printf("uart_index : %d\r\n", gps.uart_index);
cocorlow 5:8301960b3ae8 26
cocorlow 3:25e3289b0411 27 pc.printf("UniversalZero X : %f\r\n", gps.UniversalZeroPosition.x);
cocorlow 3:25e3289b0411 28 pc.printf("UniversalZero Y : %f\r\n", gps.UniversalZeroPosition.y);
cocorlow 3:25e3289b0411 29 pc.printf("UniversalZero Z : %f\r\n", gps.UniversalZeroPosition.z);
cocorlow 3:25e3289b0411 30 pc.printf("Universal X : %f\r\n", gps.UniversalPosition.x);
cocorlow 3:25e3289b0411 31 pc.printf("Universal Y : %f\r\n", gps.UniversalPosition.y);
cocorlow 3:25e3289b0411 32 pc.printf("Universal Z : %f\r\n", gps.UniversalPosition.z);
cocorlow 5:8301960b3ae8 33 */
cocorlow 0:f7f81e36e9d7 34 }
cocorlow 0:f7f81e36e9d7 35
cocorlow 5:8301960b3ae8 36
cocorlow 0:f7f81e36e9d7 37 int main()
cocorlow 0:f7f81e36e9d7 38 {
cocorlow 0:f7f81e36e9d7 39 pc.baud(115200);
cocorlow 1:020b393621e5 40 Ticker ticker;
cocorlow 5:8301960b3ae8 41
cocorlow 1:020b393621e5 42 ticker.attach(&Display, 0.3);
cocorlow 5:8301960b3ae8 43
cocorlow 5:8301960b3ae8 44 led = 1;
cocorlow 5:8301960b3ae8 45 gps.Initialize();
cocorlow 5:8301960b3ae8 46 led = 0;
cocorlow 1:020b393621e5 47
cocorlow 0:f7f81e36e9d7 48 while (1)
cocorlow 0:f7f81e36e9d7 49 {
cocorlow 0:f7f81e36e9d7 50 }
cocorlow 1:020b393621e5 51 }
cocorlow 1:020b393621e5 52
cocorlow 1:020b393621e5 53
cocorlow 1:020b393621e5 54 // GPS baud rate
cocorlow 1:020b393621e5 55 /*
cocorlow 1:020b393621e5 56 Serial gps(PC_12, PD_2);
cocorlow 1:020b393621e5 57 int main()
cocorlow 1:020b393621e5 58 {
cocorlow 1:020b393621e5 59 gps.baud(9600);
cocorlow 1:020b393621e5 60 while (1)
cocorlow 1:020b393621e5 61 {
cocorlow 1:020b393621e5 62 gps.printf("$PMTK251,57600*2C\r\n");
cocorlow 1:020b393621e5 63 }
cocorlow 1:020b393621e5 64 }
cocorlow 3:25e3289b0411 65
cocorlow 1:020b393621e5 66
cocorlow 5:8301960b3ae8 67
cocorlow 1:020b393621e5 68 $PMTK251,115200*1F\r\n
cocorlow 1:020b393621e5 69 $PMTK251,57600*2C\r\n
cocorlow 1:020b393621e5 70 $PMTK251,9600*17\r\n
cocorlow 3:25e3289b0411 71 */
cocorlow 3:25e3289b0411 72
cocorlow 3:25e3289b0411 73 /*
cocorlow 3:25e3289b0411 74 Serial pc(USBTX, USBRX);
cocorlow 3:25e3289b0411 75 Serial gps(PC_12, PD_2);
cocorlow 3:25e3289b0411 76
cocorlow 3:25e3289b0411 77 void gps_receive()
cocorlow 3:25e3289b0411 78 {
cocorlow 3:25e3289b0411 79 while (gps.readable())
cocorlow 3:25e3289b0411 80 {
cocorlow 3:25e3289b0411 81 char c;
cocorlow 3:25e3289b0411 82 c = gps.getc();
cocorlow 3:25e3289b0411 83 pc.putc(c);
cocorlow 3:25e3289b0411 84 }
cocorlow 3:25e3289b0411 85 }
cocorlow 3:25e3289b0411 86
cocorlow 3:25e3289b0411 87 int main()
cocorlow 3:25e3289b0411 88 {
cocorlow 3:25e3289b0411 89 pc.baud(115200);
cocorlow 3:25e3289b0411 90 gps.baud(57600);
cocorlow 3:25e3289b0411 91 gps.attach(gps_receive, Serial::RxIrq);
cocorlow 3:25e3289b0411 92 while (1)
cocorlow 3:25e3289b0411 93 {
cocorlow 3:25e3289b0411 94 }
cocorlow 3:25e3289b0411 95 }
cocorlow 3:25e3289b0411 96 */
cocorlow 3:25e3289b0411 97 /*
cocorlow 3:25e3289b0411 98 $GPGLL,3542.8886,N,13945.7717,E,071533.000,A,A*58
cocorlow 3:25e3289b0411 99 $GPGSA,A,3,21,22,08,194,195,01,,,,,,,2.14,1.90,1.00*07
cocorlow 3:25e3289b0411 100 $GPGSV,4,1,14,195,85,343,35,01,79,276,33,21,69,028,29,194,59,191,33*73
cocorlow 3:25e3289b0411 101 $GPGSV,4,2,14,08,48,067,32,22,47,142,34,14,34,314,16,28,29,316,16*7C
cocorlow 3:25e3289b0411 102 $GPGSV,4,3,14,30,28,267,,07,23,224,,27,16,087,,10,03,033,*7C
cocorlow 3:25e3289b0411 103 $GPGSV,4,4,14,193,,,,38,,,*4C
cocorlow 3:25e3289b0411 104 $GPRMC,071533.000,A,3542.8886,N,13945.7717,E,0.10,53.89,080421,,,A*56
cocorlow 3:25e3289b0411 105 $GPVTG,53.89,T,,M,0.10,N,0.19,K,A*03
cocorlow 3:25e3289b0411 106 $GPZDA,071533.000,08,04,2021,,*58
cocorlow 3:25e3289b0411 107 $GPGGA,071534.000,3542.8886,N,13945.7717,E,1,6,1.90,95.8,M,39.3,M,,*69
cocorlow 3:25e3289b0411 108 $GPGLL,3542.8886,N,13945.7717,E,071534.000,A,A*5F
cocorlow 3:25e3289b0411 109 $GPGSA,A,3,21,22,08,194,195,01,,,,,,,2.14,1.90,1.00*07
cocorlow 3:25e3289b0411 110 $GPGSV,4,1,14,195,85,343,35,01,79,276,33,21,69,028,29,194,59,191,33*73
cocorlow 3:25e3289b0411 111 $GPGSV,4,2,14,08,48,067,32,22,47,142,34,14,34,314,16,28,29,316,16*7C
cocorlow 3:25e3289b0411 112 $GPGSV,4,3,14,30,28,267,,07,23,224,,27,16,087,,10,03,033,*7C
cocorlow 3:25e3289b0411 113 $GPGSV,4,4,14,193,,,,41,,,*42
cocorlow 1:020b393621e5 114 */