dilluns, 6 de maig del 2013

Escriure per LCD lectura analògica i posició del servo

Boones!

Us col·loco un codi amb l'explicació al costat que he fet per tal de llegir un valor analògic i fer mou-re un servo en una posició segons la funció map().
El codi del servo és el mateix que el de l'entrada de control de servo motors, però ara afegirem escriure a la pantalla els valors llegits i al que està el servomotor!

El circuit:

El codi:


// incluim les llibreries:
#include <LiquidCrystal.h>
#include <Servo.h>

Servo myservo; //creem un objecte que es digui servo.
int val; //Aquesta dada l'utilitzarem per a indicar els graus al que em de col·locar el servo.
  // inicialitzem la llibreria indicant els pins on hi ha connectat cada cosa
  // i és lcd(RS, E, D4, D5, D6, D7);
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  lcd.begin(16, 2); //configurem la pantalla
 myservo.attach(9); //indiquem a quin pin hi ha connectat el servomotor
}

void loop() {
  lcd.clear(); //primer de tot netejem la pantalla, perque sinò es quedarà l'ultim text escrit al darrere
  lcd.setCursor(0, 0); //com en el loop escriure'm a la segona línia, em de tornar a la primera per a escriure-ho be
  lcd.print("Valor: "); //escrivim el text
  //lcd.setCursor(7, 0); //no fa falta escriure'l, ja que el text de la dada continuarà darrere
  int sensorValue = analogRead(A0); //llegim l'entrada
  lcd.print(sensorValue); //i precedim el text anterior amb el valor        
  val = map(sensorValue, 0, 1023, 0, 179); //indiquem quin angle ha de tenir el servo     
  myservo.write(val); //escrivim l'angle al servo i fem que es mogui
  lcd.setCursor(0,1); //canviem a la segona fila
  lcd.print("Posicio: "); //escrivim "posició :" 
  //lcd.setCursor(9, 1); //no fa falta escriure'l perquè el text del valor s'escriurà darrere de l'últim text
  lcd.print(val); //i el valor en angles de la posició del servo
  delay(200); //en esperem per tornar a fer una lectura del potenciòmetre
}

Al final ens hauria de sortir una cosa així:



Cap comentari:

Publica un comentari a l'entrada