*
* -->
*
- * \brief Hitachi HD44780 and clones LCD module (interface)
+ * \brief Hitachi HD44780 and clones LCD module.
*
- * \version $Id$
- * \author Bernardo Innocenti <bernie@develer.com>
+ * \author Bernie Innocenti <bernie@codewiz.org>
* \author Stefano Fedrigo <aleph@develer.com>
+ *
+ * $WIZ$ module_name = "lcd_hd44"
+ * $WIZ$ module_depends = "timer"
+ * $WIZ$ module_configuration = "bertos/cfg/cfg_lcd_hd44.h"
+ * $WIZ$ module_hw = "bertos/hw/hw_lcd_hd44.h"
*/
#ifndef DRV_LCD_HD44_H
#define DRV_LCD_HD44_H
-#include <appconfig.h>
+#include "cfg/cfg_lcd_hd44.h"
#include <cfg/compiler.h> /* For stdint types */
/**
- * \name Display dimensions (in chars)
- * \{
+ * \name Values for CONFIG_LCD_ROWS.
+ *
+ * Select the number of rows which are available
+ * on the HD44780 Display.
+ * $WIZ$ lcd_hd44_rows = "LCD_HD44_ROWS_2", "LCD_HD44_ROWS_4"
+ */
+#define LCD_HD44_ROWS_2 2
+#define LCD_HD44_ROWS_4 4
+
+/**
+ * \name Values for CONFIG_LCD_COLS.
+ *
+ * Select the number of columns which are available
+ * on the HD44780 Display.
+ * $WIZ$ lcd_hd44_cols = "LCD_HD44_COLS_16", "LCD_HD44_COLS_20"
*/
-#define LCD_ROWS 2
-#define LCD_COLS 16
-/* \} */
+#define LCD_HD44_COLS_16 16
+#define LCD_HD44_COLS_20 20
/**
* \name Hitachi HD44 commands.
#define LCD_CMD_SETFUNC 0x38 /**< 8 bits, 2 lines, 5x7 dots */
#endif
+#define LCD_CMD_SET8BIT 0x30
#define LCD_CMD_DISPLAY_ON 0x0F /**< Switch on display */
#define LCD_CMD_DISPLAY_OFF 0x08 /**< Switch off display */
#define LCD_CMD_CLEAR 0x01 /**< Clear display */