|
|
@ -33,34 +33,34 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
|
|
* Table 6 (p24) |
|
|
|
* Table 6 (p24) |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
// Clear display
|
|
|
|
// Clear display
|
|
|
|
#define HD44780_CMD_CLEAR_DISPLAY 0x01 |
|
|
|
#define HD44780_CMD_CLEAR_DISPLAY 0x01 |
|
|
|
// Return home
|
|
|
|
// Return home
|
|
|
|
#define HD44780_CMD_RETURN_HOME 0x02 |
|
|
|
#define HD44780_CMD_RETURN_HOME 0x02 |
|
|
|
// Entry mode set
|
|
|
|
// Entry mode set
|
|
|
|
#define HD44780_CMD_ENTRY_MODE 0x04 |
|
|
|
#define HD44780_CMD_ENTRY_MODE 0x04 |
|
|
|
#define HD44780_ENTRY_MODE_INC 0x02 // I/D
|
|
|
|
#define HD44780_ENTRY_MODE_INC 0x02 // I/D
|
|
|
|
#define HD44780_ENTRY_MODE_SHIFT 0x01 // S
|
|
|
|
#define HD44780_ENTRY_MODE_SHIFT 0x01 // S
|
|
|
|
// Display on/off control
|
|
|
|
// Display on/off control
|
|
|
|
#define HD44780_CMD_DISPLAY 0x08 |
|
|
|
#define HD44780_CMD_DISPLAY 0x08 |
|
|
|
#define HD44780_DISPLAY_ON 0x04 // D
|
|
|
|
#define HD44780_DISPLAY_ON 0x04 // D
|
|
|
|
#define HD44780_DISPLAY_CURSOR 0x02 // C
|
|
|
|
#define HD44780_DISPLAY_CURSOR 0x02 // C
|
|
|
|
#define HD44780_DISPLAY_BLINK 0x01 // B
|
|
|
|
#define HD44780_DISPLAY_BLINK 0x01 // B
|
|
|
|
// Cursor or display shift
|
|
|
|
// Cursor or display shift
|
|
|
|
#define HD44780_CMD_MOVE 0x10 |
|
|
|
#define HD44780_CMD_MOVE 0x10 |
|
|
|
#define HD44780_MOVE_DISPLAY 0x08 // S/C
|
|
|
|
#define HD44780_MOVE_DISPLAY 0x08 // S/C
|
|
|
|
#define HD44780_MOVE_RIGHT 0x04 // R/L
|
|
|
|
#define HD44780_MOVE_RIGHT 0x04 // R/L
|
|
|
|
// Function set
|
|
|
|
// Function set
|
|
|
|
#define HD44780_CMD_FUNCTION 0x20 |
|
|
|
#define HD44780_CMD_FUNCTION 0x20 |
|
|
|
#define HD44780_FUNCTION_8_BIT 0x10 // DL
|
|
|
|
#define HD44780_FUNCTION_8_BIT 0x10 // DL
|
|
|
|
#define HD44780_FUNCTION_2_LINES 0x08 // N
|
|
|
|
#define HD44780_FUNCTION_2_LINES 0x08 // N
|
|
|
|
#define HD44780_FUNCTION_5X10_DOTS 0x04 // F
|
|
|
|
#define HD44780_FUNCTION_5X10_DOTS 0x04 // F
|
|
|
|
// Set CGRAM address
|
|
|
|
// Set CGRAM address
|
|
|
|
#define HD44780_CMD_SET_CGRAM_ADDRESS 0x40 |
|
|
|
#define HD44780_CMD_SET_CGRAM_ADDRESS 0x40 |
|
|
|
// Set DDRAM address
|
|
|
|
// Set DDRAM address
|
|
|
|
#define HD44780_CMD_SET_DDRAM_ADDRESS 0x80 |
|
|
|
#define HD44780_CMD_SET_DDRAM_ADDRESS 0x80 |
|
|
|
|
|
|
|
|
|
|
|
// Bitmask for busy flag when reading
|
|
|
|
// Bitmask for busy flag when reading
|
|
|
|
#define HD44780_BUSY_FLAG 0x80 |
|
|
|
#define HD44780_BUSY_FLAG 0x80 |
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* \brief Write a byte to the display. |
|
|
|
* \brief Write a byte to the display. |
|
|
|