Например TDA7294

Форум РадиоКот • Просмотр темы - Работа с ЖКИ на контроллере HD44780 и его аналогах
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт мар 19, 2024 05:12:01

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 2424 ]     ... , , , 111, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Ср июн 14, 2017 11:53:11 
Друг Кота
Аватар пользователя

Карма: 86
Рейтинг сообщений: 1018
Зарегистрирован: Чт апр 11, 2013 11:19:59
Сообщений: 4871
Откуда: Минск
Рейтинг сообщения: 0
Попробовать бы увеличить задержки при работе с дисплеем. Маловероятно, но возможно, параметры дисплея "уплыли" и стали впритык к тому, что в коде. Как вариант, если нет доступа к коду или лень ковырять его - через FUSE-биты замедлить МК в целом и посмотреть на результат.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Ср июн 14, 2017 12:20:26 
Сверлит текстолит когтями
Аватар пользователя

Карма: 15
Рейтинг сообщений: 210
Зарегистрирован: Вт мар 31, 2015 22:56:07
Сообщений: 1272
Откуда: Мы люди простые, живем в лесу, на пенек молимся
Рейтинг сообщения: 0
Сначала надо цепи питания конденсаторами обвязать. А уже потом начинать о таймингах волноваться. У меня стандартные тайминги нормально работают даже с китайскими 1602 по 80 рублей.

_________________
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Ср июн 14, 2017 12:25:12 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2057
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18024
Откуда: Новочеркасск
Рейтинг сообщения: 7
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
WiseLord писал(а):
Попробовать бы увеличить задержки при работе с дисплеем
а ведь я пытался...
так и с ЖКИ. есть метод, который с любым дисплеем, в любых услвиях, гарантированно дает положительный результат - это работа с контролем занятости контроллера ЖКИ. т.е. разработав соответствующую "библиотеку" можно вообще не беспокоиться о том, какой дисплей какие задержки обеспечивает, достаточно удостовериться, что он придерживается принятого протокола обмена. и абсолютно не стоит переживать, 40 мкС у него цикл или 43 или 37 или 98 вдруг. понимаете? раз - и навсегда.

если у вас в программе задержки (независимо от способа их формирования - циклы, таймеры или еще что), то при любых отступлениях от типа ЖКИ, для которого код проверен, вы обязаны удостовериться, что ваши задержки гарантированно более предельных для конкретного типа, без этого вы не можете быть уверены, что код сработает. и даже если вы закладываете 1 мс паузу там, где по даташиту ожидается 40 мкс, это ни от чего вас не спасает - все равно надо проверять даташит, иначе вы не разработчик, а шаляй-валяйщик.

и кому оно надо - лишние телодвижения? ради чего? ради утешения "я крут, потому что делаю не так, как проще"? можно делать по разному, но, имхо, лучше делать именно так, как я описал. не потому, что я описал, а потому что так правда лучше.

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

скушно, бабоньки!


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Ср июн 14, 2017 14:06:39 
Сверлит текстолит когтями
Аватар пользователя

Карма: 15
Рейтинг сообщений: 210
Зарегистрирован: Вт мар 31, 2015 22:56:07
Сообщений: 1272
Откуда: Мы люди простые, живем в лесу, на пенек молимся
Рейтинг сообщения: 0
а ведь я пытался...


Как обрабатываешь ситуацию «дисплей завис»?

_________________
Изображение


Вернуться наверх
 
Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Ср июн 14, 2017 14:15:02 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2057
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18024
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
Как обрабатываешь ситуацию «дисплей завис»?

примерно так же, как "метеорит упал", т.е. никак. но если очень хочется - в чем проблема? ожидание с таймаутом: хотите парить мозг, так на здоровье.

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

скушно, бабоньки!


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Ср июн 14, 2017 15:44:47 
Сверлит текстолит когтями
Аватар пользователя

Карма: 15
Рейтинг сообщений: 210
Зарегистрирован: Вт мар 31, 2015 22:56:07
Сообщений: 1272
Откуда: Мы люди простые, живем в лесу, на пенек молимся
Рейтинг сообщения: 0
Ай маладес...

_________________
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт июл 06, 2017 10:12:38 
Открыл глаза

