NMEA0813フォーマットのGPSから情報を取り出すプログラムです。
Dependents: GPS_test EM_Logger
nmea0813.h@4:7be9581d0734, 2013-08-16 (annotated)
- Committer:
- YSB
- Date:
- Fri Aug 16 08:22:08 2013 +0000
- Revision:
- 4:7be9581d0734
- Parent:
- 2:7870c69fa58c
20130816ver
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
YSB | 0:42a334c405de | 1 | #ifndef _INC_NMEA0813 |
YSB | 0:42a334c405de | 2 | #define _INC_NMEA0813 |
YSB | 0:42a334c405de | 3 | |
YSB | 0:42a334c405de | 4 | #define CR 0x0D |
YSB | 0:42a334c405de | 5 | #define LF 0x0A |
YSB | 0:42a334c405de | 6 | |
YSB | 0:42a334c405de | 7 | #include "mbed.h" |
YSB | 0:42a334c405de | 8 | |
YSB | 0:42a334c405de | 9 | class GPS : public Serial { |
YSB | 0:42a334c405de | 10 | public: |
YSB | 0:42a334c405de | 11 | GPS(PinName tx,PinName rx); |
YSB | 0:42a334c405de | 12 | char* get_time(); |
YSB | 0:42a334c405de | 13 | float get_latitude(); |
YSB | 0:42a334c405de | 14 | char* get_str_latitude(); |
YSB | 0:42a334c405de | 15 | float get_longitude(); |
YSB | 0:42a334c405de | 16 | char* get_str_longitude(); |
YSB | 2:7870c69fa58c | 17 | char get_status(); |
YSB | 0:42a334c405de | 18 | float get_speed(); |
YSB | 4:7be9581d0734 | 19 | int get_satelite_number(); |
YSB | 0:42a334c405de | 20 | |
YSB | 0:42a334c405de | 21 | private: |
YSB | 4:7be9581d0734 | 22 | char GPSdata[500];//gps_data_buffer |
YSB | 0:42a334c405de | 23 | char GPGGA[100];//GPGGA_data |
YSB | 0:42a334c405de | 24 | char GPRMC[100];//GPRMC_data |
YSB | 2:7870c69fa58c | 25 | char time_str[9]; |
YSB | 4:7be9581d0734 | 26 | char latitude_str[10]; |
YSB | 0:42a334c405de | 27 | float latitude; |
YSB | 4:7be9581d0734 | 28 | char longitude_str[11]; |
YSB | 0:42a334c405de | 29 | float longitude; |
YSB | 2:7870c69fa58c | 30 | char status; |
YSB | 4:7be9581d0734 | 31 | int number_of_satelite; |
YSB | 4:7be9581d0734 | 32 | char speed_str[6]; |
YSB | 0:42a334c405de | 33 | float speed; |
YSB | 0:42a334c405de | 34 | |
YSB | 0:42a334c405de | 35 | int flg,count;//for rx_func() |
YSB | 4:7be9581d0734 | 36 | char rxbuf,gga_checksum,rmc_checksum; |
YSB | 0:42a334c405de | 37 | |
YSB | 0:42a334c405de | 38 | void rxHandler(void); |
YSB | 0:42a334c405de | 39 | void update_infomation(); |
YSB | 4:7be9581d0734 | 40 | void set_GGA_RMC(char* str); |
YSB | 0:42a334c405de | 41 | |
YSB | 0:42a334c405de | 42 | Ticker T; |
YSB | 0:42a334c405de | 43 | }; |
YSB | 0:42a334c405de | 44 | |
YSB | 0:42a334c405de | 45 | #endif |
YSB | 0:42a334c405de | 46 |