****************************************************************************
// Arduino Rotatorio Encoder
#define outputA 6
#define outputB 7
int counter = 0;
int aState;
int aLastState;
void setup() {
Serial.begin();
pinMode (outputA,INPUT);
pinMode (outputB,INPUT);
aLastState = digitalRead(outputA);
}
void loop() {
encoder();
Serial.println(counter);
delay(100);
void encoder() {
aState = digitalRead(outputA);
if (aState != aLastState){
if (digitalRead(outputB) != aState) {counter ++;} else {counter --;}
}
aLastState = aState;
}
****************************************************************************
// Arduino SD Card Tutorial
#include <SD.h>
#include <SPI.h>
File dataFile;// myfile es el nombre que le damos a la SD
int pinCS = 10; // usamos puerto SPI
void setup() {
pinMode(pinCS, OUTPUT);
// SD Card Inicializacion
if (!SD.begin(chipSelect)){
Serial.println("Error al leer la tarjeta.");
return;
}
void escribeSD(){// Create/Open file
// Creamos las variable donde vamos a guardar el valor del potenciometro.
int pot=0;
// Leemos los datos del potenciometro.
pot=analogRead(0);
// Abrimos el fichero donde vamos a guardar los datos (Si no existe se crea
automaticamente).
File dataFile = SD.open("valorpot.txt", FILE_WRITE);
// Si el fichero es correcto escribimos en el.
if (dataFile) {
// Escribimos en el fichero "POT: "
dataFile.print("POT: ");
// A continuacion escribimos el valor de la variable pot y saltamos a la linea
siguiente.
dataFile.println(pot);
// Cerramos el archivo.
dataFile.close();
// Avisamos de que se ha podido escribir correctamente.
Serial.println("impresion correcta");
// Si no pudimos escribir en el fichero avisamos por el puerto serie.
}else{
Serial.println("Error al escribir en valorpot.txt");
}
// Esperamos 5s para tomar la siguiente medida.
delay(5000);
}
void leeSD(){
// Reading the file
dataFile = SD.open("valorpot.txt");
if (dataFile) {
Serial.println("Read:");
// Reading the whole file
while (dataFile.available()) {
Serial.write(dataFile.read());
}
dataFile.close();
}
else {
Serial.println("error opening valorpot.txt");
}
//****************************************************
//Blink una sola linea
//****************************************************
#define LED_PIN 13;
#define BLINK_LED digitalWrite(LED_PIN,millis()%1000 > 500);
void setup(){
pinMode(LED_PIN,OUTPUT);
}
void loop(){
BLINK_LED
}