59 #include <avr/pgmspace.h>
77 #define _BV(bit) (1 << (bit))
101 inline static void waitUsec ( uint16_t uSec )
104 delayMicroseconds ( uSec );
118 #define LCD_CLEARDISPLAY 0x01
119 #define LCD_RETURNHOME 0x02
120 #define LCD_ENTRYMODESET 0x04
121 #define LCD_DISPLAYCONTROL 0x08
122 #define LCD_CURSORSHIFT 0x10
123 #define LCD_FUNCTIONSET 0x20
124 #define LCD_SETCGRAMADDR 0x40
125 #define LCD_SETDDRAMADDR 0x80
129 #define LCD_ENTRYRIGHT 0x00
130 #define LCD_ENTRYLEFT 0x02
131 #define LCD_ENTRYSHIFTINCREMENT 0x01
132 #define LCD_ENTRYSHIFTDECREMENT 0x00
136 #define LCD_DISPLAYON 0x04
137 #define LCD_DISPLAYOFF 0x00
138 #define LCD_CURSORON 0x02
139 #define LCD_CURSOROFF 0x00
140 #define LCD_BLINKON 0x01
141 #define LCD_BLINKOFF 0x00
145 #define LCD_DISPLAYMOVE 0x08
146 #define LCD_CURSORMOVE 0x00
147 #define LCD_MOVERIGHT 0x04
148 #define LCD_MOVELEFT 0x00
152 #define LCD_8BITMODE 0x10
153 #define LCD_4BITMODE 0x00
154 #define LCD_2LINE 0x08
155 #define LCD_1LINE 0x00
156 #define LCD_5x10DOTS 0x04
157 #define LCD_5x8DOTS 0x00
173 #define HOME_CLEAR_EXEC 2000
181 #define BACKLIGHT_OFF 0
189 #define BACKLIGHT_ON 255
197 typedef enum { POSITIVE, NEGATIVE } t_backlightPol;
226 virtual void begin(uint8_t cols, uint8_t rows, uint8_t charsize = LCD_5x8DOTS);
412 void createChar(uint8_t location, uint8_t charmap[]);
435 void createChar(uint8_t location,
const char *charmap);
447 void setCursor(uint8_t col, uint8_t row);
531 virtual void write(uint8_t value);
533 virtual size_t write(uint8_t value);
545 uint8_t _displayfunction;
547 uint8_t _displaycontrol;
549 uint8_t _displaymode;
552 t_backlightPol _polarity;
567 void command(uint8_t value);
583 virtual void send(uint8_t value, uint8_t mode) { };
585 virtual void send(uint8_t value, uint8_t mode) = 0;
void createChar(uint8_t location, uint8_t charmap[])
Definition: LCD.cpp:306
void autoscroll()
Definition: LCD.cpp:292
void leftToRight()
Definition: LCD.cpp:265
void backlight(void)
Definition: LCD.cpp:338
void clear()
Definition: LCD.cpp:180
void on(void)
Definition: LCD.cpp:352
void off(void)
Definition: LCD.cpp:360
void noBlink()
Definition: LCD.cpp:241
void scrollDisplayRight()
Definition: LCD.cpp:259
void display()
Definition: LCD.cpp:222
void setCursor(uint8_t col, uint8_t row)
Definition: LCD.cpp:192
virtual void setBacklightPin(uint8_t value, t_backlightPol pol)
Definition: LCD.h:498
void rightToLeft()
Definition: LCD.cpp:272
void noAutoscroll()
Definition: LCD.cpp:299
void home()
Definition: LCD.cpp:186
void blink()
Definition: LCD.cpp:247
virtual void setBacklight(uint8_t value)
Definition: LCD.h:517
void moveCursorRight()
Definition: LCD.cpp:279
LCD()
Definition: LCD.cpp:64
void scrollDisplayLeft()
Definition: LCD.cpp:254
virtual void begin(uint8_t cols, uint8_t rows, uint8_t charsize=LCD_5x8DOTS)
Definition: LCD.cpp:91
void noDisplay()
Definition: LCD.cpp:216
void noBacklight(void)
Definition: LCD.cpp:345
void noCursor()
Definition: LCD.cpp:229
void moveCursorLeft()
Definition: LCD.cpp:285
virtual void write(uint8_t value)
Definition: LCD.cpp:374
void cursor()
Definition: LCD.cpp:234