Arduino Nano - Escribir una variable en la tarjeta SD

Este tutorial explica cómo escribir diferentes tipos de variables en una tarjeta microSD utilizando Arduino Nano. Específicamente, veremos:

Para obtener el par clave-valor de la tarjeta microSD y convertirlo a entero, flotante o cadena, consulte Arduino Nano - Read Config from SD Card. Para instrucciones sobre cómo leer el par clave-valor de la tarjeta microSD y convertirlo a entero, flotante o cadena, eche un vistazo a Arduino Nano - Read Config from SD Card.

Tarjeta microSD para Arduino Nano

Hardware Requerido

1×Official Arduino Nano
1×Alternatively, DIYables ATMEGA328P Nano Development Board
1×Cable USB A a Mini-B
1×Tarjeta Micro SD
1×Módulo de Tarjeta Micro SD
1×Cables Puente
1×(Opcional) Adaptador de Tarjeta de Memoria MicroSD a SD
1×(Recomendado) Placa de Expansión de Terminales de Tornillo para Arduino Nano
1×(Recomendado) Placa de Expansión Breakout para Arduino Nano
1×(Recomendado) Divisor de Alimentación para Arduino Nano

Or you can buy the following kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgación: Algunos de los enlaces proporcionados en esta sección son enlaces de afiliado de Amazon. Podemos recibir una comisión por las compras realizadas a través de estos enlaces sin costo adicional para usted. Apreciamos su apoyo.

Acerca del módulo de tarjeta microSD

Si no está familiarizado con el módulo de tarjeta Micro SD, incluyendo su esquema de pines, cómo funciona y cómo programarlo, puede obtener más información en el tutorial Arduino Nano - Micro SD Card.

Diagrama de Cableado

  • Puedes usar cables jumper macho-hembra para conectar el módulo de la tarjeta microSD al Arduino Nano
Diagrama de cableado del módulo de tarjeta microSD para Arduino Nano

This image is created using Fritzing. Click to enlarge image

  • O también puedes conectar el módulo de la tarjeta microSD a la placa de pruebas y luego usar cables de puente macho a macho.
Diagrama de cableado del módulo de tarjeta microSD para Arduino Nano

This image is created using Fritzing. Click to enlarge image

Ver La mejor forma de alimentar Arduino Nano y otros componentes.

Arduino Nano - Cómo escribir una variable en un archivo en la tarjeta microSD

El siguiente código:

  • Almacena un valor entero en una tarjeta microSD
  • Almacena un valor de punto flotante en una tarjeta microSD
  • Almacena una cadena en una tarjeta microSD
  • Almacena un arreglo de caracteres en una tarjeta microSD
  • Almacena un arreglo de bytes en una tarjeta microSD
/* * Este código de Arduino Nano fue desarrollado por es.newbiely.com * Este código de Arduino Nano se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-nano/arduino-nano-write-variable-to-sd-card */ #include <SD.h> #define PIN_SPI_CS 4 File myFile; int myInt = -52; float myFloat = -12.7; String myString = "HELLO"; char myCharArray[] = "ArduinoGetStarted.com"; byte myByteArray[] = {'1', '2', '3', '4', '5'}; void setup() { Serial.begin(9600); if (!SD.begin(PIN_SPI_CS)) { Serial.println(F("SD CARD FAILED, OR NOT PRESENT!")); while (1); // don't do anything more: } Serial.println(F("SD CARD INITIALIZED.")); Serial.println(F("--------------------")); SD.remove("arduino.txt"); // delete the file if existed // create new file by opening file for writing myFile = SD.open("arduino.txt", FILE_WRITE); if (myFile) { myFile.println(myInt); // write int variable to SD card in line myFile.println(myFloat); // write float variable to SD card in line myFile.println(myString); // write String variable to SD card in line myFile.println(myCharArray); // write char array to SD card in line myFile.write(myByteArray, 5); myFile.write("\n"); // new line for (int i = 0; i < 5; i++) { myFile.write(myByteArray[i]); // new line if (i < 4) myFile.write(","); // comma } myFile.write("\n"); // new line myFile.close(); } else { Serial.print(F("SD Card: error on opening file arduino.txt")); } // open file for reading myFile = SD.open("arduino.txt", FILE_READ); if (myFile) { while (myFile.available()) { char ch = myFile.read(); // read characters one by one from Micro SD Card Serial.print(ch); // print the character to Serial Monitor } myFile.close(); } else { Serial.print(F("SD Card: error on opening file arduino.txt")); } } void loop() { }