Зарегистрирован: Ср май 30, 2012 09:24:06
Сообщений: 71
Рейтинг сообщения: 0
Всем доброго времени суток! Товарищи программисты, помогите пожалуйста. Суть проблемы такова. МК Atmega16A, индикатор 16х2 (HD44780) подключенный по 4-х битному интерфейсу. В программе пока ничего особенного. Пока просто организовано меню. Движение по меню кнопками +/-. В самом начале описана глобальная переменная menu, которая меняется в зависимости от нажатий кнопок. А в основном цикле в зависимости от содержимого этой переменной с помощью switch(menu) case: на дисплей выводятся нужные пункты меню. В программе сначала вызывается функция инициализации дисплея, затем вывод на него приветственного сообщения и задержка в 3 секунды. Затем очищаю дисплей послав ему код 0х01 и выжидаю 2 мс для выполнения команды(по даташиту надо 1640 мкс). Все, дисплей очищается и начинается основной цикл программы.
Здесь стоит
switch (menu)
{
case 10: ...............; break;
case 20: ...............; break;
case 30: ...............; break;
}
так же здесь находится функция опроса кнопок, но это не важно. проблема не в этом.
С помощью таймера, каждые 100мс я устанавливаю флажок в некой переменной. Как только этот флажок устанавливается, программа заходит в вышеописанный switch, для того чтобы обновить текст на дисплее и сбрасываю этот флаг. Таким образом обновление дисплея происходит каждые 100мс.
И самое важное. Перед каждым обновлением дисплея, я его очищаю командой 0х01 и ставлю задержку в 2мс для выполнения команды. Но при этом наблюдается мерцание дисплея. Движение по меню работает, все нормально, а дисплей мерцает.
Собственно вопрос: кто как и в какой момент времени очищает дисплей? Что я делаю не так? Может подскажете...
МК работает на частоте 4МГц. Пишу на Си в Atmel Studio 7.0


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт июл 06, 2017 10:31:15 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2057
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18024
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
не надо очищать дисплей. строки меню надо либо выводить с очисткой "справа", либо сделать все по 16 символов, дополнив справа пробелами.
обновлять экран надо только в том случае, если состояние меню изменилось, т.е. было нажатие на кнопки. если состояние не менялось, обновлять не надо. т.е. обновление по таймеру не нужно.

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

скушно, бабоньки!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт июл 06, 2017 10:32:56 
Друг Кота

Карма: 64
Рейтинг сообщений: 963
Зарегистрирован: Пт мар 07, 2008 06:54:43
Сообщений: 4208
Откуда: Ижевск
Рейтинг сообщения: 0
Нужно ли очищать дисплей чтобы обновить индикацию? Полагаю, что нет. Сам никогда не использую команду 0x01, а сразу вывожу образ экрана.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт июл 06, 2017 11:26:06 
Открыл глаза

Зарегистрирован: Ср май 30, 2012 09:24:06
Сообщений: 71
Рейтинг сообщения: 0
Цитата:
обновлять экран надо только в том случае, если состояние меню изменилось, т.е. было нажатие на кнопки. если состояние не менялось, обновлять не надо. т.е. обновление по таймеру не нужно

Спасибо, буду пробовать так.
Цитата:
строки меню надо либо выводить с очисткой "справа"

Это как?
Цитата:
а сразу вывожу образ экрана

То есть это то что имел ввиду уважаемый ARV?
Цитата:
сделать все по 16 символов, дополнив справа пробелами

Извиняюсь если что за глупые вопросы, просто ни разу не имел дело с индикаторами, да и пишу недавно...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт июл 06, 2017 11:51:47 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2057
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18024
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
включите логику.
если на экране было МАМА (остальное - пустое место, т.е. пробелы), а вы вывели (без очистки) ПАПА - будет мерцание? нет, конечно! мерцание есть от того, что на долю секунды слово МАМА исчезло и экран опустел, и вы это видели, а потом на экране новое слово.
стоит убрать очистку - мерцание пропадет.
что же будет, если вместо ПАПА вы решите вывести НА? на экране будет НАМА, потому что НА затирает не все 4 позиции, а только две от старого слова. поэтому в этом случае следует вывести еще и 2 пробела после НА.
логично?
распространяя логику на все случаи жизни, приходим к тому, что я уже сказал: всегда выводить по 16 символов. если симвлоов в строке меньше 16, то дополнять строку пробелами. это можно сделать двумя способами: либо на самом деле все строки уровнять по длине при помощи пробелов, либо написать функцию, которая будет выводить символы строки, пока строка не кончится, а затем выводить пробелы, пока общее количество символов не достигнет 16. это я и назвал "вывод с очисткой справа".

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

скушно, бабоньки!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт июл 06, 2017 11:59:35 
Открыл глаза

Зарегистрирован: Ср май 30, 2012 09:24:06
Сообщений: 71
Рейтинг сообщения: 0
ARV, спасибо огромное за разъяснение. Буду пробовать :))

Добавлено after 2 minutes 39 seconds:
И еще такой вопросик: хватит ли частоты работы 4МГц? Если учесть, что общение с индикатором происходит по 4-х проводной линии.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт июл 06, 2017 12:18:25 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 97
Рейтинг сообщений: 2057
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18024
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
хватит или нет - это уж от ваших задач зависит :) для меню - не то, что хватит, а еще и останется.

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

скушно, бабоньки!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт июл 06, 2017 12:20:21 
Сверлит текстолит когтями
Аватар пользователя

