#include #include #define RXPIN 6 #define TXPIN 5 #define GPSBAUD 9600 TinyGPS gps; SoftwareSerial uart_gps(RXPIN, TXPIN); void getgps(TinyGPS &gps); int value = 0; char arr_o[] = { '*', '*', '*', 'o', '!' }, arr_x[] = { '*', '*', '*', 'x', '!' }; //setup void setup() { Serial.begin(9600); uart_gps.begin(GPSBAUD); Serial.println(""); Serial.println("GPS Shield QuickStart Example Sketch v12"); Serial.println(" ...waiting for lock... "); Serial.println(""); } void loop() { //FSRsensor value = analogRead(A0); if(value >= 300){ for(int i = 0; i < 5; i++){ Serial.write(arr_o[i]); } } else{ for(int i = 0; i < 5; i++){ Serial.write(arr_x[i]); } } //gps while(uart_gps.available()) { int c = uart_gps.read(); if(gps.encode(c)) { getgps(gps); } } delay(3000); } //parshing code void getgps(TinyGPS &gps) { char floatArr[10], buff[15]; float latitude, longitude; int len; gps.f_get_position(&latitude, &longitude); //latitude dtostrf(latitude, 10, 5, floatArr); sprintf(buff, "***%s!", floatArr); len = strlen(buff); for(int i = len; i >= 0; i--){ if(buff[i] != ' '){ Serial.write(buff[i]); } } //longitude dtostrf(longitude, 10, 5, floatArr); sprintf(buff, "***%s!", floatArr); len = strlen(buff); for(int i = len; i >= 0; i--){ if(buff[i] != ' '){ Serial.write(buff[i]); } } Serial.println(); unsigned long chars; unsigned short sentences, failed_checksum; gps.stats(&chars, &sentences, &failed_checksum); }