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:294
void autoscroll()
Definition: LCD.cpp:280
void leftToRight()
Definition: LCD.cpp:253
void backlight(void)
Definition: LCD.cpp:326
void clear()
Definition: LCD.cpp:168
void on(void)
Definition: LCD.cpp:340
void off(void)
Definition: LCD.cpp:348
void noBlink()
Definition: LCD.cpp:229
void scrollDisplayRight()
Definition: LCD.cpp:247
void display()
Definition: LCD.cpp:210
void setCursor(uint8_t col, uint8_t row)
Definition: LCD.cpp:180
void rightToLeft()
Definition: LCD.cpp:260
void noAutoscroll()
Definition: LCD.cpp:287
void home()
Definition: LCD.cpp:174
void blink()
Definition: LCD.cpp:235
virtual void setBacklight(uint8_t value)
Definition: LCD.h:505
void moveCursorRight()
Definition: LCD.cpp:267
LCD()
Definition: LCD.cpp:52
void scrollDisplayLeft()
Definition: LCD.cpp:242
virtual void begin(uint8_t cols, uint8_t rows, uint8_t charsize=LCD_5x8DOTS)
Definition: LCD.cpp:79
void noDisplay()
Definition: LCD.cpp:204
void noBacklight(void)
Definition: LCD.cpp:333
void noCursor()
Definition: LCD.cpp:217
virtual void setBacklightPin(uint8_t value, t_backlighPol pol)
Definition: LCD.h:486
void moveCursorLeft()
Definition: LCD.cpp:273
virtual void write(uint8_t value)
Definition: LCD.cpp:362
void cursor()
Definition: LCD.cpp:222