Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
lcd_2wire.h@0:23e6b8ed8dbd, 2011-12-25 (annotated)
- Committer:
 - elektronaut
 - Date:
 - Sun Dec 25 17:33:53 2011 +0000
 - Revision:
 - 0:23e6b8ed8dbd
 
Who changed what in which revision?
| User | Revision | Line number | New contents of line | 
|---|---|---|---|
| elektronaut | 0:23e6b8ed8dbd | 1 | #ifndef MBED_LCD_2WIRE_H | 
| elektronaut | 0:23e6b8ed8dbd | 2 | #define MBED_LCD_2WIRE_H | 
| elektronaut | 0:23e6b8ed8dbd | 3 | |
| elektronaut | 0:23e6b8ed8dbd | 4 | #include "mbed.h" | 
| elektronaut | 0:23e6b8ed8dbd | 5 | |
| elektronaut | 0:23e6b8ed8dbd | 6 | class lcd_2wire { | 
| elektronaut | 0:23e6b8ed8dbd | 7 | public: | 
| elektronaut | 0:23e6b8ed8dbd | 8 | lcd_2wire(PinName pinc, PinName pind); | 
| elektronaut | 0:23e6b8ed8dbd | 9 | |
| elektronaut | 0:23e6b8ed8dbd | 10 | #define LCD_CMD_MODE 0 | 
| elektronaut | 0:23e6b8ed8dbd | 11 | #define LCD_DATA_MODE 1 | 
| elektronaut | 0:23e6b8ed8dbd | 12 | #define LCD_INIT_MODE 2 | 
| elektronaut | 0:23e6b8ed8dbd | 13 | #define LCD_CLR 1 | 
| elektronaut | 0:23e6b8ed8dbd | 14 | #define LCD_HOME 2 | 
| elektronaut | 0:23e6b8ed8dbd | 15 | #define LCD_DISP_ON 0x0C | 
| elektronaut | 0:23e6b8ed8dbd | 16 | #define LCD_FUNCTION_4BIT_1LINE 0x20 | 
| elektronaut | 0:23e6b8ed8dbd | 17 | #define LCD_FUNCTION_4BIT_2LINE 0x28 | 
| elektronaut | 0:23e6b8ed8dbd | 18 | #define LCD_FUNCTION_8BIT_1LINE 0x30 | 
| elektronaut | 0:23e6b8ed8dbd | 19 | #define LCD_FUNCTION_8BIT_2LINE 0x38 | 
| elektronaut | 0:23e6b8ed8dbd | 20 | #define LCD_COLS 20 | 
| elektronaut | 0:23e6b8ed8dbd | 21 | #define LCD_ROWS 4 | 
| elektronaut | 0:23e6b8ed8dbd | 22 | #define LCD_POWER_UP_DELAY_MS 50 | 
| elektronaut | 0:23e6b8ed8dbd | 23 | #define LCD_INIT_DELAY_MS 5 | 
| elektronaut | 0:23e6b8ed8dbd | 24 | |
| elektronaut | 0:23e6b8ed8dbd | 25 | |
| elektronaut | 0:23e6b8ed8dbd | 26 | void lcd_init(void); | 
| elektronaut | 0:23e6b8ed8dbd | 27 | void lcd_clear(); | 
| elektronaut | 0:23e6b8ed8dbd | 28 | void lcd_home(void); | 
| elektronaut | 0:23e6b8ed8dbd | 29 | void lcd_goto_xy(int xpos, int ypos); | 
| elektronaut | 0:23e6b8ed8dbd | 30 | void lcd_write_char(int chr); | 
| elektronaut | 0:23e6b8ed8dbd | 31 | void lcd_write_char_xy(int x, int y, int chr); | 
| elektronaut | 0:23e6b8ed8dbd | 32 | void lcd_write_str(const char *sp); | 
| elektronaut | 0:23e6b8ed8dbd | 33 | void lcd_write_str_xy(int x,int y,const char *sp); | 
| elektronaut | 0:23e6b8ed8dbd | 34 | |
| elektronaut | 0:23e6b8ed8dbd | 35 | private: | 
| elektronaut | 0:23e6b8ed8dbd | 36 | DigitalOut _pinc; | 
| elektronaut | 0:23e6b8ed8dbd | 37 | DigitalOut _pind; | 
| elektronaut | 0:23e6b8ed8dbd | 38 | void LCD_SET_CLK(); | 
| elektronaut | 0:23e6b8ed8dbd | 39 | void LCD_CLR_CLK(); | 
| elektronaut | 0:23e6b8ed8dbd | 40 | void LCD_SET_DATA(); | 
| elektronaut | 0:23e6b8ed8dbd | 41 | void LCD_CLR_DATA(); | 
| elektronaut | 0:23e6b8ed8dbd | 42 | void lcd_delay(); | 
| elektronaut | 0:23e6b8ed8dbd | 43 | void lcd_init_shift_reg(int mode); | 
| elektronaut | 0:23e6b8ed8dbd | 44 | void lcd_shift_nibble(int data); | 
| elektronaut | 0:23e6b8ed8dbd | 45 | void lcd_shift_byte(int data, int mode); | 
| elektronaut | 0:23e6b8ed8dbd | 46 | void lcd_write_command(int command); | 
| elektronaut | 0:23e6b8ed8dbd | 47 | void lcd_write_data(int data); | 
| elektronaut | 0:23e6b8ed8dbd | 48 | void lcd_function_mode(int function_mode); | 
| elektronaut | 0:23e6b8ed8dbd | 49 | void lcd_display_mode(int display_mode); | 
| elektronaut | 0:23e6b8ed8dbd | 50 | void lcd_entry_mode(int entry_mode); | 
| elektronaut | 0:23e6b8ed8dbd | 51 | }; | 
| elektronaut | 0:23e6b8ed8dbd | 52 | #endif |