Работа с ЖКИ на контроллере HD44780 и его аналогах

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Аlex »

igorka писал(а):но перед этим проверить в протеусе.
Для чего, если он у Вас есть в наличии ?
Последнее время пошла какая-то протеусомания, ему уже начинают доверять больше, чем железу :facepalm: А потом бегут на форум со словами "В протеусе работает, а в железе нет. Помогите !" :cry:
Аватара пользователя
Albert_V
Друг Кота
Сообщения: 4119
Зарегистрирован: Чт сен 12, 2013 00:54:12
Откуда: ЗаМКАДье. Там, где ЦУП

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Albert_V »

Аlex, Не удивлюсь, если скоро начнут приготовление шашлыка моделировать в симуляторах. :)))
----------
igorka, несколько страниц назад СКАЗОЧНИК выкладывал свои библиотеки со схемой.
igorka
Грызет канифоль
Сообщения: 260
Зарегистрирован: Вс ноя 13, 2011 11:21:23
Откуда: Горловка.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение igorka »

Alexeyslav писал(а):Внимательно прочитай, что там на 7-й странице написано?
Ну в целом то я понимаю что там написано, распиновка и внутренняя блок-схема.На этом контроллере в протеусе нет модели дисплея :cry:
Аlex писал(а):
igorka писал(а):но перед этим проверить в протеусе.
Для чего, если он у Вас есть в наличии ?
Последнее время пошла какая-то протеусомания, ему уже начинают доверять больше, чем железу :facepalm:

Мне понятна Ваша ирония, но, я такой программист :oops: :roll: , что это пока догма для меня.
А если по делу, каким макаром посоветовали бы проверить?
Оговорюсь, до этого с ЖК дисплеями опыта общение не имел никакого :dont_know:
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Аlex »

igorka писал(а):но, я такой программист :oops: :roll: , что это пока догма для меня
Тогда для Вас не должно быть разницы, на чём проверять. По этому, проверяйте сразу на железе, т.к. на нём по-любому заработает если сделаете всё правильно. А в протесе - не факт.
Аватара пользователя
Albert_V
Друг Кота
Сообщения: 4119
Зарегистрирован: Чт сен 12, 2013 00:54:12
Откуда: ЗаМКАДье. Там, где ЦУП

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Albert_V »

igorka, ответьте на вопрос:
Зачем нужен протеус, когда требуется проверить реальный индикатор?
Если нужны библиотеки и схемы - в этой ветке форума они есть.
----
P.S.
Есть даже готовые тестовые программы со схемами......
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Alexeyslav »

Насколько я знаю, в протеусе все индикаторы реализованы именно на этом контроллере. Только у них в зависимости от количества строк/столбцов адреса начала строк разные.
igorka
Грызет канифоль
Сообщения: 260
Зарегистрирован: Вс ноя 13, 2011 11:21:23
Откуда: Горловка.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение igorka »

Albert_V писал(а):igorka, ответьте на вопрос:
Зачем нужен протеус, когда требуется проверить реальный индикатор?
Если нужны библиотеки и схемы - в этой ветке форума они есть.
----
P.S.
Есть даже готовые тестовые программы со схемами......

В принципе, Вы сами на свой вопрос и ответили....
Писал ранее, слабенький из меня программист, вот и хотел перепроверить в протезе.
На вскидку не подскажите страницу с тестовыми программами?
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Аlex »

igorka, для какого МК собрались писать программу и на каком компиляторе ?
igorka
Грызет канифоль
Сообщения: 260
Зарегистрирован: Вс ноя 13, 2011 11:21:23
Откуда: Горловка.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение igorka »

Аlex писал(а):igorka, для какого МК собрались писать программу и на каком компиляторе ?

Attiny2313, Flowcode.
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Аlex »

igorka писал(а):Flowcode.
Тут и программистом то не нужно быть никаким. Всё делается мышкой :)
Не понятно, в чем проблема попробовать на реальном дисплее ...
Пока_без_кота
Потрогал лапой паяльник
Сообщения: 359
Зарегистрирован: Чт авг 08, 2013 01:06:54

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Пока_без_кота »

Albert_V писал(а):В программе, после <INITIALIZATION COMPLETE>, есть команда Display ON ???

Естественно. Причем пробовал и по своему, сразу задавать что дисплей включен, а не сперва выключать, а потом отдельно включать. На ноунейме прекрасно и так работает.
Rtmip
Держит паяльник хвостом
Сообщения: 963
Зарегистрирован: Чт апр 03, 2014 23:16:55
Откуда: Россия

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Rtmip »

Пока_без_кота писал(а):...Самотестирование вроде проходит (первых 8 символов становяться полнокотрастными при подключении питания), при попытке что-нибудь вывести на него, вся строка становиться контрастной, то есть вроде как реагирует на команды. Но ничего не выводит...
Может контраст уменьшить, просто не видно ничего? :idea:
amd9800
Опытный кот
Сообщения: 822
Зарегистрирован: Вс июн 02, 2013 12:23:03

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение amd9800 »

Добрый день

