Инициализация Дисплея Nokia 1202

4-12-2014, 19:20 От: admin Посмотрели: 370
Добрый день.



Давайте разберёмся с инициализирующей последовательностью дисплея Nokia 1202 (ST).

Исходный материал: http://tuxotronic.or...ent/lcd/ste2007

Ноги дисплея: !RES, !CS, SDA, SCK



Инициализирую, дёргая ноги  контроллера attiny (такт. ч-та 1MHz, питание 3.3V) по следующему алгоритму.



1) Исходное состояние: !RES=1, !CS=1, SDA=0, SCK=0

2) Reset: !RES->0, пауза 0.5сек, !RES->1, пауза 0.5сек

3) Передача инициализирующей последовательности (0xA4, 0x2F, 0xAF, 0xA5)










[font=courier new,courier,monospace]CLI ; запретить прерывания до конца передачи по SPI

MOV R16, URxBYTE ; байт данных (будет сдвигаться)
LDI R18, 0x08 ; счётчик сдвига -> 8
CBI INTERFACE_PORT, CSPIN ; !CS->0
CBI INTERFACE_PORT, SDAPIN ; SDA->0 (!D/C)
SBI INTERFACE_PORT, SCKPIN ; SCK _/- (по + фронту бит передаётся в LCD)

on0xBX_1_TxLoop: ; ЦИКЛ ПЕРЕДАЧИ БАЙТА
CBI INTERFACE_PORT, SCKPIN ; SCK -_
MOV R17, R16
ANDI R17, 0x80 ; берём старший бит данных
BST R17, 7 ; сохраняем в T
IN R19, INTERFACE_PORT
BLD R19, SDAPIN ; T -> SDAPIN
OUT INTERFACE_PORT, R19
LSL R16 ; R16<<1 (байт данных)
DEC R18
SBI INTERFACE_PORT, SCKPIN ; SCK _/-
BRNE on0xBX_1_TxLoop

CBI INTERFACE_PORT, SCKPIN ; SCK -_ (по - фронту выполняется команда в LCD)
SBI INTERFACE_PORT, CSPIN ; !CS->1 (по + фронту !CS вып. команда LCD)

SEI ; разрешить прерывания по окончании передачи SPI

RJMP pRxB_ret ; возвращаемся в точку выхода[/font]




то есть перед началом передачи:



- !CS->0 (активация интерфейса)

- SDA->0 (первый бит=0, обозначает начало команды)

- SCK->1 (по + фронту данные записываются в приёмник дисплея)



в процессе передачи:

- SDA-> очередной бит данных

- SCK ->0, ->1 (формируем тактовый импульс, данные переносятся по + фронту)



после передачи:

- SCK ->0 (в исходное)

- !CS -> 1 (исходное, отключение интерфейса LCD)



И вот. НИКАКОЙ реакции.



Начальные последовательности какие только не пробовал, и с ресетом (0xE2) и без. И в разной последоваетльности крутил разные команды.



Хотя один раз у меня вдруг отобразились все точки (0xa5 сработала таки?) (причём в тот раз у меня тактовые импульсы подавались вообще ~ 1 гц). Потом показал какую-то рябь на экране, и с тех пор всё.



У кого какие мысли? Я уже мозги сломал.





кстати, как тут нормально форматирование сохранить? Табы не сохраняются, пробелы все тоже схлопываются..
Раздел: Периферия и внешние устройства

Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться, либо войти на сайт под своим именем.

Обсудить на форуме


На момент добавления Инициализация Дисплея Nokia 1202 все ссылки были рабочие.
Все публикации статей, книг и журналов, представлены на этом сайте, исключительно для ознакомления,
авторские права на эти публикации принадлежат авторам статей, книг и издательствам журналов!
Подробно тут | Жалоба
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.


Опрос

Ваши предпочтения в TRX


Одинарное преобразование
Двойное преобразование
Прямое преобразование
SDR
Другое
Мне всё равно

Популярные новости
Календарь новостей
«    Май 2024    »
ПнВтСрЧтПтСбВс
 12345
6789101112
13141516171819
20212223242526
2728293031