#include <SPI.h>
#include <SD.h>
#include <Servo.h>
#define cs 4
#define pot A0
Servo myServo;
void setup() {
Serial.begin(9600);
myServo.attach(3);
Serial.println("Initializing SD card...");
if (!SD.begin(cs))
{
Serial.println("Initializing SD card is FAILED!");
}
Serial.println("The SD card is initialized successfully");
}
void loop() {
Serial.println("Getting reading from the potentiometer");
delay(500);
int sensor = analogRead(pot);
int mapped_value = map(sensor,0,1023,0,180);
String myData = String(mapped_value);
File myFile = SD.open("data.txt",FILE_WRITE);
if (myFile)
{
myFile.println(myData);
myFile.close();
Serial.println(myData);
}
else
{
Serial.println("The data.txt doesn't exist");
}
for (int i =3;i>=1;i--)
{
Serial.print("The Servo will take action after ");
Serial.print(i);
Serial.println(" seconds");
delay(1000);
}
myFile = SD.open("data.txt",FILE_READ);
String outData ="";
if(myFile)
{
if (myFile.available())
{
outData = myFile.readStringUntil('\n');
}
myFile.close();
}
else{
Serial.println("There is a problem with data.txt file");
while(1);
}
Serial.print("The outData is ");
Serial.println(outData);
int out = outData.toInt();
myServo.write(out);
}