//Programa: Teste modulo cartao micro SD Arduino
//Autor: Arduino e Cia
#include <Servo.h>
#include <SPI.h>
#include <SD.h>
//Pino de conexão do pino CS do modulo
const int chipSelect = 10;
int pinoPot = A0;
Servo servo1;
void setup()
{
pinMode(pinoPot, INPUT);
servo1.attach(3);
Serial.begin(9600);
Serial.println("Arduino e Cia - Teste de Modulo cartao micro SD");
Serial.println("Inicializando cartao SD...");
//Inicia a comunicacao com o modulo SD
if (!SD.begin(chipSelect))
{
Serial.println("Falha ao acessar o cartao !");
Serial.println("Verifique o cartao/conexoes e reinicie o Arduino...");
return;
}
Serial.println("Cartao iniciado corretamente !");
Serial.println();
}
void loop()
{
//unsigned long currentMillis = millis();
//Mostra os dados no Serial Monitor
//Serial.print("Valor de tensão do pino A0: ");
int valorPot = analogRead(pinoPot);
//Serial.println(valorPot);
int angulo=map(valorPot,0, 1023, 0, 180);
servo1.write(angulo); //Repassa o ângulo (escreve um valor para o servo)
delay(15); //Delay de 15ms para o servo alcançar a posição
String dados = String(valorPot) + " " + String(angulo);
Serial.println(dados);
//Abre o arquivo datalog.txt
File dataFile = SD.open("datalog.txt", FILE_WRITE);
//Grava as informacoes no arquivo
if (dataFile)
{
//dataFile.print("Valor de tensão do pino A0: ");
dataFile.println(dados);
//Fecha o arquivo
dataFile.close();
}
//Exibe um erro se nao conseguir abrir o arquivo
else
{
Serial.println("Erro ao abrir o arquivo datalog.txt");
}
delay(1000);
}