Карма: 15
Рейтинг сообщений: 210
Зарегистрирован: Вт мар 31, 2015 22:56:07
Сообщений: 1272
Откуда: Мы люди простые, живем в лесу, на пенек молимся
Рейтинг сообщения: 0
И еще такой вопросик: хватит ли частоты работы 4МГц? Если учесть, что общение с индикатором происходит по 4-х проводной линии.


Вопрос не совсем корректен: зависит от того, каким кодом заполняются эти временные слоты. Возьми китайский логический анализатор и посмотри, сколько времени на что уходит.

_________________
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт июл 06, 2017 12:54:30 
Открыл глаза

Зарегистрирован: Ср май 30, 2012 09:24:06
Сообщений: 71
Рейтинг сообщения: 0
Ой спасибо всем участвующим. С вашей помощью понял я свои ошибки. Понял в каком направлении действовать нужно :)) Уже часть кода изменил. Вроде работает :) Если что, еще напишу.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Вт июл 11, 2017 15:48:56 
Открыл глаза
Аватар пользователя

Карма: 3
Рейтинг сообщений: 15
Зарегистрирован: Сб фев 13, 2016 21:58:21
Сообщений: 41
Откуда: Волгоград
Рейтинг сообщения: 0
Доброго времени суток! Тоже проблема с экраном Winstar WH2004A-YGH-CT. Если коротко - не работает команда занятия адреса(Set DDRAM Address).
Пару лет назад начинал делать устройство с этим дисплейчиком и забросил, вроде все работало.
Сейчас же делаю новое устройство на новом кристале. Теперь экран просто по порядку(точнее через строчку) заполняется нужным текстом, работают команды включения отключения курсора и подобные, но при попытке занятия адреса - выводит левый символ и пишет дальше со старого места. :kill: Пробовал играться с задержками(до 100-ен миллисекунд) - толку ноль.
При этом при симуляции в Proteus все работает (и работало до всяких манипуляций) корректно.
Прозвонил все цепи - от МК до LCD. На всякий случай подтянул выход R/W.
В режиме отладки через MPlab замерял уровень напряжение на выводе RS - все правильно.(правда в этом режиме даже символ не напечатался)
Контроллер pic16f1937, 32МГц.

Убил пол ночи. виню дисплей(хотя в глубине души понимаю - проблема во мне :oops: )
Изображение

Менял порядок выставления данных в порт и изменения битов RS и R/W. Чередовал эти операции значительными задержками.
Может кто сталкивался с подобными проблемами? Может я не в ту сторону копаю?(

P.S. добавлено 6 часов спустя.
ошибка программная, так что вопрос снимаю. сейчас буду искать, где накосячил, так как при использовании следующей конструкции, все работает
Код:
   bsf E
   movlw   b'11000000'   ;Команда "Команда "Set DDRAM Adresst"
   movwf   LCD_DB      ;с занятием места 40Н
   call strobe
   bcf E
   movlw   .1
   call pause_T      ; задержка не менее 39 мкс


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Вс окт 15, 2017 08:29:02 
Открыл глаза
Аватар пользователя

Зарегистрирован: Пт июн 17, 2011 12:49:59
Сообщений: 56
Рейтинг сообщения: 0
Парни, подскажите есть ли возможность инвертировать символ или надо создавать свой? Рою инет и чета тишина...

_________________
Processor not found! Software emulation ...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Вс окт 15, 2017 08:38:51 
Открыл глаза
Аватар пользователя

Карма: 3
Рейтинг сообщений: 15
Зарегистрирован: Сб фев 13, 2016 21:58:21
Сообщений: 41
Откуда: Волгоград
Рейтинг сообщения: 1
Цитата:
Парни, подскажите есть ли возможность инвертировать символ или надо создавать свой? Рою инет и чета тишина...

Даташита достаточно. был бы это графический дисплей - без проблем. А в символьном - только свои создавать!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Вс окт 15, 2017 08:39:58 
Друг Кота

Карма: 64
Рейтинг сообщений: 963
Зарегистрирован: Пт мар 07, 2008 06:54:43
Сообщений: 4208
Откуда: Ижевск
Рейтинг сообщения: 1
Для HD44780
...надо создавать свой...
или пользоваться командой B довольствуясь таким
Вложение:
HD44780_BLINK.PNG [7.33 KiB]
Скачиваний: 539


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Вс окт 15, 2017 09:23:00 
Открыл глаза
Аватар пользователя

Зарегистрирован: Пт июн 17, 2011 12:49:59
Сообщений: 56
Рейтинг сообщения: 0
спасибо!
А вот еще вопрос на засыпку: возможно ли вывести несколько курсоров? Или подчеркнуть строку?
Ну или подскажите как выделить пункт меню, что он типа выбран. Моргалки (символ->пробел->символ ...) раздражают

_________________
Processor not found! Software emulation ...


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 2424 ]     ... , , , 111, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y