Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: LCD20WG240128A (T6963C)
Форум разработчиков электроники ELECTRONIX.ru > Поставщики компонентов для электроники > Компоненты > Средства индикации
Timofey
Подключил данный дисплей к SAM7x
Инициализирую ноги у контроллера.
Произвожу ресет у дисплея. Пока на ноге RESET ноль, на экране в случайном месте появляется горизонтальная линия.
Перевожу ресет в единицу - линия пропадает.
Далее инициализирую контроллер
CODE

#define OR_MODE ((unsigned char) 0x80)
#define SET_TEXT_HOME_ADDRESS ((unsigned char) 0x40)
#define SET_TEXT_AREA ((unsigned char) 0x41)
#define SET_GRAPHIC_HOME_ADDRESS ((unsigned char) 0x42)
#define SET_GRAPHIC_AREA ((unsigned char) 0x43)
#define TEXT_ON_GRAPHIC_ON ((unsigned char) 0x9C)

Write_Command(OR_MODE);
Write_Command_and_2_byte_data(SET_GRAPHIC_HOME_ADDRESS,0x0000);
Write_Command_and_2_byte_data(SET_GRAPHIC_AREA,0x0028);
Write_Command_and_2_byte_data(SET_TEXT_HOME_ADDRESS,0x1700);
Write_Command_and_2_byte_data(SET_TEXT_AREA,0x0028);
Write_Command(TEXT_ON_GRAPHIC_ON);

Экран чист.
Послыаю текстовые данные на вывод

CODE

#define SET_ADDRESS_POINTER ((unsigned char) 0x24)
#define DATA_WRITE_AND_INCREMENT_ADP ((unsigned char) 0xC0)

Write_Data(0x00);
Write_Data(0x17);
Write_Command(SET_ADDRESS_POINTER);

Write_Data(0x14);
Write_Command(DATA_WRITE_AND_INCREMENT_ADP);
Write_Data(0x15);
Write_Command(DATA_WRITE_AND_INCREMENT_ADP);
Write_Data(0x16);
Write_Command(DATA_WRITE_AND_INCREMENT_ADP);
Write_Data(0x17);
Write_Command(DATA_WRITE_AND_INCREMENT_ADP);

Я так понимаю, что он мне должен вывести 4 символа подряд, но экран чист
Прочитал эту же область памяти, все 4 кода вернулись в том же порядке.

Читаю статус панели = 0xAB
или в бинарном виде 10101011 (старший бит первый)
Но, если читать статус постоянно, старший бит начинает прыгать, то 0, то 1.
Это нормально?

Может что-то не так в инициализации?

з.ы. Выход FS всегда 1
Выход RV - и 0, и 1 пробывал
zltigo
Цитата(Timofey @ Jan 6 2010, 12:23) *
Произвожу ресет у дисплея. Пока на ноге RESET ноль, на экране в случайном месте появляется горизонтальная линия.
Перевожу ресет в единицу - линия пропадает.

Да. Нормально.
Цитата
Может что-то не так в инициализации?

Очевидно. Читать Вашу инициализацию с обилием ничего не говорящих цифр не очень хочется,но контроллер массовый и на форуме
обсуждался неоднократно, в том числе и исходники рабочие в первом приближении выкладывались. Поищите.
Timofey
Искал. Все исходники тоже видел.

Но меня больше всего интересует, почему старший бит прыгает
STA7 - 0=LCD панель выкл.,1=LCD панель вкл.

Инициализация простая (перед всеми операциями статус читаю и проверяю):
Включаем логическое объединение через ИЛИ текста с графикой
Устанавливаем начальный адрес для графики (0000h).
Устанавливаем число байт для одной строки графической информации
Устанавливаем начальный адрес для текста.(1700h)
Устанавливаем число байт для одной строки текстовой информации
включаем текстовый и графический режим.
Если верить даташиту, то в этот момент на экране должен быть мусор, но он чист.

Ладно, буду курить доки и думать-думать-думать ...
АлексейQ
Тимофей, я недавно столкнулся с подобной проблемой, оказалось что неправильно подключил управление контрасности. Я его подключал к среднему выводу переменного резистора, а боковые подключил к 0 и к +5в., а надо было к -10 и к +5, на контрасность надо подавать отрицательное напряжение. После этого сразуже все заработало.
zltigo
Цитата(АлексейQ @ Jan 22 2010, 20:02) *
Тимофей, я недавно столкнулся с подобной проблемой...

Да ну smile.gif. У Автора по сбросу совершенно нормально просматривается линия на экране - контраст ни при чем. Ну и чего там подавать или не подавать зависит от производителя дисплея (наличие а том числе и термокомпенсированных источников не редкость) и типа матрицы.
Timofey
Цитата(АлексейQ @ Jan 22 2010, 22:02) *


Спасибо. Я достал мультиметр и проверил им все напряжения. Действительно был косяк в схеме по питанию. Отдал плату на работу, перепаяли резисторы и все заработало.
АлексейQ
Цитата(zltigo @ Jan 22 2010, 23:55) *
Да ну smile.gif. У Автора по сбросу совершенно нормально просматривается линия на экране - контраст ни при чем. Ну и чего там подавать или не подавать зависит от производителя дисплея (наличие а том числе и термокомпенсированных источников не редкость) и типа матрицы.

у меня тоже была линия, причем очень четкая, это и смутило меня, больше недели искал в чем может быть проблема, и никак не мог подумать на контрастностьsmile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.