From 2725ee35d4fa0d30e176ed2728fee95a64934cda Mon Sep 17 00:00:00 2001 From: Gerhard Sittig Date: Sun, 20 Jan 2019 11:12:17 +0100 Subject: hd44780: move HD44780 dump into the display/ subdirectory --- display/hd44780/README | 51 ++++++++++++++++++++++++++++ display/hd44780/hd44780-reset-init-hello.sr | Bin 0 -> 32163 bytes 2 files changed, 51 insertions(+) create mode 100644 display/hd44780/README create mode 100644 display/hd44780/hd44780-reset-init-hello.sr (limited to 'display') 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 Binary files /dev/null and b/display/hd44780/hd44780-reset-init-hello.sr differ -- cgit v1.2.3-54-g00ecf