реклама на сайте
подробности

 
 
> atmega - LCD на порту C, не работает
idono
сообщение Dec 20 2007, 11:02
Сообщение #1


Частый гость
**

Группа: Новичок
Сообщений: 90
Регистрация: 19-12-07
Пользователь №: 33 459



Подключаю простенький LCD 16x2 (на контроллере HD44780) к atmega16, вывожу текст с помощью lcd_putsf() - на портах A B и D работает замечательно.
Но требуется подключить к порту C - при этом на LCD ничего вывести не получается. Сам он запускается нормально (небольшая засветка верхней строки, как на остальных портах если ничего не выводить), но вывод не идет sad.gif
Фьюзы на меге не трогал вообще, все стоит по дефолту. В чем загвоздка? wacko.gif


add:
Отмена тревоги smile.gif Наткнулся на описание похожей проблемы - надо было выключить JTAG (по дефолту он включен)

Сообщение отредактировал idono - Dec 20 2007, 11:02
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
aspID
сообщение Mar 21 2008, 05:16
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 343
Регистрация: 24-01-07
Из: Новосибирск
Пользователь №: 24 714



Раз уж такая петрушка, отпишусь и я по LCD в этой ветке...

Начал эксперименты ставить, использую мегу8, для генерации 8битного кода использую регистр 4094, схема подключения практически то, что указано на схеме 3 здесь: http://www.caxapa.ru/sch/lcd3v.html

Использовал дисплей 16x1, если конкретно по имени - то Winstar WH1601A-YGH-CTK даташит его скурил почти в пепел - но информации в нем недостаточно. Так, например, пришлось методом проб и ошибок добиваться заполнения всех 16 символов. При его разработке технология такова, что чип управляет только 8 символами. И чтобы отобразить строку из 16 символов приходится устанавливать ему режим ДВУХСТРОЧНОГО, причем, продолжение первой строки (9 символ) необходимо помещать в адрес DDRAM 0x40 (вопреки логичному, казалось бы, 0x28).

Что осталось из неразрешенного:
Зачем данному дисплею память на 80 символов, если отображаются только 16? Я не смог найти способ "сдвинуть" строчку. Кто знает - подскажите, пожалуйста! И еще вопрос - при сдвигании этой самой строчки - как будет происходить сдвигание по экрану - ведь вторая половина строки - уже другая "подстрока"? По-моему, проще генерировать именно 16 символьное отображение, которое выводить на экран sad.gif
Также, подозреваю, что не совсем правильно вгонять экран в 2-строчный режим. Но в 1-строчном режиме издевался даже так, что всю строку пытался забить символами, но на экране все равно светятся только 8...

Еще интересно было бы разобраться с LCD-эмулятором AVR Studio. Что за файлик ему необходимо подсовывать и как с этим работать?

Библиотечку для IAR для работы с LCD, похоже, придется создать свою...

P.S. Еще было бы интересно, кто каким образом организует таблицу перекодировки русских символов...
P.P.S.: может, уважаемые модераторы изменят заголовок темы и здесь будем обсуждать все про LCD?

Сообщение отредактировал aspID - Mar 21 2008, 07:30
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 15:06
Рейтинг@Mail.ru


Страница сгенерированна за 0.01609 секунд с 7
ELECTRONIX ©2004-2016