Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Мерцание ЖКИ WH1602C на Атмега 16
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Kalina
Всем доброго время суток!
Недавно купил ЖКИшку WH1602C, написал под него прогу на асме, но вознилка небольшая проблемка!
Заключается в следующем : при отображении данных на экране наблюдается мерцание, сначала я думал, что не вытягивает мой китайский блок питания (подсветка жрёт около 120 мА), но когда стёр контроллер, оказалось что я ошибался. Пример проги приводить не буду (вряд ли кто будет в ней разбираться smile.gif ) Обновление данных на экране происходит 4 раза в секунду, причём обновляются пару цифр, а мерцает весь экран, неужели это связано с развёрткой? Может кто-то сталкивался с подобным явлением??? Жду совета...
Заранее благодарен!
rezident
Это как раз тот случай, когда скорее всего причина проблемы не в LCD, а в программе. Перед выводом на LCD вы даете команду очистки экрана? Или все же устанавливаете курсор в нужную позицию и делаете вывод с этой позиции?
Как еще один вариант, посмотрите осциллографом не слишиком ли большие пульсации по цепи управления контрастом.
SasaVitebsk
И ещё один вариант. Не установлены ли фузы на 1 МГц вместо 8 к примеру. То есть правильно ли формируются времянки. smile.gif
Kalina
Цитата(rezident @ May 12 2008, 23:47) *
Перед выводом на LCD вы даете команду очистки экрана? Или все же устанавливаете курсор в нужную позицию и делаете вывод с этой позиции?

На данном этапе мне очистка не нужна, её произвожу только при инициализации. Работаю следующим образом : вывожу надпись "VOLTAGE - ", потом циклически (4 раза в секунду) выставляю адресс курсора на область отображения напряжения и меняю показания.

Цитата(rezident @ May 12 2008, 23:47) *
Как еще один вариант, посмотрите осциллографом не слишиком ли большие пульсации по цепи управления контрастом.


Нет не смотрел, но уже подозреваю 07.gif посмотрю скажу!





Цитата(SasaVitebsk @ May 13 2008, 01:02) *
И ещё один вариант. Не установлены ли фузы на 1 МГц вместо 8 к примеру. То есть правильно ли формируются времянки. smile.gif

Фузы как раз на 1 МГц и стоят, но для 1 МГц всё и расчитано smile.gif
rezident
Цитата(Kalina @ May 13 2008, 14:31) *
Работаю следующим образом : вывожу надпись "VOLTAGE - ", потом циклически (4 раза в секунду) выставляю адресс курсора на область отображения напряжения и меняю показания.
При выводе используете нормированные задержки или опрос флага BF?
Kalina
Цитата(rezident @ May 13 2008, 15:02) *
При выводе используете нормированные задержки или опрос флага BF?


Флаг BF я не опрашиваю. Задержку выбираю по 2 мс при : смене строки, установки курсора, смене ригистров RS, DR. Задержка при пересылки данных и тактировании порядка 2-3 мкс.
rezident
Цитата(Kalina @ May 13 2008, 18:17) *
Задержка при пересылки данных и тактировании порядка 2-3 мкс.
"Маловато будет!" (с) wink.gif Посмотрите в даташит. Там меньше 39 мкс задержек вообще нет. Ну и для учета изменения частоты от температуры я бы все задержки вдвое увеличил. Это раз.
Второе. Человеческий глаз конечно частоту 4 Гц распознает, а вот быстродействие мозга при осмыслении информации уже на пределе при этом. Я бы чаще 3 раз в секунду обновления не делал, или даже 2-х раз. Это вполне нормальный темп обновления информации. ИМХО.
ZyBEX
Еще один распространенный момент: при сбое в программе (прерывания, стек) контроллер уходит на перезагрузку. Визуально это как раз может выглядеть как мерцание, ведь после инициализации у вас идет рабочий цикл ?(обычно так и бывает). Чтобы это проверить попробуйте вначале (после инициализации, перед циклом) выводить какой нибудь экран с приветствием и паузой в секунду.
Kuzmi4
2 rezident - а как быть с телевизором - там аж 24 кадра в секунду вроде ??
sad.gif
rezident
Цитата(Kuzmi4 @ May 13 2008, 21:30) *
2 rezident - а как быть с телевизором - там аж 24 кадра в секунду вроде ??
sad.gif
Строчная развертка в ТВ на частоте 15625Гц работает, кадровая на частоте 50Гц, смена полей 25 раз в секунду, но что из этого следует? Формирование растрового (построчного) изображения и смена визуальной информации, предназначенной для пользователя, это несколько разные вещи не находите? wink.gif
Kuzmi4
2 rezident - я вообсче то далёк от всякой визуализации вообсче, но я почему то считал что картинка в телевизоре меняется 24 раз в сек, что в прицнипе сходно с тем что имеем...
Но если вы утвреждаете обратное - не буду спорить, не спецлист в этом вопросе smile.gif
rezident
Цитата(Kuzmi4 @ May 13 2008, 21:53) *
2 rezident - я вообсче то далёк от всякой визуализации вообсче, но я почему то считал что картинка в телевизоре меняется 24 раз в сек, что в прицнипе сходно с тем что имеем...
Но если вы утвреждаете обратное - не буду спорить, не спецлист в этом вопросе smile.gif

Отображаемая картинка в ТВ может быть вообще статической, типа рекламной заставки или настроечной таблицы biggrin.gif
Вы не смешивайте в кучу способ формирования изображения и его визуализацию, т.е. скорость изменения изображения. Можно выводить на экран LCD каждые 10мс время с точностью 1 мс. Только это нафиг не нужно. Потому что нормально восприниматься будут только часы-минуты-секунды. А остальное будет лишь этакой мельтешащей мишурой.
Kuzmi4
2 rezident - сдаюсь
smile3009.gif
Kalina
Цитата(rezident @ May 13 2008, 16:31) *
Посмотрите в даташит. Там меньше 39 мкс задержек вообще нет.

За даташит спасибо, я его не нашёл, прогу писал по статьям с сайтов gaw.ru Atmel.ru. Я немного напутал - при пересылке данных задержка 2-3 мкс только при тактировании Е, а после того как передасться старшая тетрада, задержка составляет 1 мс. При первом запуске ЖКИ , конечно, я напутал времянку, но при этом на экран выводилась чушь! smile.gif

Цитата(ZyBEX @ May 13 2008, 16:45) *
Еще один распространенный момент: при сбое в программе (прерывания, стек) контроллер уходит на перезагрузку. Визуально это как раз может выглядеть как мерцание, ведь после инициализации у вас идет рабочий цикл ?


Да,после инициализации идёт рабочий цикл, но кропотливая отладка в AVR Studio и Proteus исключили данный вариант причины. Сбоев не наблюдалось.

Цитата(rezident @ May 12 2008, 23:47) *
Как еще один вариант, посмотрите осциллографом не слишиком ли большие пульсации по цепи управления контрастом.

Вот где собака порыла smile.gif наконец-то! Пульсации я не нашёл, так как просто нечем посмотреть(дома нет осцилографа). А вот при подключении вместо БП аккумулятора, мерцания как и не было biggrin.gif
Всем спасибо за помощь, тему можна считать закрытой yeah.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.