/*SD card dataloggerThis example shows how to log data from three analog sensorsto an SD card using the SD library.The circuit:* analog sensors on analog ins 0, 1, and 2* SD card attached to SPI bus as follows:** MOSI - pin 11** MISO - pin 12** CLK - pin 13** CS - pin 4created 24 Nov 2010updated 2 Dec 2010by Tom IgoeThis example code is in the public domain.*/#include <SD.h>// On the Ethernet Shield, CS is pin 4. Note that even if it's not// used as the CS pin, the hardware CS pin (10 on most Arduino boards,// 53 on the Mega) must be left as an output or the SD library// functions will not work.const int chipSelect = 4;void setup(){Serial.begin(9600);Serial.print("Initializing SD card...");// make sure that the default chip select pin is set to// output, even if you don't use it:pinMode(10, OUTPUT);// 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 = "";// read three sensors and append to the string:for (int analogPin = 0; analogPin < 3; analogPin++) {int sensor = analogRead(analogPin);dataString += String(sensor);if (analogPin < 2) {dataString += ",";}}// 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");}}