Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: LCD (KS 0066&HD44780) ???
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
alecsvg
Меня очень интересует, есть ли у других проблемы и запорчиванием
информации при работе с алфавитно-цифровыми дисплеями в 4-x битном
режиме,. Моя проблема в том,что при работе с LCD WH1602
( производство Winstar,контроллер KS0066 or Equivalent-я думаю-и HD44780) возникают по-
мехи в виде крякозяблов из кодовой таблицы контроллера. Возникают
на макете, например при останове программы во время отладки и
включении-выключении осциллогарафа. Также и в действующем устрой-
стве при наводках от судя по всему включении выключении реле, упра-
вляющих электромагнитными клапанами. Зазаемление рамки дисплея уве-
личивает проблемы. Конденсатор,непосредствнно,(0.1 мкф) на питание
существенно не влияет. Подтяжка шины к земле, или питанию не дает
ничего. Добавление управления сигналаов RW (Чтобы когда не надо его
установить на чтение, я думал исключит запись наводок) не дает эффекта.
Решаю программно: каждые 0.5 сек переинициализация ( тоже бывает не
проходит и изображения тогда вообще нет) и отображение нужной информации.
Работает хорошо с еле заметным ( по углом мерцанием). Но это не нравится.
1 Не везде есть возможность выделить память под буфер для LCD.( 4 строки
по 16 символов = 64 байта)
2 Надо таймер задействовать
3.помнить об этом
Ответ если можно продублировать на e-mail alecs_vg@tut.by Трудности на\
работе с i-net.
P.S
1.Описание по работе с LCD на FTP взято с КТЦ-МК "Алфавитно-цифровые
индицирующие ЖК-модули на основе контроллера HD44780" Если у кого нет
доступа к FTP, то найти не сложно.
2.Также УП "Белмикросистемы" описание контроллера KS0066 у них ето IZ0066
http://bms.by/products/russian_2002/specs/IZ0066_r.pdf
описание HD44780 можно найти у меня есть, но сейчас не могу дать ссылку,
нужна перезагрузка. Если надо, вышлю.
3.Процесс инициализации (по описанием этих контроллеров не одинаковый)
Разные тайминги . Но обычно времена ставят по максимуму и все работает.
Очень любопытно узнать ?. Когда работал на ZILOG ENCORE там работал с LCD
и ради красивости увелить время между передачей полубайта,немного.
Глюки пошли страшные. В описаниям нет максимального времени на это дело.
4. Есть на atmel.ru программа Есть HD??? (не помню вроде 44780 и думая все
видели ) по работе с LCD - удобная вещь и исходники приличные по работе LCD
alecs_vg.
Stas
Я тоже столкнулся с подобной проблеммой. У меня WH1602L используется в системе управления приводом. Интерфейс - 8 бит. Интересно то, что при срабатывании любого пускателя (их в системе 4) на дисплей лезут различные символы, но по моим наблюдениям в основном последний записанный символ, при этом управляющий ADuC812 чувствовал себя нормально. Никакие меры не помогли избавится от этого, добавлял емкостей, продумывал заземление, экранировал. Вышел из положения как Вы, лечил полной переинециализацией перед каждым выводом.
alecsvg
Не есть это ГУТ!. Неверно, операции чтения ОЗУ LCD могут здесь помочь.
Переинициализация только при не совпадении данных из ОЗУ процессора и
данных ОЗУ ЖКИ. ( А для чего там вообще нужно чтение, кроме флага занятости, который и при иницилазации читать нельзя ?).
P.S. Спасибо, за ответ. Я, думал в 8-битах ЖКИ нормален , а 4-бит для бедных.
Stas
Это полный неГУТ, читать память LCD я не мог, у меня порт был только на вывод, а вообще с проблеммой слабой устойчивостью LCD к ЭМИ я столкнулся впервые именно на Winstar. Раньше я использовал Hitachi, и ни разу с подобным не сталкивался.
afad
Было именно так.
Чтобы не было мерцаний при переинициализации - уберите команду очистки дисплея (забыл точное ее название) - мерцание пропадет.
Я делаю переинициализацию после каждого нажатия на клавишу, и потом каждые 10 секунд, но можно и другое время.
Stas
А у вас проблемма тоже именно с Winstar WH? Похоже у этой серии помехоустойчивость к ЭМИ вообще никакая. Прописал на Tektronix'e питание, фронты строба, все чисто, но все равно LCD отпадает. Видимо в след. раз буду искать Hitachi или DataVision.
alecsvg
Цитата(Stas @ Dec 25 2004, 11:14)
Это полный неГУТ, читать память LCD я не мог, у меня порт был только на вывод, а вообще с проблеммой слабой устойчивостью LCD к ЭМИ я столкнулся впервые именно на Winstar. Раньше я использовал Hitachi, и ни разу с подобным не сталкивался.
*

