GPS NMEA through NavSatFix

Dependencies:   TinyGPSPlus

PROJ515.hpp

Committer:
Luka_Danilovic
Date:
2019-03-01
Revision:
3:30c3f20c2387
Parent:
2:a2e5b48beaa1
Child:
4:df54ebe69b38

File content as of revision 3:30c3f20c2387:

#ifndef __PROJ515_H__ //Inclusion safeguards
#define __PROJ515_H__ //Definition of the inclusion
/*============================================================================*/

/* Libraries */
#include "mbed.h"               // Mbed RTOS
//#include "USBSerial.h"          // Serial over second USB
#include "TinyGPSPlus.h"        // GPS Module Library
#include "ros.h"                // ROS Library
#include "nav_msgs/Odometry.h"  // ROS Navigation Messages component
#include "std_msgs/String.h"    // ROS Standard Messages component
#include "std_msgs/Char.h"      // ROS Standard Messages component

/* Definitions */
#define GPS_TX PC_10            // GPS Transmit Pin
#define GPS_RX PC_11            // GPS Recieve  Pin
#define USB_TX PC_12            // USB Transmit Pin
#define USB_RX PD_2             // USB Recieve  Pin
#define GPS_Baud 9600           // GPS Baud Rate
#define USB_Baud 9600           // ROS Baud Rate
#define ROS_Baud 57600          // ROS Baud Rate
#define frameID "/gps_odom"     // ROS frame ID
#define childID "/base_link"    // ROS child frame ID
#define CVX 0x01                // Covariance value for X from the datasheet
#define CVY 0x01                // Covariance value for X from the datasheet
#define CVZ 0x01                // Covariance value for X from the datasheet
#define ONE 0x01                // Hard coded covariance of 1
#define PRINT_DATA 0x01

/* Declarations */
extern char gps_c;              // GPS stream character - Defined in PROJ515.cpp     

/* Function prototypes */
void streamF();                 // Function prototype for streaming data
void setupRosMsg();             // Function prototype for seting up ROS messages

/*============================================================================*/
#endif // End of inclusion