#include <SPI.h> #include <SD.h> double codeval; double therm_res; long series_res = 10000; double temp, temp_in_celsius, temp_in_fahrenheit; const int chipSelect = 4; void setup() { // Open serial communications and wait for port to open: Serial.begin(9600); while (!Serial) { ; // wait for serial port to connect. Needed for native USB port only } pinMode(A0, INPUT); Serial.print("Initializing SD card..."); // see if the card is present and can be initialized: if (!SD.begin(chipSelect)) { Serial.println("Card failed, or not present"); // don't do anything more: return; } Serial.println("card initialized."); } void loop() { // make a string for assembling the data to log: String dataString = ""; for(int i = 0; i < 100 ; i++){ codeval += analogRead(A0); } //for converting the thermistor resistance to temperature codeval = codeval/100; therm_res = (1023 - codeval)/(codeval * series_res); temp = 1/(1/298.15 + (1/3455)*log(therm_res/10000));//temperature in Kelvin temp_in_celsius = temp + 273.15; //temperature in Celsius dataString += (String)temp_in_celsius; // open the file. note that only one file can be open at a time, // so you have to close this one before opening another. File dataFile = SD.open("datalog.txt", FILE_WRITE); // if the file is available, write to it: if (dataFile) { dataFile.println(dataString); dataFile.close(); // print to the serial port too: Serial.println(dataString); } // if the file isn't open, pop up an error: else { Serial.println("error opening datalog.txt"); } }