Writing data on SD card with Arduino: code example
Example 1: arduino sd card module
#include <SPI.h>#include <SD.h>File myFile;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}Serial.print("Initializing SD card...");if (!SD.begin(10)) {Serial.println("initialization failed!");while (1);}Serial.println("initialization done.");// open the file. note that only one file can be open at a time,// so you have to close this one before opening another.myFile = SD.open("test.txt", FILE_WRITE);// if the file opened okay, write to it:if (myFile) {Serial.print("Writing to test.txt...");myFile.println("This is a test file :)");myFile.println("testing 1, 2, 3.");for (int i = 0; i < 20; i++) {myFile.println(i);}// close the file:myFile.close();Serial.println("done.");} else {// if the file didn't open, print an error:Serial.println("error opening test.txt");}}void loop() {// nothing happens after setup}
Example 2: arduino sd card reader
/*Save temperature in SD/microSD card every hour with DS3231 + SD/microSD module + Arduinomodified on 15 Apr 2019by Mohammadreza Akbari @ Electropeakhttps://electropeak.com/learn/*/#include <SPI.h>#include <SD.h>#include <Wire.h>#include "Sodaq_DS3231.h"File myFile;DateTime now;int newHour = 0;int oldHour = 0;void save_temperature() {myFile = SD.open("temp.txt", FILE_WRITE);now = rtc.now();myFile.print(now.hour());myFile.print(":");myFile.print(now.minute());rtc.convertTemperature(); //convert current temperature into registersmyFile.print(",");myFile.println(rtc.getTemperature()); //read registers and save temperature on deg CmyFile.close();}void setup (){Wire.begin();rtc.begin();Serial.begin(9600);Serial.print("Initializing SD card...");if (!SD.begin(10)) {Serial.println("initialization failed!");while (1);}Serial.println("initialization done.");now = rtc.now();oldHour = now.hour();}void loop (){now = rtc.now();newHour = now.hour();if (oldHour != newHour) {save_temperature();oldHour = newHour;}}