|
ЖКИ SD1602X |
|
|
|
Dec 8 2008, 06:01
|
Группа: Новичок
Сообщений: 5
Регистрация: 7-12-08
Пользователь №: 42 274

|
имеется эта радость. SD1602X фирмы SUNLIKE. из интерфейсов - только послеовательный, I2C. Как ее правильно адресовать и инициализировать? (адрес на шине, команды) делал по докам на контроллер NT7651, пока - 0 реакции. Тупо горит подсветка, экран пустой. проверьте распиновку заодно(мб в ней косяк) выводы подключал так: 1-земля 2-питальник 3-вроде контрастность, заземлил - сомневаюсь, мб это косяк 4-SDA 5-SCL 6-Enable - подал питание 7-ресет, ничего не подключал все что может сказать про него производитель - во вложении (страничка бумаги, качеством близкой к туалетной. выводы и электрические характеристики)
|
|
|
|
|
 |
Ответов
|
Dec 8 2008, 22:53
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(wingbladeZ @ Dec 8 2008, 08:01)  Как ее правильно адресовать и инициализировать? (адрес на шине, команды)
делал по докам на контроллер NT7651, пока - 0 реакции. Тупо горит подсветка, экран пустой. Второй вопрос противоречит первому. Если дисплей отвечает ACK на запись адреса, то адрес вы знаете. Если он не ответил - то как вы можете в него записать команды? Если не записали команды, то экран и будет пустым. Выкладывайте свой код, телепатия - не самое любимое занятие участников этого форума. Будете выкладывать - не берите пример с Texnik, для оформления исходника используйте кнопку "#" на форме ввода сообщения.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
|
Dec 9 2008, 04:22
|
Группа: Новичок
Сообщений: 5
Регистрация: 7-12-08
Пользователь №: 42 274

|
Цитата(Сергей Борщ @ Dec 9 2008, 01:53)  Второй вопрос противоречит первому. Если дисплей отвечает ACK на запись адреса, то адрес вы знаете. Если он не ответил - то как вы можете в него записать команды? Если не записали команды, то экран и будет пустым. Выкладывайте свой код, телепатия - не самое любимое занятие участников этого форума. Будете выкладывать - не берите пример с Texnik, для оформления исходника используйте кнопку "#" на форме ввода сообщения. где противоречие то? у товарища Texnik работал пример выше. разница с моим была в отсутствии команд, помеченных у него как VALCD VBLCD. добавил. бестолку. соощаю внешние проявления. все. ps неужели если вам дадут чужой асмовый листинг и спросят "где здесь ошибка?" вы будете ее искать? сомневаюсь. ну могу я сюда запостить свою реализацию софтового i2c которую и юзаю, толку от этого будет чуть. pps предвосхищая дальнейшие вопросы - нет, в реализации i2c косяка нет. юзаю ее давно ,всегда работала.
|
|
|
|
|
Dec 9 2008, 13:27
|
Группа: Новичок
Сообщений: 5
Регистрация: 7-12-08
Пользователь №: 42 274

|
окк. поясняю состояние дел. по пунктам.
с адресом и командами похоже разобрались. тот адрес и те команды. я не был уверен что контроллер именно NT7651, благодаря товарищу Технику я в этом убедился.
I2C использую не так чтобы давно, месяца 3. ранее по нему работал с PCF8574 (расширитель порта ввода вывода) и термодатчиками DS.
по пришедшему ACC (NAC)можно судить, принял ли контрллер команду или проигнорил. но прихоит ли ACC мне без отладчика посмотреть затруднительно. могу судить только по внешним проявлениям.
мне теперь кажется проблема всетаки не в командах а в схеме подключения. прокомментируйте распиновку. листок от производителя см выше.
PS если ЖКИ неправильно запитан, ведь не факт что он будет на команды хоть както реагировать? я не прав? хочу всетаки разобраться со схемой его включения. потом поговорим о программе.
|
|
|
|
|
Dec 9 2008, 14:04
|

Гуру
     
Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095

|
Цитата(wingbladeZ @ Dec 9 2008, 15:27)  по пришедшему ACC (NAC)можно судить, принял ли контрллер команду или проигнорил. Сразу после старт-условия вы посылаете адрес. По ACK на этот адрес вы определяете, что контроллер есть и готов принимать команду. Если был NACK - посылать что-либо (команду) нет смысла, вас все равно никто не слушает. Вот по получению этого ACK вы можете зажигать светодиод или отсылать какой-либо символ в UART и наблюдать его в терминале. Никакой отладчик на данном этапе не нужен. Получите ACK - можно думать про команды. По схеме: Судя по документации на контроллер, ваш вход контраста (3) - это замкнутые между собой Vlcd1 и Vlcd2. Сажать их на землю не нужно ни в коем случае. Туда подключается емкость (0.1мкф) и по появлению напряжения порядка 4-9в на этой емкости вы сможете определить, что вам удалось запустить внутренний источник напряжения контраста. Сигнал A (6) - не важно, куда подключите, но такой же уровень должен быть у соответствующегот адресного бита. Сигнал reset(7) - кто вас учил бросать важные выводы в воздухе? В даташите на контроллер нигде не сказано, что эта нога имеет подтягивающий резистор. Посадите ее на землю, а еще лучше - заведите на контроллер и перед инициализацией подавайте на нее единичку на некоторое время. Точного времени в даташите не нашел, думаю 10мс будет с головой. Цитата(wingbladeZ @ Dec 9 2008, 15:27)  PS если ЖКИ неправильно запитан, ведь не факт что он будет на команды хоть както реагировать? я не прав? Если правильно подключены Vcc, Vss, Reset (ну и SDA/SCL), то он должен выдавать ACK.
--------------------
На любой вопрос даю любой ответ"Write code that is guaranteed to work, not code that doesn’t seem to break" ( C++ FAQ)
|
|
|
|
Сообщений в этой теме
wingbladeZ ЖКИ SD1602X Dec 8 2008, 06:01 Texnik В своё время я тестировал их, вот исходничек на бе... Dec 8 2008, 06:21 wingbladeZ 2 Техник: спасибо, в примере разобрался, делал поч... Dec 8 2008, 22:39 dundi Цитата(wingbladeZ @ Dec 8 2008, 09:01) им... Dec 8 2008, 06:40     wingbladeZ Сергей, респектище вам, оно заработало)))
Спасиб... Dec 9 2008, 21:32    rezident Цитата(wingbladeZ @ Dec 9 2008, 18:27) PS... Dec 9 2008, 14:15  Сергей Борщ Цитата(wingbladeZ @ Dec 9 2008, 06:22) ps... Dec 9 2008, 11:31
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|