Да. У меня только Winstar WH1602 и был.
Очистка дисплея (Clear) дело хорошее. Крякозяблы надо убрать. Памяти раньше на
Zilog не хватало. Буфера в ОЗУ не мог разместить. Что было выведено на дисплей
не знал. Программы работали параллельно через таймер. Поэтому требовалась очис-
тка. И Вывод строки не на весь экран. Без очистки не всегда инициализировался.
1 раз из 100. Мерцание видно только под углом.
Теперь сменил процессор на AtMega16 dip 40. Сразу ушли в небытие работы с
дисплеем и клавиатурная матрица (нужны всего 4 клавиши). Раньше линии были совмещены.
Ввел сигнал RW,буду читать влаг занятости и данные ОЗУ.

У меня вопрос? На панели LCD c обратной стороны есть перемычки и места для пайки
SMD конмпонентов. Часть для подключения подсветки. Ей требуется 4.6 max V (через
резистор 50 Ом моя подсветка жрет 12 ма, но светит по-божески).
А часть перемычек не описана. Там на землю рамку можно посадить и еще что-то.
До конца не разобрался. Может кто-то изучил это вопрос ?
alecsvg
Большое спасибо за ответы.
С Новым годом!
afad
"А у вас проблемма тоже именно с Winstar WH?"

Нет, у меня MT от МЭЛТ. А еще сильно помогает наличие последовательно включенных резисторов 1K по цепям управления (E, A0, WR) и конденсатор между V0 и GND.
RomanM
Уважаемый Форум! Я только что зарегистрировался, нашел эту тему и прочитал ее. Индикаторы, которые я использовал, назывались не так, как указано в теме, а вот вопросы все те же: сбои при наличии помех (магнитные пускатели, клапаны, особенно источники высокого напряжения для искрообразования). При сертификации прибора потребовалось испытать на устойчивость к пробою статическим электричеством, так стреляли прямо в экран напряжением 4...12 кВ! Естественно, после щелчка индикатор был в полном отпаде, пока не отключишь питание, оживать не хотел. При этом ток его потребления возрастал до 30...40 мА, что говорит о полном зависании контроллера. Тогда мы быстро решили проблему, установив перед экраном стекло, что позволило поднять напряжение пробоя до 12 кВ, а этого оказалось достаточно. Но далее оказалось, что помехи от высоковольтного трансформатора розжига котла при неудачном взаимном расположении может напрочь повесить контроллер, а ведь при этом помехи идут только по сети и по воздуху. А вот сотовый телефон, который у меня в кармане, а я рядом со всем этим оборудованием, не реагирует абсолютно!
Неужели единственный медод борьбы с этим - постоянная переинициализация дисплея? Кстати, чтобы выполнить ее, необходимо ли отключать и повторно включать питание? Роман.
Stas
Да нет, я обходился без выключения питания. А в описываемом случае (ток потребления возрастал до 30..40 мА) - похоже на эффект защелкивания в КМОП структуре...
RomanM
Вот-вот, КМОП-то и глючит, токи, наверно, сквозные начинают протекать. А процедура, так сказать, "горячего" перезапуска была стандартная, т. е. описанная в Data Sheets на HD44780 или какая-то другая?
Димыч
Как-то в приборчике, работающем в условиях сильных помех, также именно ЖКИ на этом контроллере был самым уязвимым местом.
Мало что помогало, на экране периодически появлялся мусор...
Пришлось сделать тупую перерисовку экрана раз во сколько-то секунд (образ лежал в памяти)
Stas
Я производил простую программную переинициализацию дисплея, без снятия питания. Потребление при этом не выходило за рамки допустимого... Тут приложил документик, там подробно описывается инициализация, причем много интересного для себя узнал (при инициализации рекиминдуют 3 раза засылать команду разрядности шины..)
RomanM
Инициализацию имеет смысл делать, только если искажена информация в DDRAM индикатора (хотя тогда проще переписать содержимое по-новой) или вместо вывода двух строк выводится одна. В случае же полного зависания с увеличением потребления индикатор перестает вообще реагировать на команды, и тогда только передергивание питания помогает angry.gif
Странно и жалко, что данный контроллер не имеет простого входа RESET!
Stas
Скорее всего, если это в самом деле эффект от защелкивания КМОП то стоит попробовать поставить драйвер порта LCD посолидней (если напрямую с порта однокристалки то поставить буферок помощней типа 74AC541 и т.п.) или попробовать установить супрессоры - но это уже извращение. А если бы контроллер и имел вход RESET, то в Вашем случае похоже это не помогло бы. При защелкивании КМОП только снятие питания и помогает...
m16
excl.gif какую длительность строба Е на жк выдает проц ?
Andy Great
Кстати, подскажите, уважаемые, что значит параметр "1строка/2строки"? Я когда его устанавливаю при переводе в 4бит режим, контроллер вешается (?). Использую BC1602A Bolymin, если не устанавливать этот бит обе строки работают. Да, после сброса процессора без сброса питания тоже вешается - почему? Последовательность входа делаю по мануалу: 4 раза в 8бит, потом в 4 бит.
alecsvg
Цитата(RomanM @ Mar 23 2005, 20:42)
Уважаемый Форум! Я только что зарегистрировался, нашел эту тему и прочитал ее. Индикаторы, которые я использовал, назывались не так, как указано в теме, а вот вопросы все те же: сбои при наличии помех (магнитные пускатели, клапаны, особенно источники высокого напряжения для искрообразования). При сертификации прибора потребовалось испытать на устойчивость к пробою статическим электричеством, так стреляли прямо в экран напряжением 4...12 кВ! Естественно, после щелчка индикатор был в полном отпаде, пока не отключишь питание, оживать не хотел. При этом ток его потребления возрастал до 30...40 мА, что говорит о полном зависании контроллера. Тогда мы быстро решили проблему, установив перед экраном стекло, что позволило поднять напряжение пробоя до 12 кВ, а этого оказалось достаточно. Но далее оказалось, что помехи от высоковольтного трансформатора розжига котла при неудачном взаимном расположении может напрочь повесить контроллер, а ведь при этом помехи идут только по сети и по воздуху. А вот сотовый телефон, который у меня в кармане, а я рядом со всем этим оборудованием, не реагирует абсолютно!
Неужели единственный медод борьбы с этим - постоянная переинициализация дисплея? Кстати, чтобы выполнить ее, необходимо ли отключать и повторно включать питание? Роман.
*

