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 foi usado pode ser
encontrado na Tato Equipamentos Eletrônicos ou no Aliexpress
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:
0 comentários:
Postar um comentário