Перейти к содержанию
    

отображается только по 8 символов

Приветствую Вас!

В общем проблема в том, что на MTC-S16202.. отображается только по 8 символов при прошивке на реальном мк. Для подключения задействую PORTC 4-битную шину. Уже пробовал 3 разных библиотеки из сети, пишу в avr-gcc avrstudio. В протеусе все отлично, а при прошивке ну нивкакую!!

Может кто сталкивался с такой проблемой?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы хоть бы сказали, какой конкретно у вас МК, а то приходится гадать на кофейной гуще.

Но раз вы сами такую ситуацию спровоцировали, то и я вам отвечу в том же духе:

У вашего ATmega162 старшие 4 бита заняты под JTAG, и пока вы в фузах от JTAG'а не откажетесь, эти биты работать на вывод не станут. Оттого и ваш дисплей не работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что-то мне вспоминается, что эти экраны при кривой инициализации считают себя 8-символьными (а вот протеус такие тонкости может не воспроизводить). По-моему Вам следует пристальней изучить последовательность инициализации Вашего экрана (и ещё перенести тему в раздел для начинающих - это ведь классика :) )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

"По восемь символов" ? Я правильно понимаю, что это 8 символов в первой и 8 во второй строках ? Такое может быть, если код написан под однострочный 16-символьный индикатор, в этом случае адрес второй половины строки как раз и соответствует адресу второй строки для двухстрочных индикаторов.

А если не "по восемь", а "только восемь" - это больше похоже на ошибку инициализации (при этом и символы более темные, другие настройки развертки).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Уже пробовал 3 разных библиотеки из сети

а эту пробовали? Иначе -

старшие 4 бита заняты под JTAG, и пока вы в фузах от JTAG'а не откажетесь, эти биты работать на вывод не станут.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пользую ATmega16. С фьюзами жтага все нормально, хотя Вы отчасти и правильно догадались насчет них. Первый раз я про них не подумал при прошивке. НО в этом случае в принципе инициализация не проходит! В каждой строке по 8 черных прямоугольников (lcd 16х2). После их разлочки по 8 симоволов в каждой строке.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а эту пробовали?

 

Пробовал ((: И эта не пашет. Выводит в 2-х строках: 12345678 и усё.

 

Короче lcd рабочий. Раньше я помню на нем работал с 8-битной шиной данных точно! Вот не помню насчет 4-битной, вроде тоже куда-то подключал.

Блин, не охота 8-бит использовать, чувствую придется..

 

Тем не менее Всем спасибо!

Тупо поменял на какой-то 16230 S1FRLY/R (правда у него походу кирилицы нет) и заработало. Отображает 2 строки по 16 символов вполне так!

 

На ЖК дисплее написано mtc-s16202afghsay-02a и P16202X - чето в гугле не могу даташиту найти ни на че. Хотя при наборе выводится в поисковике на раз. Есть какие варианты чего такого не достает этому гаду?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

попробуйте в цикле выводить на него символы - не 8 или 16, а много и долго. если вдруг окажется, что так или иначе весь дисплей заполнится символами, значит дело в нестандартном распределении памяти. если же фокус не выйдет - ЖКИ скорее всего убитый.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

попробуйте в цикле выводить на него символы - не 8 или 16, а много и долго. если вдруг окажется, что так или иначе весь дисплей заполнится символами, значит дело в нестандартном распределении памяти. если же фокус не выйдет - ЖКИ скорее всего убитый.

 

 

Проверить распределение памяти можно, но маловероятно что это поможет. Врятли ктото стал бы заниматься извратом, и создал дисплей на основе стандартного контроллера с нестандартным адресным пространством.

Я всё же за то что дисплей испорчен. У себя наблюдал картину, когда выходил из строя один из контроллеров LCD и правые 8 символов в каждой строке не отображались.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно еще попытаться увеличить все задержки после обращения к LCD (после любого изменения уровня) до неприличия - порядка 100 мс и посмотреть, что будет. Если потерянные цифры все равно не появятся, то бобик сдох. :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проверить распределение памяти можно, но маловероятно что это поможет. Врятли ктото стал бы заниматься извратом, и создал дисплей на основе стандартного контроллера с нестандартным адресным пространством.

Я всё же за то что дисплей испорчен. У себя наблюдал картину, когда выходил из строя один из контроллеров LCD и правые 8 символов в каждой строке не отображались.

в моей практике был случай, когда 4-строчный дисплей имел не совсем стандартное распределение памяти и библиотека, рассчитанная на "стандартное" распределение не выводила во вторую и четвертую строки. пришлось подбирать методом научного тыка, т.к. документации на дисплей не было. если у топикстартера 9-й символ выводится в первую позицию второй строки - это кагбэ намекает...

 

 

Можно еще попытаться увеличить все задержки после обращения к LCD (после любого изменения уровня) до неприличия - порядка 100 мс и посмотреть, что будет. Если потерянные цифры все равно не появятся, то бобик сдох. :)
так выводит же часть строк - значит, не в задержках дело...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...