ЖК-дисплей и линии передачи данных - PullRequest
2 голосов
/ 06 января 2009

ЖК-дисплеев имеют 4 строки данных. Но данные, которые должны отображаться на ЖК-дисплее, представлены в форме ASCII, которая составляет 7 бит. Как это возможно?

Ответы [ 2 ]

2 голосов
/ 06 января 2009

Я недавно ответил на вопрос другого пользователя ( здесь ), который ссылается на следующий документ: www.cloverlcd.com / pdf / S6A0069.pdf . Вы можете получить представление о том, как это может работать по этой ссылке (по крайней мере, для этого примера).

Многие из этих встраиваемых устройств обычно имеют двухтактный подход к доставке данных в микросхемы. Я видел один пример, где вы выводите два f-nybbles для синхронизации (так как ff является недопустимым 7-битным), а затем вы начинаете процесс вывода nybbles. Пока нет способа генерировать два последовательных f-nybbles, кроме синхронизации, этого легко достичь.

Обычно к устройству также подключаются другие линии от шины, которые позволяют устройству обнаруживать новую запись данных. Это означает, что он обнаружит две одинаковые записи как разные значения. Другими словами, он использует другие сигналы для управления получением данных. Большинство более простых устройств также имеют строгие требования к синхронизации (например, вы должны задерживать не менее N микросекунд после каждой записи).

Кроме того, вы, как правило, отправляете команды, а не просто коды ASCII. Вывод nybble для отображения Hello со смещением 3 на ЖК-дисплее может быть:

f f           ; sync
0             ; clear display (cmd = 0).
1 0 3         ; set cursor (cmd = 1) to offset 3.
2 H e l l o 0 ; output text (cmd = 2) teminated by NULL.

Поскольку к устройству подключены только строки данных от d3 до d0, верхняя часть не имеет значения.

1 голос
/ 06 января 2009

Обычно устройство включается в 8-битном режиме, но команды, необходимые для перевода его в 4-битный режим, игнорируют 4 младших бита.

В 4-битном режиме требуется два символа xfer на символ.

См. это описание

...