Написал небольшую программу и рисую символы на дисплее 1602А
На реальном дисплее работает все отлично
А в протеусе в начале все хорошо, а спустя время начинаются баги - видно как появляются каракули во второй строки, а потом курсор со второй строки перескакивает в первую и там опять каракули.
Хотя программа рисует один раз нужную графику.
И потом все изменения происходят во второй строки.
Сейчас сам пытаюсь найти причины. Понимаю что на форуме не экстрасенсы и без кода трудно что то сказать, но код расположен в нескольких файлах, да и вряд ли длинный код кто то будет сидеть и втыкать в нем. А пока я пытаюсь сам понять куда копать.
Смотрю в настройках дисплея в протеусе
{MODDLL=LCDALPHA}
{PRIMITIVE=DIGITAL,LCD}
{NUMCOLS=16}
{NUMROWS=2}
{CLOCK=250kHz}
{ROW1=80-8F}
{ROW2=C0-CF}
{TRACE=1}
{PACKAGE=LCD 2X16}


и смотрю на строки
{ROW1=80-8F}
{ROW2=C0-CF}

вроде у первой строки адресация с 0 по 0x7F
а у второй с 0x40
почему в протеусе все не так не могу понять или это надо понимать как то иначе?
Аватара пользователя
Gudd-Head
Друг Кота
Сообщения: 20092
Зарегистрирован: Чт сен 18, 2008 12:27:21
Откуда: Столица Мира Санкт-Петербург

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Gudd-Head »

Если в реале всё работает нормально — не парьтесь.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Alexeyslav
Друг Кота
Сообщения: 4550
Зарегистрирован: Чт май 05, 2011 21:26:34
Откуда: Украина, Славутич
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Alexeyslav »

Сам индикатор в протеусе это исполняемый код, который не лишен недостатков... области памяти этого кода перекрывают друг друга и пошло-поехало. Короче, это проблемы самой модели индикатора а не его настроек. Возьмешь другую версию протеуса или другую версию модели индикатора и всё будет совсем по другому.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение WiseLord »

amd9800:
Сталкивался с тем, что после "русификации" дисплея в протеусе он начинает криво работать с пользовательскими символами. Вы, часом, не пытались подменить библиотеку на "русифицированную"? Если так, то дело в этом.
amd9800
Опытный кот
Сообщения: 822
Зарегистрирован: Вс июн 02, 2013 12:23:03

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение amd9800 »

WiseLord писал(а):amd9800: Сталкивался с тем, что после "русификации" дисплея в протеусе...

Версия протеуса 7.10 SP0 - чистая
Русификацию не устанавливал, хотя и была в архиве с программой. По причине как раз новых неизведанных глюков ибо протеус и так вещь совсем "не глючная".
Но дисплеем управляю не на прямую его ножками а через регистр 595 с помощью порта SPI
Схема и в реале и в протеусе абсолютно одинаковая. Частоты МК, все один в один.
Иногда приходит мысль что проблема может крыться в в переключениях ножках 595 регистра. Например какаята неправильная задержка в протеусе в отличие от реальности.

кажись отловил баг - но пока не могу его объяснить.

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

Все теперь работает замечательно и в протеусе.
Только вот не понимаю почему в протеусе глючило, а в реале нет.

Не успел порадоваться опять в протеусе глюк появился только теперь через длительное время


СпойлерИзображение
amd9800
Опытный кот
Сообщения: 822
Зарегистрирован: Вс июн 02, 2013 12:23:03

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение amd9800 »

Сделал еще тесты - если обновляю регистр 595 - 80 раз в секунду глюки после нескольких часов прокрутки не появлялись
сейчас тестирую 200 раз в секунду
когда было примерно 300 раз тогда появлялись артефакты через длительное время
Аватара пользователя
Albert_V
Друг Кота
Сообщения: 4119
Зарегистрирован: Чт сен 12, 2013 00:54:12
Откуда: ЗаМКАДье. Там, где ЦУП

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение Albert_V »

amd9800 писал(а):...дисплеем управляю не на прямую его ножками а через регистр 595 с помощью порта SPI....

Если не сложно, поясните для чего у вас (по схеме) вывод :12 74HC595 (загрузка данных в выходной регистр) подключен к некоему резистивному делителю с кнопками?
amd9800
Опытный кот
Сообщения: 822
Зарегистрирован: Вс июн 02, 2013 12:23:03

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Сообщение amd9800 »

Это аналоговая клавиатура.
Например 5 пин с штекера подключаем к ножке МК которая имеет вход также на АЦП.
В обычном режиме кнопка настроена на выход. После передачи всех данных в регистр мы дергаем ее и на ножках регистра появляются новые данные.

Периодически ножку переводим на ВХОД и даем команду АЦП померить напряжение на ножке исходя из напряжения считаем какая кнопка нажата или комбинация кнопок.
Но идет проверка регистра DDR и если ножка настроена на вход - передача данных не происходит.
А в прерывание АЦП ножка МК переводится обратно на выход.
Таким образом я сэкономил еще одну ножку МК и один провод.
Ответить

Вернуться в «Периферия»