Tarjeta SD de Arduino:qué es y cómo usarla
¿Ejecutas numerosos proyectos Arduino? ¿Y necesita almacenar una gran cantidad de información vital y datos de registro? La solución es utilizar una tarjeta SD Arduino. ¿Cómo funciona?
Este artículo lo guiará a través de todo lo que necesita saber sobre el dispositivo, como qué es, cómo conectarlo, cómo usarlo y más.
Sigue leyendo para descubrir todo lo que necesitas saber.
¿Qué es SD en Arduino?
Tarjeta SD Arduino
Fuente de la imagen:Pixlr
Una tarjeta SD o tarjeta micro SD es un dispositivo que tiene dos componentes principales. Y estos componentes lo ayudan a incluir fácilmente el registro de datos en su proyecto Arduino. Además, el voltaje de trabajo de la mayoría de las tarjetas micro SD es de 3,3 V.
Como resultado, es imposible conectar el dispositivo directamente a circuitos lógicos de 5V. En resumen, si intenta trabajar con voltajes superiores a 3,6 V, destruirá su tarjeta SD.
Por lo tanto, es por eso que un módulo cuenta con un regulador (caída ultrabaja integrada) que cambia el voltaje actual de 3,3 a 6 V a aproximadamente 3,3 V.
Además, la tarjeta SD tiene un chip en el módulo (74LVC125A), que ayuda a cambiar la lógica de conexión de 3,3 – 5 V a 3,3 V. Por lo tanto, puede referirse al proceso como "cambio de nivel lógico", lo que significa que la placa puede vincularse con dos microcontroladores como Arduino:3,3 V y 5 V.
Componentes de microcontroladores
¿Cómo se interconecta una tarjeta SD estándar con Arduino? Tenemos dos métodos para esto:modo SDIO y modo SPI.
La mayoría de los módulos de tarjetas SD se basan en el modo SPI (menos gastos generales y menor velocidad). Y este es un modo fácil de usar para la mayoría de los microcontroladores.
Módulos de tarjeta de memoria
Por otro lado, el modo más rápido es SDIO y se aplica a diferentes dispositivos como teléfonos móviles, cámaras, etc. Pero este modo tiende a ser más complejo ya que necesita firmar documentos confidenciales antes de continuar.
El pinout del módulo de tarjeta SD de Arduino
El módulo de la tarjeta SD presenta seis pines en el adaptador e incluyen lo siguiente:
- MOSI:entrada SPI
- CS:pin de señal para la selección de Chip para deshabilitar/habilitar la línea
- GND:patilla de tierra
- MISO:salida SPI
- VCC:fuente de alimentación de +5 V
- SCK:recibe impulsos de reloj para sincronizar datos
Cómo preparar su tarjeta Micro SD
Primero, debe obtener un módulo de tarjeta SD e insertar su tarjeta micro SD. Luego, coloque el módulo en el Arduino para formatear la tarjeta correctamente.
Mientras lo hace, asegúrese de formatear la tarjeta según la biblioteca Arduino. Es decir, debe formatear la tarjeta de memoria en FAT32 o FAT16.
Además, si está trabajando con una tarjeta SD nueva, es posible que los fabricantes la hayan formateado previamente con un sistema de archivos FAT. Pero puede encontrar problemas con el formato de la tarjeta. Por lo tanto, la regla general es volver a formatear su tarjeta SD, ya sea nueva o antigua.
¿Cómo se conecta la tarjeta SD a Arduino?
Conexión de tarjeta Arduino con tarjeta SD
Fuente de la imagen:Wikimedia Commons
Dado que su tarjeta SD está lista para usar, puede conectarla a la placa de conexión SD.
Entonces, puede comenzar colocando el módulo de la tarjeta micro SD en su tablero. Luego, conecte el pin VCC del módulo a los 5V de Arduino. Además, conecte el pin GND a tierra. Y lo que quedaría son los pines para comunicación SPI.
Por lo general, las tarjetas micro SD necesitan mucha transferencia de datos. Pero funcionan mejor cuando conecta las tarjetas a los pines SPI del hardware del microcontrolador. Y es porque los pines (SPI) son más rápidos que "golpear" el código de la interfaz con un conjunto diferente de pines.
Además, es vital tener en cuenta que las placas Arduino tienen varios pines SPI que debe conectar en consecuencia. Por ejemplo, Arduino Nano tiene pines como 11 (MOSI), 12 (MISO) y 13 (SCK). Además, necesita un cuarto pin:la línea SS "selección de chip".
Además, puede usar el pin 10 para el pin SS o el que prefiera. Sin embargo, cuando se trata de Arduino mega, los pines son diferentes. Entonces, debe usar 53 (SS), 50 (MISO), 51 (MOSI) y 52 (SCK). Además, puede consultar esta documentación oficial si está utilizando otras placas Arduino. Entonces, estará listo para registrar datos.
¿Cómo se utiliza un código Arduino para probar el módulo de la tarjeta SD con CardInfo?
Puede ser tedioso comunicarse con una tarjeta SD. Pero lo bueno es que el IDE de Arduino cuenta con una buena biblioteca "SD". Como resultado, facilita el proceso de lectura y escritura de tarjetas SD.
Además, ejecute el boceto y haga clic en Archivo→Ejemplos→SD→información de la tarjeta. Luego, el boceto le notificará si reconoce su tarjeta SD mostrando algunos datos. Luego, puede volver al boceto y confirmar que el "chip Select" está usando el pin digital correcto. Si no, cambia el pin a 10.
Una vez que todo se vea bien, coloque la tarjeta SD en el módulo y cargue el boceto. Además, debería ver un aviso inmediatamente cuando abra el monitor serie. Y el mensaje debería mostrar FAT32 para el tipo de volumen, el tamaño y SDHC (SD de alta capacidad) como tipo de tarjeta.
Captura de pantalla del boceto de Arduino
Pero si se trata de un clon o de una tarjeta SD defectuosa, es posible que vea SD1 como el tipo de tarjeta sin identificación del producto ni del fabricante. Con esto, puede intentar reformatear la tarjeta. Si obtienes el mismo resultado, tira la carta.
Captura de pantalla del boceto de Arduino
Por último, vuelva a ejecutar el boceto sin su tarjeta SD. Y el boceto no inicializará la tarjeta SD. Curiosamente, también puede recibir este aviso si su tarjeta está dañada o tiene un error de cableado.
Captura de pantalla del boceto de Arduino
¿Qué pasa si la tarjeta SD está correctamente formateada con el cableado correcto? El mensaje dirá:"el cableado es correcto y hay una tarjeta presente".
Lectura y escritura de datos con una tarjeta SD Arduino
Si su tarjeta SD se ha inicializado correctamente, puede continuar con el siguiente paso. Primero, puede comenzar cargando el código en el boceto. Entonces, si todo está bien, verá una pantalla que dice "inicialización completada".
Además, verás "escribir para probar hecho". Por lo tanto, si elige restablecer el Arduino y permitir que el boceto se ejecute nuevamente, los datos anteriores no se sobrescribirán. En su lugar, los nuevos datos se adjuntarán a los datos anteriores.
¿Qué significa el código?
Parte 1
El boceto tiene la biblioteca SPI y la biblioteca SD incorporada. Como resultado, puede usar fácilmente su tarjeta SD para comunicarse con la interfaz SPI.
Luego, debe elegir el pin Arduino que el CS conectará al pin del módulo. Y eso es porque el pin CS no está fijo. Además, dado que está utilizando la biblioteca SPI de hardware, no es necesario indicar los pines porque son fijos.
A continuación, debe crear un objeto, myFile, que le ayude a almacenar información en su tarjeta SD.
Luego, diríjase a la sección configuración () para comenzar la comunicación en serie para mostrar los resultados en el monitor en serie.
Luego, necesitará la función SD.begin() para inicializar su tarjeta. Por lo tanto, si la inicialización de su tarjeta se lleva a cabo, la declaración "si" será verdadera y la cadena "inicialización finalizada" aparecerá en el monitor en serie. De lo contrario, aparecerá “else String”:“inicialización fallida” y el programa finalizará.
Luego, verá que la función SD.open() abre un archivo:"test.txt". Si no ve este archivo, debe crear uno. Como resultado, la función FILE_WRITE se abrirá en modo de lectura y escritura.
Una vez que se abre el archivo, el monitor serie mostrará el mensaje "Escribiendo en test.txt...". Además, verá "probando 1, 2, 3" en la función myFile.println(). Luego, deberá aplicar la función close() para guardar los datos escritos en el archivo.
Parte 2
Ahora, debe verificar el archivo para confirmar que la operación de escritura fue exitosa. Y puede hacerlo usando la función SD.open() como "test.txt". Más tarde, puede usar la función myFile.read(), que leerá el archivo y lo mostrará en el monitor serie.
Después, use el bucle "while" y la función myFile. Available() para leer los caracteres del archivo. Y es porque la función read() lee un carácter por vez. Luego, cierre el archivo.
No será necesario ejecutar los códigos varias veces porque se trata de un boceto de demostración. Y todos los códigos están en la función setup() que se ejecuta una vez.
Cosas importantes a tener en cuenta
1. No hay distinción entre mayúsculas y minúsculas en los nombres de archivo. Entonces, WriteLog.Txt es lo mismo que writelog.txt y WRITELOG.TXT.
2. Es posible abrir sus archivos en un directorio.
3. Puede escribir variables, cadenas, etc., con las funciones println() e print().
4. La función Read() no lee un número o una línea completos. En su lugar, devuelve un carácter a la vez.
5. Es fundamental que los nombres de los archivos sean cortos, ya que la biblioteca de la tarjeta SD no admite "nombres de archivo largos".
Preguntas frecuentes
¿Cuál es el tamaño máximo de la tarjeta SD de Arduino?
La tarjeta SD máxima es de 2 GB.
¿Puede dañarse una tarjeta SD de Arduino?
Si es posible. Y podría ocurrir debido a daños físicos, uso inadecuado, defectos de fabricación y malware.
Conclusión
La tarjeta Arduino SD es un práctico dispositivo de almacenamiento que puede utilizar para registrar datos. Y es bastante fácil de configurar siempre y cuando conecte con precisión. Además, puede leer y escribir datos cómodamente con este dispositivo.
¿Necesita ayuda para obtener las mejores tarjetas SD Arduino para sus proyectos? No dude en comunicarse.
Tecnología Industrial
- Curva P-F:Qué es y cómo usarla en mantenimiento
- ¿Qué es 6G y qué tan rápido será?
- ¿Qué es la cavitación de la bomba y cómo la evito?
- ¿Qué es el corte por plasma y cómo funciona el corte por plasma?
- ¿Qué es la soldadura? - Tipos y cómo soldar
- ¿Qué es la soldadura fuerte y cómo soldar metal?
- ¿Qué es la soldadura fuerte de cobre y cómo hacerla?
- ¿Qué es MQTT y cómo pueden usarlo las empresas de automatización industrial?
- ¿Qué es Lean Digital y cómo integrarlo?
- Microcontrolador PIC18:qué es y cómo usarlo
- ¿Qué es un designador de referencia y cómo lo usamos en ensamblaje?