Pasos R\u00e1pidos

  • Asegúrese de que la tarjeta microSD esté formateada como FAT16 o FAT32 (puede encontrar instrucciones sobre cómo hacer esto buscando en Google).
  • Copie el código y ábralo en el IDE de Arduino.
  • Luego, presione el botón Subir en el IDE de Arduino para cargar el código al Arduino Nano.
  • Finalmente, observe el resultado en el Monitor serie.
COM6
Send
SD CARD INITIALIZED. -------------------- -52 -12.70 HELLO ArduinoGetStarted.com 12345 1,2,3,4,5
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  
  • Retire la tarjeta microSD del módulo microSD.
  • Inserte la tarjeta microSD en un lector de tarjetas SD USB.
  • Conecte el lector de tarjetas SD USB al PC.
  • Abra el archivo arduino-nano.txt en su PC; se muestra a continuación.
Arduino Nano escribe una variable en la tarjeta microSD.

Arduino Nano - Cómo escribir un par clave-valor en un archivo en una tarjeta microSD

/* * Este código de Arduino Nano fue desarrollado por es.newbiely.com * Este código de Arduino Nano se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/arduino-nano/arduino-nano-write-variable-to-sd-card */ #include <SD.h> #define PIN_SPI_CS 4 File myFile; int myInt = -52; float myFloat = -12.7; String myString = "HELLO"; char myCharArray[] = "ArduinoGetStarted.com"; byte myByteArray[] = {'1', '2', '3', '4', '5'}; void setup() { Serial.begin(9600); if (!SD.begin(PIN_SPI_CS)) { Serial.println(F("SD CARD FAILED, OR NOT PRESENT!")); while (1); // don't do anything more: } Serial.println(F("SD CARD INITIALIZED.")); Serial.println(F("--------------------")); SD.remove("arduino.txt"); // delete the file if existed // create new file by opening file for writing myFile = SD.open("arduino.txt", FILE_WRITE); if (myFile) { myFile.print("myInt="); // write key to SD card myFile.println(myInt); // write int variable to SD card in line myFile.print("myFloat="); // write key to SD card myFile.println(myFloat); // write float variable to SD card in line myFile.print("myString="); // write key to SD card myFile.println(myString); // write String variable to SD card in line myFile.print("myCharArray="); // write key to SD card myFile.println(myCharArray); // write char array to SD card in line myFile.print("myByteArray="); // write key to SD card myFile.write(myByteArray, 5); myFile.write("\n"); // new line myFile.print("myByteArray2="); // write key to SD card for (int i = 0; i < 5; i++) { myFile.write(myByteArray[i]); // new line if (i < 4) myFile.write(","); // comma } myFile.write("\n"); // new line myFile.close(); } else { Serial.print(F("SD Card: error on opening file arduino.txt")); } // open file for reading myFile = SD.open("arduino.txt", FILE_READ); if (myFile) { while (myFile.available()) { char ch = myFile.read(); // read characters one by one from Micro SD Card Serial.print(ch); // print the character to Serial Monitor } myFile.close(); } else { Serial.print(F("SD Card: error on opening file arduino.txt")); } } void loop() { }

Pasos R\u00e1pidos

  • Copia el código y ábrelo usando el IDE de Arduino.
  • Haz clic en el botón Subir en el IDE de Arduino para enviar el código al Arduino Nano.
  • Revisa el resultado en el Monitor Serial.
COM6
Send
SD CARD INITIALIZED. -------------------- myInt=-52 myFloat=-12.70 myString=HELLO myCharArray=ArduinoGetStarted.com myByteArray=12345 myByteArray2=1,2,3,4,5
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  
  • Retira la tarjeta microSD del módulo de tarjeta microSD.
  • Inserta la tarjeta microSD en un lector de tarjetas SD USB.
  • Conecta el lector de tarjetas SD USB al ordenador.
  • Abre el archivo arduino-nano.txt en tu ordenador; aparece como sigue:
Arduino Nano escribe una variable en la tarjeta microSD.

Video Tutorial

Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!