summaryrefslogtreecommitdiff
path: root/quantum
diff options
context:
space:
mode:
authorMax Audron <audron@ejected.space>2018-07-15 19:31:45 +0200
committerJack Humbert <jack.humb@gmail.com>2018-07-15 13:31:45 -0400
commitbbea9dadbcc92c4005188860a44c7b9e2479be2e (patch)
tree6771bf1efda890e5747fb48db5ff4b1182051f38 /quantum
parent81756d7b219fc2c869c043ee606d491a1e77e1c1 (diff)
downloadqmk_firmware-bbea9dadbcc92c4005188860a44c7b9e2479be2e.tar.gz
qmk_firmware-bbea9dadbcc92c4005188860a44c7b9e2479be2e.zip
Integrating Peter Fleury's HD44780 LCD library (#3209)
* integrated Peter Fleury's LCD library for HD44780 LCDs * fixed typo * cleanup finished * add documentation * added HD44780 documentation * removed keyboard from .gitmodules * resolved merge conflict * removed edit of kira75s rules.mk made by merge * moved hd44780 to drivers/avr * Added licence info to hd44780 files * Added link to hd44780 docs.
Diffstat (limited to 'quantum')
-rw-r--r--quantum/quantum.c4
-rw-r--r--quantum/quantum.h4
-rw-r--r--quantum/template/avr/config.h28
-rw-r--r--quantum/template/avr/rules.mk1
4 files changed, 37 insertions, 0 deletions
diff --git a/quantum/quantum.c b/quantum/quantum.c
index b9934aee8f..2bd2c71af5 100644
--- a/quantum/quantum.c
+++ b/quantum/quantum.c
@@ -1187,6 +1187,10 @@ void backlight_set(uint8_t level) {}
#endif // backlight
+#ifdef HD44780_ENABLED
+#include "hd44780.h"
+#endif
+
// Functions for spitting out values
//
diff --git a/quantum/quantum.h b/quantum/quantum.h
index 2958a0abd0..2238464124 100644
--- a/quantum/quantum.h
+++ b/quantum/quantum.h
@@ -121,6 +121,10 @@ extern uint32_t default_layer_state;
#include "process_terminal_nop.h"
#endif
+#ifdef HD44780_ENABLE
+ #include "hd44780.h"
+#endif
+
#define STRINGIZE(z) #z
#define ADD_SLASH_X(y) STRINGIZE(\x ## y)
#define SYMBOL_STR(x) ADD_SLASH_X(x)
diff --git a/quantum/template/avr/config.h b/quantum/template/avr/config.h
index e739c93c97..ac31745022 100644
--- a/quantum/template/avr/config.h
+++ b/quantum/template/avr/config.h
@@ -187,4 +187,32 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* override number of MIDI tone keycodes (each octave adds 12 keycodes and allocates 12 bytes) */
//#define MIDI_TONE_KEYCODE_OCTAVES 1
+/*
+ * HD44780 LCD Display Configuration
+ */
+/*
+#define LCD_LINES 2 //< number of visible lines of the display
+#define LCD_DISP_LENGTH 16 //< visibles characters per line of the display
+
+#define LCD_IO_MODE 1 //< 0: memory mapped mode, 1: IO port mode
+
+#if LCD_IO_MODE
+#define LCD_PORT PORTB //< port for the LCD lines
+#define LCD_DATA0_PORT LCD_PORT //< port for 4bit data bit 0
+#define LCD_DATA1_PORT LCD_PORT //< port for 4bit data bit 1
+#define LCD_DATA2_PORT LCD_PORT //< port for 4bit data bit 2
+#define LCD_DATA3_PORT LCD_PORT //< port for 4bit data bit 3
+#define LCD_DATA0_PIN 4 //< pin for 4bit data bit 0
+#define LCD_DATA1_PIN 5 //< pin for 4bit data bit 1
+#define LCD_DATA2_PIN 6 //< pin for 4bit data bit 2
+#define LCD_DATA3_PIN 7 //< pin for 4bit data bit 3
+#define LCD_RS_PORT LCD_PORT //< port for RS line
+#define LCD_RS_PIN 3 //< pin for RS line
+#define LCD_RW_PORT LCD_PORT //< port for RW line
+#define LCD_RW_PIN 2 //< pin for RW line
+#define LCD_E_PORT LCD_PORT //< port for Enable line
+#define LCD_E_PIN 1 //< pin for Enable line
+#endif
+*/
+
#endif
diff --git a/quantum/template/avr/rules.mk b/quantum/template/avr/rules.mk
index 45eb6ee376..d567544c72 100644
--- a/quantum/template/avr/rules.mk
+++ b/quantum/template/avr/rules.mk
@@ -66,3 +66,4 @@ UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
AUDIO_ENABLE = no # Audio output on port C6
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
+HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400)