47 #include <avr/pgmspace.h>
65 #define _BV(bit) (1 << (bit))
89 inline static void waitUsec ( uint16_t uSec )
92 delayMicroseconds ( uSec );
106 #define LCD_CLEARDISPLAY 0x01
107 #define LCD_RETURNHOME 0x02
108 #define LCD_ENTRYMODESET 0x04
109 #define LCD_DISPLAYCONTROL 0x08
110 #define LCD_CURSORSHIFT 0x10
111 #define LCD_FUNCTIONSET 0x20
112 #define LCD_SETCGRAMADDR 0x40
113 #define LCD_SETDDRAMADDR 0x80
117 #define LCD_ENTRYRIGHT 0x00
118 #define LCD_ENTRYLEFT 0x02
119 #define LCD_ENTRYSHIFTINCREMENT 0x01
120 #define LCD_ENTRYSHIFTDECREMENT 0x00
124 #define LCD_DISPLAYON 0x04
125 #define LCD_DISPLAYOFF 0x00
126 #define LCD_CURSORON 0x02
127 #define LCD_CURSOROFF 0x00
128 #define LCD_BLINKON 0x01
129 #define LCD_BLINKOFF 0x00
133 #define LCD_DISPLAYMOVE 0x08
134 #define LCD_CURSORMOVE 0x00
135 #define LCD_MOVERIGHT 0x04
136 #define LCD_MOVELEFT 0x00
140 #define LCD_8BITMODE 0x10
141 #define LCD_4BITMODE 0x00
142 #define LCD_2LINE 0x08
143 #define LCD_1LINE 0x00
144 #define LCD_5x10DOTS 0x04
145 #define LCD_5x8DOTS 0x00
161 #define HOME_CLEAR_EXEC 2000
169 #define BACKLIGHT_OFF 0
177 #define BACKLIGHT_ON 255
185 typedef enum { POSITIVE, NEGATIVE } t_backlighPol;
214 virtual void begin(uint8_t cols, uint8_t rows, uint8_t charsize = LCD_5x8DOTS);
400 void createChar(uint8_t location, uint8_t charmap[]);
423 void createChar(uint8_t location,
const char *charmap);
435 void setCursor(uint8_t col, uint8_t row);
519 virtual void write(uint8_t value);
521 virtual size_t write(uint8_t value);
533 uint8_t _displayfunction;
535 uint8_t _displaycontrol;
537 uint8_t _displaymode;
540 t_backlighPol _polarity;
555 void command(uint8_t value);
571 virtual void send(uint8_t value, uint8_t mode) { };
573 virtual void send(uint8_t value, uint8_t mode) = 0;
void createChar(uint8_t location, uint8_t charmap[])
Definition: LCD.cpp:292
void autoscroll()
Definition: LCD.cpp:278
void leftToRight()
Definition: LCD.cpp:251
void backlight(void)
Definition: LCD.cpp:324
void clear()
Definition: LCD.cpp:166
void on(void)
Definition: LCD.cpp:338
void off(void)
Definition: LCD.cpp:346
void noBlink()
Definition: LCD.cpp:227
void scrollDisplayRight()
Definition: LCD.cpp:245
void display()
Definition: LCD.cpp:208
void setCursor(uint8_t col, uint8_t row)
Definition: LCD.cpp:178
void rightToLeft()
Definition: LCD.cpp:258
void noAutoscroll()
Definition: LCD.cpp:285
void home()
Definition: LCD.cpp:172
void blink()
Definition: LCD.cpp:233
virtual void setBacklight(uint8_t value)
Definition: LCD.h:505
void moveCursorRight()
Definition: LCD.cpp:265
LCD()
Definition: LCD.cpp:50
void scrollDisplayLeft()
Definition: LCD.cpp:240
virtual void begin(uint8_t cols, uint8_t rows, uint8_t charsize=LCD_5x8DOTS)
Definition: LCD.cpp:77
void noDisplay()
Definition: LCD.cpp:202
void noBacklight(void)
Definition: LCD.cpp:331
void noCursor()
Definition: LCD.cpp:215
virtual void setBacklightPin(uint8_t value, t_backlighPol pol)
Definition: LCD.h:486
void moveCursorLeft()
Definition: LCD.cpp:271
virtual void write(uint8_t value)
Definition: LCD.cpp:360
void cursor()
Definition: LCD.cpp:220