Mira este enlace: muy buen tutorial exactamente lo que quieres de LadyAda. Su LCD tiene una bloque de pines al final, la mayoría de los LCD tienen 16 pines en la parte superior con el pin 1 en la parte superior izquierda (mirando desde la parte frontal). Tenga en cuenta que los pines LadyAda se invierten de lo normal, pero si tiene la luz de fondo ordenada, el código de abajo le será de gran ayuda.
También otro tutorial pero sin cableado diagrama
Desde aquí copié esto -
// my pinout from L (LCD pin) to A (Arduino pin):
// LCD pin 1: Vss --> to Arduino GND
// LCD pin 2: Vdd --> to Arduino +5V
// LCD pin 3: V0 (contrast) --> to GND (I chose the PWM pin 10, see below)
// LCD pin 4: RS (register select) --> to Arduino pin 11
// LCD pin 5: R/W- (read/write) --> to Arduino pin 2
// LCD pin 6: E (H/L enable) --> to Arduino pin 3
// LCD pin 7: DB0 (data bit 0) --> to Arduino PIN 4
// LCD pin 8: DB1 (data bit 1) --> to Arduino PIN 5
// LCD pin 9: DB2 --> to Arduino PIN 6
// LCD pin 10: DB3 --> to Arduino PIN 7
// LCD pin 11: DB4 --> to Arduino PIN 14
// LCD pin 12: DB5 --> to Arduino PIN 15
// LCD pin 13: DB6 --> to Arduino PIN 16
// LCD pin 14: DB7 --> to Arduino PIN 17
// LCD pin 15: A/Vee (backlight+) --> to a 4.2Vcc source (see documentation)
// LCD pin 16: K (backlight-) --> to Arduino GND
note que puede ignorar la línea R / W (conéctela a tierra) y usar el modo de 4 bits (con la LCD de 4 bits biblioteca ) desconectando los pin 7, 8, 9 y amp de LCD; 10. Las asignaciones de pines para la biblioteca de 4 bits se mencionan en el código de la biblioteca. El error que cometí inicialmente aquí fue cablear el nibble inferior (DB0 a DB3) en lugar del alto nibble (DB4 a DB7).
// --------- PINS -------------------------------------
//is the RW pin of the LCD under our control? If we're only ever going to write to the LCD, we can use one less microcontroller pin, and just tie the LCD pin to the necessary signal, high or low.
//this stops us sending signals to the RW pin if it isn't being used.
int USING_RW = false;
//RS, RW and Enable can be set to whatever you like
int RS = 4;
int RW = 11;
int Enable = 5;
//DB should be an unseparated group of pins - because of lazy coding in pushNibble()
int DB[] = {6, 7, 8, 9}; //wire these to DB4~7 on LCD.