Nada sigue sin funcionar, tengo un arduin a laso mega y no se si con esta libreria tengo que conectar el SDA y el SCL a los pines 4 y 5 o a los pines 20 y 21, aunque he probado a poner en los dos sitios y sigue sin funcionar. Pondre el ejemplo que le he cargado, lo unico que le he cambiado a sido la direccion que en teoria es la 0x20.
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#define BACKLIGHT_PIN 13
LiquidCrystal_I2C lcd(0x20); // Set the LCD I2C address
//LiquidCrystal_I2C lcd(0x38, BACKLIGHT_PIN, POSITIVE); // Set the LCD I2C address
// Creat a set of new characters
const uint8_t charBitmap[][8] = {
{ 0xc, 0x12, 0x12, 0xc, 0, 0, 0, 0 },
{ 0x6, 0x9, 0x9, 0x6, 0, 0, 0, 0 },
{ 0x0, 0x6, 0x9, 0x9, 0x6, 0, 0, 0x0 },
{ 0x0, 0xc, 0x12, 0x12, 0xc, 0, 0, 0x0 },
{ 0x0, 0x0, 0xc, 0x12, 0x12, 0xc, 0, 0x0 },
{ 0x0, 0x0, 0x6, 0x9, 0x9, 0x6, 0, 0x0 },
{ 0x0, 0x0, 0x0, 0x6, 0x9, 0x9, 0x6, 0x0 },
{ 0x0, 0x0, 0x0, 0xc, 0x12, 0x12, 0xc, 0x0 }
};
void setup()
{
int charBitmapSize = (sizeof(charBitmap ) / sizeof (charBitmap[0]));
// Switch on the backlight
pinMode ( BACKLIGHT_PIN, OUTPUT );
digitalWrite ( BACKLIGHT_PIN, HIGH );
lcd.begin(16,2); // initialize the lcd
for ( int i = 0; i < charBitmapSize; i++ )
{
lcd.createChar ( i, (uint8_t *)charBitmap );
- }*
- lcd.home (); // go home*
- lcd.print("Hello, ARDUINO "); *
- lcd.setCursor ( 0, 1 ); // go to the next line*
- lcd.print (" FORUM - fm ");*
- delay ( 1000 );*
}
void loop()
{
- lcd.home ();*
- // Do a little animation by writing to the same location*
- for ( int i = 0; i < 2; i++ )*
- {*
- for ( int j = 0; j < 16; j++ )*
- {*
- lcd.print (char(random(7)));*
- }*
- lcd.setCursor ( 0, 1 );*
- }*
- delay (200);*
}[/quote]