Всё, что знаю по устойчивой работе c
моей панелью LCD WH1602,WH0802:

1. Чтение DDRAM при не совпадении-
перезапись, при повторном не совпадении
переинициализация. Требует еще одной ножки под RW
код для Image Craft или Code Vision могу прислать.
При включении реле и особенно при выключении -
не писать в LCD.
2.Длина шлейфа не более 10 см
3.Кондер на панель по питанию.
4.Рамка панели не заземлена.

Предполагаю:
1.последовательно на шину резисторы на панель
75-100 Ом (1кОм по-моему много)
2.При отказе инициализации отключать и включать питание
LCD. Это и есть его RESET. (требует ещё ногу процессора)


Дополнительные меры:
1. Искрогасящие цепочки на реле параллельно контактам реле,
2. или, если доступно то нагрузке.(0.1мкф на 1а,0.5 Ом на 1 V,
тип кондера искрогасящий,)
варистор тоже не помещает.
3. LCD только расшифровывает информацию о аварии,
т.е. есть ещё, к примеру, светодиод-один на все типы аварии.
4. Рамка панели заземлена через кондер.
5. Помехозащищенные реле с всяким магнитным обдувом контактов,
повышенным расстоянием(, если есть деньги).
BVU
Думаю, что подобные меры (перерисовка экрана, сброс) не совсем удачное решение... особенно при выводе множества быстро изменяющихся параметров непрерывного процесса плюс загруженность процессора другимы задачами по вычислению и обработке прерываний. По всей видимости как и указывалось выше здесь необходим комплексный подход по мере уменьшения электромагнитных и электростатических наводок к порогу чувствительности электронных изделий страдающих низкой помехозащищенностью. В первую очередь это должны быть - цепи питания и земли. Питание в этом случае должно обеспечиваться от импульсного источника (преобразователя). А далее очень большие требования необходимо предьявлять к конструктиву изделия (короткие проводники, защищенные входы CMOS, экранирование и т.д.). Конечно все это заметно удорожает изделие в целом, но если обратить внимание на цены индикаторов у которых помехозащищенность соответствует вашим критериям использования, то их цена окажеться сравнимой (если не больше) с теми материальными затратами, которые придется вложить при использовании 'стандартного' индикатора.
alecsvg
Цитата(BVU @ Oct 6 2005, 11:11)
если обратить внимание на цены индикаторов у которых помехозащищенность соответствует вашим критериям использования, то их цена окажеться сравнимой (если не больше) с теми материальными затратами, которые придется вложить при использовании 'стандартного' индикатора.
*

У нас в Минске Bolymin,Winstar. 2x16, 2x8 Какие во вашему посмотреть,
Правда это будет на заказ, но интересно.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.