summaryrefslogtreecommitdiff
path: root/display
diff options
context:
space:
mode:
authorGerhard Sittig <gerhard.sittig@gmx.net>2019-01-20 11:12:17 +0100
committerGerhard Sittig <gerhard.sittig@gmx.net>2019-01-20 11:12:17 +0100
commit2725ee35d4fa0d30e176ed2728fee95a64934cda (patch)
tree1edc91e5670048c3649b0eb5cb4327800b9c484a /display
parent226e72ccfbeed40715c0ae5e1b75e80af174e53a (diff)
downloadsigrok-dumps-2725ee35d4fa0d30e176ed2728fee95a64934cda.tar.gz
sigrok-dumps-2725ee35d4fa0d30e176ed2728fee95a64934cda.zip
hd44780: move HD44780 dump into the display/ subdirectory
Diffstat (limited to 'display')
-rw-r--r--display/hd44780/README51
-rw-r--r--display/hd44780/hd44780-reset-init-hello.srbin0 -> 32163 bytes
2 files changed, 51 insertions, 0 deletions
diff --git a/display/hd44780/README b/display/hd44780/README
new file mode 100644
index 0000000..9dc2e29
--- /dev/null
+++ b/display/hd44780/README
@@ -0,0 +1,51 @@
+-------------------------------------------------------------------------------
+Hitachi HD44780 display controller, 4-bit mode, initialization sequence
+-------------------------------------------------------------------------------
+
+This capture contains the initialization sequence of an Hitachi HD44780
+display controller which is very popular for 2x16, 4x20, and similar
+character oriented display modules.
+
+The specific hardware setup that got recorded uses 4-bit mode, which
+means that data gets communicated on lined D4-D7 only, and D0-D3 are
+not connected.
+
+
+Logic analyzer setup
+--------------------
+
+The capture was taken with an ASIX Sigma2 logic analyzer, sampling 8
+logic channels at a rate of 50MHz:
+
+ Probe HD44780
+ -------------------
+ 1 IR (infrared remote control, idle, not HD44780 related)
+ 2 RS (selects "commands" and "display data" mode)
+ 3 RW (read/write, always low for write, fixed in HW)
+ 4 E (enable, falling edge clocks data transfers)
+ 5 D4 (data lines ...)
+ 6 D5
+ 7 D6
+ 8 D7
+
+
+Data
+----
+
+See https://en.wikipedia.org/wiki/Hitachi_HD44780_LCD_controller for a
+list of display controller commands, and especially the 'Mode Selection'
+section which discusses the synchronization phase.
+
+The sequence demonstrates the following steps:
+- Synchronize to the LCD controller, cope with it being in any arbitrary
+ state from previous execution.
+- Configure the LCD controller hardware to 4-bit mode, clear the screen
+ and setup other parameters.
+- Print two text labels: "Hello LCD" and "counter", start printing
+ counter values.
+
+When a dedicated HD44780 decoder is not available, the 'parallel' decoder
+can extract the most basic information: Clock on E (falling edge), D4-D7
+of the display corresponds to D0-D3 of the decoder (D4-D7 of the decoder
+are not connected). Words consist of 8 bits (span 2 bus cycles), and are
+in big endian format.
diff --git a/display/hd44780/hd44780-reset-init-hello.sr b/display/hd44780/hd44780-reset-init-hello.sr
new file mode 100644
index 0000000..fd503f5
--- /dev/null
+++ b/display/hd44780/hd44780-reset-init-hello.sr
Binary files differ