-
-
Save dj1711572002/1a56926e58ec3caa8f7c03672cd50ffa to your computer and use it in GitHub Desktop.
Teensy4.1 SD CARD Writing Speed
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
SD card datalogger | |
This example shows how to log data from three analog sensors | |
to 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, pin 7 on Teensy with audio board | |
** MISO - pin 12 | |
** CLK - pin 13, pin 14 on Teensy with audio board | |
** CS - pin 4, pin 10 on Teensy with audio board | |
created 24 Nov 2010 | |
modified 9 Apr 2012 | |
by Tom Igoe | |
This example code is in the public domain. | |
*/ | |
#include <SD.h> | |
#include <SPI.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. | |
// change this to match your SD shield or module; | |
// Arduino Ethernet shield: pin 4 | |
// Adafruit SD shields and modules: pin 10 | |
// Sparkfun SD shield: pin 8 | |
// Teensy audio board: pin 10 | |
// Teensy 3.5 & 3.6 & 4.1 on-board: BUILTIN_SDCARD | |
// Wiz820+SD board: pin 4 | |
// Teensy 2.0: pin 0 | |
// Teensy++ 2.0: pin 20 | |
const int chipSelect =BUILTIN_SDCARD;// 10; | |
int i; | |
int n; | |
int num=1000; | |
String dataString,dataString1; | |
void setup() | |
{ | |
//UNCOMMENT THESE TWO LINES FOR TEENSY AUDIO BOARD: | |
//SPI.setMOSI(7); // Audio shield has MOSI on pin 7 | |
//SPI.setSCK(14); // Audio shield has SCK on pin 14 | |
// Open serial communications and wait for port to open: | |
Serial.begin(9600); | |
while (!Serial) { | |
; // wait for serial port to connect. | |
} | |
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"); | |
while (1) { | |
// No SD card, so don't do anything more - stay stuck here | |
} | |
} | |
Serial.println("card initialized."); | |
dataString = ""; | |
for(i=0;i<num;i++){ | |
dataString += String(i); | |
dataString += ","; | |
} | |
} | |
void loop() | |
{ | |
// open the file. | |
File dataFile = SD.open("data_log.txt", FILE_WRITE); | |
while(n<1000){ | |
n++; | |
// if the file is available, write to it: | |
if (dataFile) { | |
dataString1=dataString+String(millis()); | |
dataFile.println(dataString1); | |
// print to the serial port too: | |
} else { | |
// if the file isn't open, pop up an error: | |
Serial.println("error opening datalog.txt"); | |
} | |
//delay(1); // run at a reasonable not-too-fast speed | |
}//n<1000 | |
dataFile.close(); | |
Serial.println("-------SD Write Finished"); | |
exit(0); | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment