First commit, working build.
This commit is contained in:
76
lib/Adafruit-GPS-Library/examples/leo_echo/leo_echo.ino
Normal file
76
lib/Adafruit-GPS-Library/examples/leo_echo/leo_echo.ino
Normal file
@@ -0,0 +1,76 @@
|
||||
// Test code for Adafruit GPS modules using MTK3329/MTK3339 driver
|
||||
//
|
||||
// This code just echos whatever is coming from the GPS unit to the
|
||||
// serial monitor, handy for debugging!
|
||||
//
|
||||
// Tested and works great with the Adafruit Ultimate GPS module
|
||||
// using MTK33x9 chipset
|
||||
// ------> http://www.adafruit.com/products/746
|
||||
// Pick one up today at the Adafruit electronics shop
|
||||
// and help support open source hardware & software! -ada
|
||||
|
||||
//This code is intended for use with Arduino Leonardo and other ATmega32U4-based Arduinos
|
||||
|
||||
#include <Adafruit_GPS.h>
|
||||
#include <SoftwareSerial.h>
|
||||
|
||||
// Connect the GPS Power pin to 5V
|
||||
// Connect the GPS Ground pin to ground
|
||||
// If using software serial (sketch example default):
|
||||
// Connect the GPS TX (transmit) pin to Digital 8
|
||||
// Connect the GPS RX (receive) pin to Digital 7
|
||||
// If using hardware serial:
|
||||
// Connect the GPS TX (transmit) pin to Arduino RX1 (Digital 0)
|
||||
// Connect the GPS RX (receive) pin to matching TX1 (Digital 1)
|
||||
|
||||
// If using software serial, keep these lines enabled
|
||||
// (you can change the pin numbers to match your wiring):
|
||||
SoftwareSerial mySerial(8, 7);
|
||||
|
||||
// If using hardware serial, comment
|
||||
// out the above two lines and enable these two lines instead:
|
||||
//HardwareSerial mySerial = Serial1;
|
||||
|
||||
#define PMTK_SET_NMEA_UPDATE_1HZ "$PMTK220,1000*1F"
|
||||
#define PMTK_SET_NMEA_UPDATE_5HZ "$PMTK220,200*2C"
|
||||
#define PMTK_SET_NMEA_UPDATE_10HZ "$PMTK220,100*2F"
|
||||
|
||||
// turn on only the second sentence (GPRMC)
|
||||
#define PMTK_SET_NMEA_OUTPUT_RMCONLY "$PMTK314,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0*29"
|
||||
// turn on GPRMC and GGA
|
||||
#define PMTK_SET_NMEA_OUTPUT_RMCGGA "$PMTK314,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0*28"
|
||||
// turn on ALL THE DATA
|
||||
#define PMTK_SET_NMEA_OUTPUT_ALLDATA "$PMTK314,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0*28"
|
||||
// turn off output
|
||||
#define PMTK_SET_NMEA_OUTPUT_OFF "$PMTK314,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0*28"
|
||||
|
||||
#define PMTK_Q_RELEASE "$PMTK605*31"
|
||||
|
||||
void setup() {
|
||||
while (!Serial); // wait for leo to be ready
|
||||
|
||||
Serial.begin(57600); // this baud rate doesn't actually matter!
|
||||
mySerial.begin(9600);
|
||||
delay(2000);
|
||||
Serial.println("Get version!");
|
||||
mySerial.println(PMTK_Q_RELEASE);
|
||||
|
||||
// you can send various commands to get it started
|
||||
//mySerial.println(PMTK_SET_NMEA_OUTPUT_RMCGGA);
|
||||
mySerial.println(PMTK_SET_NMEA_OUTPUT_ALLDATA);
|
||||
|
||||
mySerial.println(PMTK_SET_NMEA_UPDATE_1HZ);
|
||||
}
|
||||
|
||||
|
||||
void loop() {
|
||||
if (Serial.available()) {
|
||||
char c = Serial.read();
|
||||
Serial.write(c);
|
||||
mySerial.write(c);
|
||||
}
|
||||
if (mySerial.available()) {
|
||||
char c = mySerial.read();
|
||||
Serial.write(c);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user