well i have figured somethings out and have what i want working.... however, my time jumps every once and a while.... does anything jump out that screams dont do that, that slows everything down???
#include <Adafruit_GPS.h> //Call Libraries
#include <SoftwareSerial.h>
#include<SPI.h>
#include<SD.h>
SoftwareSerial mySerial(8, 7); //Set pins on GPS unit
Adafruit_GPS GPS(&mySerial);
File logfile;
uint32_t timer = millis();
int n=0;
void setup()
{
Serial.begin(115200);
Serial.println("Hello. Let' start the test.");
GPS.begin(9600);
pinMode(10,OUTPUT);
if(!SD.begin(10)){
Serial.println("SD card not found... Ending program.");
return;
}
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);
while(n==0){
char c = GPS.read();
if (GPS.newNMEAreceived()) {
if (!GPS.parse(GPS.lastNMEA()))
n=0;
}
if (millis() - timer > 2000) {
timer = millis(); // reset the timer
if(GPS.hour!=0 && GPS.day!=0){
Serial.println("Let us get started...");
File dataFile=SD.open("Log02.txt",FILE_WRITE);
if(dataFile){
dataFile.print("\nTime: ");
dataFile.print(GPS.hour, DEC); dataFile.print(':');
dataFile.print(GPS.minute, DEC); dataFile.print(':');
dataFile.print(GPS.seconds, DEC); dataFile.print('.');
dataFile.println(GPS.milliseconds);
dataFile.print("Date: ");
dataFile.print(GPS.day, DEC); dataFile.print('/');
dataFile.print(GPS.month, DEC); dataFile.print("/20");
dataFile.println(GPS.year, DEC);
dataFile.println("Reading,Time,Sensor1,Sensor2,Sensor3,Sensor4");
dataFile.close();
Serial.println("Begin");
n=5;
}
}
}
}
}
int S1=0;
int S2=0;
int S3=0;
int S4=0;
unsigned int reading=0;
void loop(){
if(n==5){
if(millis()-timer>=50){
timer=millis();
S1=analogRead(0);
S2=analogRead(1);
S3=analogRead(2);
S4=analogRead(3);
reading=reading+1;
File dataFile=SD.open("Log02.txt",FILE_WRITE);
if(dataFile){
dataFile.print(reading);
dataFile.print(",");
dataFile.print(timer);
dataFile.print(",");
dataFile.print(S1);
dataFile.print(",");
dataFile.print(S2);
dataFile.print(",");
dataFile.print(S3);
dataFile.print(",");
dataFile.println(S4);
dataFile.close();}
}
}
}