Hey Guys,
I'm making a RC project, it involves a GPS unit and reading a PWM signal from a radio receiver.
My problem is, that when I add a PulseIn command into my sketch i'm no longer able to read the data from the GPS. Any ideas where might be the problem?
#include <Adafruit_GPS.h>
#include <SoftwareSerial.h>
Adafruit_GPS GPS(&Serial1);
HardwareSerial mySerial = Serial1;
int dioda = 13;
int THRin;
int THRout = 3;
#define GPSECHO true
void setup()
{
pinMode(13, OUTPUT);
pinMode(2, INPUT);
pinMode(3, OUTPUT);
Serial.begin(115200);
delay(5000);
//Serial.println("GPS + RC");
GPS.begin(38400);
GPS.sendCommand(PMTK_SET_NMEA_OUTPUT_RMCGGA);
GPS.sendCommand(PMTK_SET_NMEA_UPDATE_1HZ);
GPS.sendCommand(PGCMD_ANTENNA);
delay(1000);
mySerial.println(PMTK_Q_RELEASE);
}
void loop() {
{
if ((GPS.speed) >= 5) {
digitalWrite (dioda, HIGH);
}
if ((GPS.speed) < 5) {
{digitalWrite (dioda, LOW);
}
}
char c = GPS.read();
if ((c) && (GPSECHO))
// Serial.write(c);
if (GPS.newNMEAreceived()) {
if (!GPS.parse(GPS.lastNMEA()))
return;
}
THRin = pulseIn(2, HIGH); // dlugosc impulsu
// Serial.println(RCin);
if (THRin > 1500)
{
THRout = (THRin - 300);
}