Class pour trame Nmea.

Dependents:   Test_gps_event_vitesse_bluetooth gpsmpu60500 Test_gps_event_vitesse_bluetooth_ok

Fork of gps_event_vitesse by schneider françois

Committer:
schnf30
Date:
Fri May 20 16:24:50 2016 +0000
Revision:
1:dfc738d8aba1
Parent:
0:ba9bedfe1044
Driver adapt? au EM-40- et 506.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
schnf30 0:ba9bedfe1044 1 #ifndef _Sf_gps_rs232_
schnf30 0:ba9bedfe1044 2 #define _Sf_gps_rs232_
schnf30 0:ba9bedfe1044 3 #include "mbed.h"
schnf30 0:ba9bedfe1044 4 #define trame_nmea_max 84
schnf30 0:ba9bedfe1044 5
schnf30 0:ba9bedfe1044 6 const double pi = 3.14159265;
schnf30 0:ba9bedfe1044 7 const double rayon = 6378137.0;
schnf30 0:ba9bedfe1044 8
schnf30 0:ba9bedfe1044 9 class Gps : public Serial
schnf30 0:ba9bedfe1044 10 {
schnf30 0:ba9bedfe1044 11 public:
schnf30 0:ba9bedfe1044 12 Gps(PinName Txd, PinName Rxd);
schnf30 0:ba9bedfe1044 13 void receive(); //recoit les data gps et les stocks puis produit les donnees en cas de reception
schnf30 0:ba9bedfe1044 14 double time(); // date
schnf30 0:ba9bedfe1044 15 double latitude();
schnf30 0:ba9bedfe1044 16 char ns(); // nombre satellite.
schnf30 0:ba9bedfe1044 17 double longitude();
schnf30 0:ba9bedfe1044 18 char ew();
schnf30 0:ba9bedfe1044 19 int lock();
schnf30 0:ba9bedfe1044 20 int nbsattelite();
schnf30 0:ba9bedfe1044 21 char sample();
schnf30 0:ba9bedfe1044 22 float vitesse();
schnf30 0:ba9bedfe1044 23 char vitesse_ok();
schnf30 0:ba9bedfe1044 24 float vitesse_gps();
schnf30 0:ba9bedfe1044 25 char vitesse_gps_ok();
schnf30 0:ba9bedfe1044 26 private:
schnf30 0:ba9bedfe1044 27 unsigned int _num; // nombre caractere recu dans la phrase gps en court
schnf30 0:ba9bedfe1044 28 char _msg[trame_nmea_max+1]; //
schnf30 0:ba9bedfe1044 29 float _time; // date
schnf30 0:ba9bedfe1044 30 float _old_time;
schnf30 0:ba9bedfe1044 31 float _latitude;
schnf30 0:ba9bedfe1044 32 float _old_latitude;
schnf30 0:ba9bedfe1044 33 char _ns;
schnf30 0:ba9bedfe1044 34 float _longitude;
schnf30 0:ba9bedfe1044 35 float _old_longitude;
schnf30 0:ba9bedfe1044 36 char _ew;
schnf30 0:ba9bedfe1044 37 int _lock;
schnf30 0:ba9bedfe1044 38 int _old_lock;
schnf30 0:ba9bedfe1044 39 int _nbsattelite;
schnf30 0:ba9bedfe1044 40 char _gps_data_ok;
schnf30 0:ba9bedfe1044 41 double _trunc(double v);
schnf30 0:ba9bedfe1044 42 double _time_sec(double time);
schnf30 0:ba9bedfe1044 43 float _vitesse_gps;
schnf30 0:ba9bedfe1044 44 char _vitesse_gps_ok;
schnf30 0:ba9bedfe1044 45 };
schnf30 0:ba9bedfe1044 46 #endif