Grupo de Engenharia e Sistemas Aeroespaciais de Macaé – UFRJ

Com o que podemos te ajudar?
< Todos os tópicos
Imprimir

Leitor de Cartão SD

Fonte:

Montagem Física (Hardware)

Por se tratar de um simples esquema para teste de funcionamento do Módulo SD Card, o esquema de ligação mostra-se extremamente simplificado, porém vale lembrar-se da informação citada anteriormente quanto aos pinos obrigatórios do sistema de comunicação, segue imagem com os pinos do Módulo SD Card:

Se verificarmos nas tabelas de pinos do Arduino, podemos observar que os pinos correspondentes à SCK, MISO, MOSI E CS para o Arduino UNO são respectivamente os pinos 13, 12, 11 e 10 enquanto que no Arduino MEGA, são respectivamente compatíveis com os pinos 52, 50, 51 e 53, veja de um modo mais simplificado através da tabela abaixo:

O Esquema de ligação do Projeto Arduino SD Card  é extremamente simplificado, basta seguir a tabela demonstrada acima e conectar os pinos do Módulo junto a Porta Digital correspondente do Arduino, segue esquema de ligaçãoO:

Quanto ao formato do cartão de memória, testamos com formatos FAT e FAT32, ambos mostraram bom funcionamento, além de trabalhar normalmente com cartões de memória de baixa capacidade de armazenamento e cartões com memórias maiores, como por exemplo, 8GB.

Funcionamento do Programa (Software)

O código para funcionamento do Projeto Arduino SD Card utiliza-se somente de bibliotecas já disponíveis junto ao Arduino durante o processo de instalação do mesmo, como o exemplo da biblioteca SD e SPI, excluindo a necessidade de instalação de novos arquivos e bibliotecas.

Demonstrado de forma simples e com os devidos comentários junto as variáveis principais, o código é de fácil compreensão e utilização, para quem deseja realizar alterações para adaptação em diferentes projetos, basta conhecer cada variável e realizas as devidas alterações, após o código daremos algumas dicas para isto.

// Projeto para Criar / Ler Arquivos .txt junto ao Cartão SD Arduino
// Visite nossa loja através do link www.usinainfo.com.br
// Mais projetos em www.www.usinainfo.com.br/blog/</pre>
#include <SD.h>
#include <SPI.h>
 
File myFile;
 
int pinoSS = 10; // Pin 53 para Mega / Pin 10 para UNO
 
void setup() { // Executado uma vez quando ligado o Arduino
 
Serial.begin(9600); // Define BaundRate
pinMode(pinoSS, OUTPUT); // Declara pinoSS como saída
 
if (SD.begin()) { // Inicializa o SD Card
Serial.println("SD Card pronto para uso."); // Imprime na tela
}
 
else {
Serial.println("Falha na inicialização do SD Card.");
return;
}
 
myFile = SD.open("usina.txt", FILE_WRITE); // Cria / Abre arquivo .txt
 
if (myFile) { // Se o Arquivo abrir imprime:
Serial.println("Escrevendo no Arquivo .txt"); // Imprime na tela
myFile.println("Usinainfo 1, 2 ,3 ..."); // Escreve no Arquivo
myFile.close(); // Fecha o Arquivo após escrever
Serial.println("Terminado."); // Imprime na tela
Serial.println(" ");
}
 
else {     // Se o Arquivo não abrir
Serial.println("Erro ao Abrir Arquivo .txt"); // Imprime na tela
}
 
myFile = SD.open("usina.txt"); // Abre o Arquivo
 
if (myFile) {
Serial.println("Conteúdo do Arquivo:"); // Imprime na tela
 
while (myFile.available()) { // Exibe o conteúdo do Arquivo
Serial.write(myFile.read());
}
 
myFile.close(); // Fecha o Arquivo após ler
}
 
else {
Serial.println("Erro ao Abrir Arquivo .txt"); // Imprime na tela
}
 
}
 
void loop() {
 
// Como a função é executada somente uma vez, esta área permanece em branco
 
}

Inicialmente, caso deseje alterar o Arduino utilizado, ou seja, em vez de um Arduino UNO utilizar um Arduino Mega, a alteração recomendada segundo a tabela de pinos pode ser realizada da seguinte maneira:

1int pinoSS = 10; // Pin 53 para Mega / Pin 10 para UNO

Caso esteja realizando diferentes projetos com um mesmo SD e precisa alterar o nome dos arquivos utilizados, basta alterar o nome elencado abaixo junto a linha 25 do código original, mas vale lembrar que deve manter o final .txt e que não é possível utilizar títulos com muitos caracteres para o nome, aproximadamente cinco somente.

1myFile = SD.open(“usina.txt”, FILE_WRITE); // Cria / Abre arquivo .txt

Como alteramos o nome do arquivo utilizado, será necessário alterar também o nome elencado na linha 40 que é responsável por abrir o arquivo que criamos para realizar a leitura dos dados, veja:

1myFile = SD.open(“usina.txt”); // Abre o Arquivo

Para alterar o texto que é gravado junto ao Micro Cartão SD basta alterar a frase inserida junto ao código na linha 29, pode ser posta qualquer frase, porém vale cuidar também que não é recomendado inserir muitos caracteres nesta etapa e que novas linhas podem ser criadas para suprir a necessidade e agregar maior funcionalidade ao projeto que está desenvolvendo.

1myFile.println(“Usinainfo Teste 1, 2 ,3 …”);

Caso todos estes passos sejam alterados de modo correto, o seu código irá funcionar normalmente e caso tenha somente copiado o código, o mesmo pode ser usado sem nenhum tipo de alteração, segue imagem com um exemplo dos resultados obtidos.

Rolar para cima