Custom Chars
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
/*F********************************************************************
* YWROBOT
Compatible with the Arduino IDE 1.0
Library version:1.1
**********************************************************************/
#include
#include
#if defined(ARDUINO) && ARDUINO >= 100
#define printByte(args) write(args);
#else
#define printByte(args) print(args,BYTE);
#endif
uint8_t bell[8] = {0x4,0xe,0xe,0xe,0x1f,0x0,0x4};
uint8_t note[8] = {0x2,0x3,0x2,0xe,0x1e,0xc,0x0};
uint8_t clock[8] = {0x0,0xe,0x15,0x17,0x11,0xe,0x0};
uint8_t heart[8] = {0x0,0xa,0x1f,0x1f,0xe,0x4,0x0};
uint8_t duck[8] = {0x0,0xc,0x1d,0xf,0xf,0x6,0x0};
uint8_t check[8] = {0x0,0x1,0x3,0x16,0x1c,0x8,0x0};
uint8_t cross[8] = {0x0,0x1b,0xe,0x4,0xe,0x1b,0x0};
uint8_t retarrow[8] = { 0x1,0x1,0x5,0x9,0x1f,0x8,0x4};
//************************* DEFINES ************************************
//************************* PROTOTYPES ************************************
void displayKeyCodes( void );
//************************* VARIABLES ************************************
// SET LCD ADDRESS TO 0X27 FOR A 20 CHARS AND 4 LINE DISPLAY
LiquidCrystal_I2C lcd( 0x27, 20, 4);
/*F********************************************************************
*
**********************************************************************/
void
setup()
{
lcd.init(); // initialize the lcd
lcd.backlight();
lcd.createChar(0, bell);
lcd.createChar(1, note);
lcd.createChar(2, clock);
lcd.createChar(3, heart);
lcd.createChar(4, duck);
lcd.createChar(5, check);
lcd.createChar(6, cross);
lcd.createChar(7, retarrow);
lcd.home();
lcd.print("Hello world...");
lcd.setCursor(0, 1);
lcd.print(" i ");
lcd.printByte(3);
lcd.print(" arduinos!");
delay(5000);
displayKeyCodes();
}
/*F********************************************************************
*
**********************************************************************/
void
loop()
{
}
/*F********************************************************************
* display all keycodes
**********************************************************************/
void
displayKeyCodes( void )
{
uint8_t i = 0;
while( 1 )
{
lcd.clear();
lcd.print(."Codes 0x"); lcd.print(i, HEX);
lcd.print(."-0x"); lcd.print(i+15, HEX);
lcd.setCursor(.0, 1);
for( int j =0; j < 16; j++)
lcd.printByte( i + j );
i += 16;
delay( 4000 );
}
}