Seu Curso

  • Full Screen
  • Wide Screen
  • Narrow Screen
  • Increase font size
  • Default font size
  • Decrease font size

Como usar cartões SD com o Arduino

Imprimir
Avaliação do Usuário: / 12
PiorMelhor 

 

 

Talvez esse seja um dos módulos mais fáceis de usar com o Arduino de tão divulgado e explorado.

 

Data logger de todos os tipos possíveis e imagináveis podem ser feitos com ele, fora alguns outros projetos mais incomuns onde a leitura ou a escrita de arquivos estejam envolvidos.

 

Para esse projeto você vai precisar, obviamente, de um módulo para cartões SD, de um cartão SD e de um Arduino. O módulo SD que usarei pode ser encontrado na Tato Equipamentos Eletrônicos.

 

 

 

 

A ligação entre o módulo e o Arduino é simples, mas complica porque a barra de pinos fica ao contrário quando usamos uma protoboard. Mas nada que algumas anotações em um papel não resolva.

 

Bom ligue:

 

O pino GND do módulo a um GND do Arduino;

O pino 3,3V do módulo ao pino 3,3V do Arduino;

O pino CS do módulo ao pino digital 4 do Arduino;

O pino MOSI do módulo ao pino digital 11 do Arduino;

O pino SCK do módulo ao pino digital 13 do Arduino;

O pino MISO do módulo ao pino digital 12 do Arduino;

 

 

 

 

Agora abra o seu ambiente Arduino e abra o exemplo ReadWrite já pronto para a biblioteca do módulo:

 

 

 

 

O código será:

 

/*
 SD card read/write
 
 This example shows how to read and write data to and from an SD card file  
 The circuit:
 * SD card attached to SPI bus as follows:
 ** MOSI - pin 11
 ** MISO - pin 12
 ** CLK - pin 13
 ** CS - pin 4
 
 created   Nov 2010
 by David A. Mellis
 modified 9 Apr 2012
 by Tom Igoe
 
 This example code is in the public domain.
   
 */
 
#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 Leonardo only
 }
 
 
 Serial.print("Initializing SD card...");
 // On the Ethernet Shield, CS is pin 4. It's set as an output by default.
 // Note that even if it's not used as the CS pin, the hardware SS pin 
 // (10 on most Arduino boards, 53 on the Mega) must be left as an output 
 // or the SD library functions will not work. 
 pinMode(10, OUTPUT);
 
 if (!SD.begin(4)) {
 Serial.println("initialization failed!");
 return;
 }
 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("testing 1, 2, 3.");
 // close the file:
 myFile.close();
 Serial.println("done.");
 } else {
 // if the file didn't open, print an error:
 Serial.println("error opening test.txt");
 }
 
 // re-open the file for reading:
 myFile = SD.open("test.txt");
 if (myFile) {
 Serial.println("test.txt:");
 
 // read from the file until there's nothing else in it:
 while (myFile.available()) {
  Serial.write(myFile.read());
 }
 // close the file:
 myFile.close();
 } else {
  // if the file didn't open, print an error:
 Serial.println("error opening test.txt");
 }
}
 
void loop()
{
 // nothing happens after setup
}

 

Esse código traz um excelente exemplo de como gravar e ler arquivos no cartão, sendo que irá criar um arquivo no cartão SD, basta executá-lo e olhar o funcionamento no Serial Monitor:

 

 

 

 

Depois de pronto você pode colocar o cartão em seu computador e usar um editor de textos qualquer para verificar o conteúdo do arquivo:

 

 

 

Adicionar comentário


Código de segurança
Atualizar

You are here: