Buenas a todos.
Estoy empezando con el mundo arduino aunque no venga de nuevo puesto que he trabajado con micros y en lenguaje ensamblador asi que me suenan las cosas y el lcd ya ni te cuento hasta que aprobé el examen...
La cuestion es que tengo un Arduino Uno.
Estoy intentando escribir en la pantalla pero nada parece como si no le llegaran bien los 4 bit DB.
Lo he intentado con los ejhemplos de la web arduino (Hello World)...
Lo he intenado con las libresias Liquidcrystal y LCD4Bit. Pero nada aunque consigo modificar el contraste y demas.. No consigo escribir nada.
Dependiendo del programa cargado se escriben todos los pixeles de la linea superior o de las dos...
Al final he cargado este programa con un led en el pin 13 para ver que se ejecuta bien el programa.
#include <LiquidCrystal.h>
// Connections:
// rs (LCD pin 4) to Arduino pin 12
// rw (LCD pin 5) to Arduino pin 11
// enable (LCD pin 6) to Arduino pin 10
// LED to Arduino pin 13
// LCD pins d4, d5, d6, d7 to Arduino pins 2, 3, 4, 5
LiquidCrystal lcd(12, 11, 10, 2, 3, 4, 5);
void setup()
{
pinMode(13, OUTPUT); //utilizaremos el LED para saber que el programa funciona
lcd.begin(16,2); // columns, rows. use 16,2 for a 16x2 LCD, etc.
// if you have a 4 row LCD, uncomment these lines to write to the bottom rows
// and change the lcd.begin() statement above.
//lcd.setCursor(0,2); // set cursor to column 0, row 2
//lcd.print("Row 3");
//lcd.setCursor(0,3); // set cursor to column 0, row 3
//lcd.print("Row 4");
}
void loop()
{ lcd.clear(); // start with a blank screen
lcd.setCursor(0,0); // set cursor to column 0, row 0 (the first row)
digitalWrite(13, HIGH); //encendemos el LED (luego lo apagaremos)
lcd.print("Hello, World"); // change this text to whatever you like. keep it clean.
delay(3000);
digitalWrite(13, LOW); //encendemos el LED (luego lo apagaremos)
lcd.setCursor(0,1); // set cursor to column 0, row 1
lcd.print("hacktronics.com");
delay(3000);
}
/* ------------------------------------------------------------------------------- */
Y el led si que se enciende y se apaga pero en la pantalla solo se escriben todos los pixeles de la linea superior al hacer lcd.clear . Y luego se borran al apagarse el led.
Se supone que el lcd es este Blue 1602 HD44780 LCD Vease compatible con Hitachi HD44780 driver.
Algo que le pueda hacer... Puede que no sea compatible? Programo algo mal?
Gracias por adelantado.