-
- Меня тут попрекали, что я AVR-ами тыкал автору топика. Я же разбирался с примерами для пиков и 51 кристаллов. Хотя, кроме AVR, ни с чем не работал. Посмотрел бы внимательнее даташиты и примеры, давно бы уже разобрался... - mazur(18.07.2011 16:47)
- На этой неделе снова вернулся к этой задаче и вот сегодня наконец-то вроде разобрался в чем загвоздка была. В общем я во-первых все выводы данных и управляющие подтянул к +5В, CE подтянул к 0. После этого индикатор перестал запускаться совсем. LeonidPr(497 знак., 16.07.2011 00:47)
- Да, сегодея весь день работал,Э ни разу не заглючил дисплей. Проблема решена, всем огромное спасибо за помощь! - LeonidPr(18.07.2011 15:18)
- После перерыва вернулся к этой проблеме. Мне тут наши электронщики предложили один способ и он сработал. Только вот пока не знаю что дальше делать. В общем ситуация такая, само устройство питается от AC/DC преобразователя LeonidPr(453 знак., 24.05.2011 21:20)
- УРА!!! Получилось! Поставил кондер 0,1 мкф между землей и HALT. И при включении микроконтроллера задержку влепил на 1 секунду. Табильно теперь запускается. Сейчас буду играть задержкой при включении, но вроде проблема разрешилась. - LeonidPr(25.05.2011 14:25)
- Поспешил я. Все равно иногда не включается. Завтра припаяю HALT жестко к 5В. Явно дело в нем. - LeonidPr(25.05.2011 19:23)
- mazur, вы говорите, что у вас есть дисплей на этом контроллере? Вы не могли бы посмотреть как включены линии Reset и halt контроллера T6363? В моем случае на плате дисплея halt подтянут к плюсу питания через 10кОм. Reset то же подтянут LeonidPr(228 знак., 25.05.2011 23:07)
- HALT напрямую на 5 вольт. Reset висит в воздухе. - mazur(27.05.2011 06:50)
- Только что глянул. Reset выведен на разъем и висит в воздухе. На плате места под резистор и конденсатор. HALT идет на 1 вывод BOOST микросхемы HT7660. DC\DC. Прибора сейчас нет дома. Но судя по всему там пять вольт. Вечером уточню. - mazur(26.05.2011 12:08)
- Хм, только что подумал "странно, что в HALT дело" и наткнулся на ваше сообщение :) Я сейчас на работе. Позже, когда на обед пойду или после работы. Сейчас у нас 10.45. Часа в два-три или после 20.00 напишу ответ. - mazur(26.05.2011 07:45)
- Хорошо. Я сейчас то же на работе. Пока в течение дня покопаюсь. Может сам еще разберусь. Ближе к концу рабочего дня отпишусь. - LeonidPr(26.05.2011 08:36)
- Я тебе уже писал, попробуй припаяй HALT намертво к 5 в. - mazur(26.05.2011 08:41)
- Пробовал, не помогло - LeonidPr(26.05.2011 09:11)
- Я тебе уже писал, попробуй припаяй HALT намертво к 5 в. - mazur(26.05.2011 08:41)
- Хорошо. Я сейчас то же на работе. Пока в течение дня покопаюсь. Может сам еще разберусь. Ближе к концу рабочего дня отпишусь. - LeonidPr(26.05.2011 08:36)
- mazur, вы говорите, что у вас есть дисплей на этом контроллере? Вы не могли бы посмотреть как включены линии Reset и halt контроллера T6363? В моем случае на плате дисплея halt подтянут к плюсу питания через 10кОм. Reset то же подтянут LeonidPr(228 знак., 25.05.2011 23:07)
- Поспешил я. Все равно иногда не включается. Завтра припаяю HALT жестко к 5В. Явно дело в нем. - LeonidPr(25.05.2011 19:23)
- На самом деле два тумблера-не решение проблемы. Это значит,что где-то ошибка. Возможно не включен BrownOut Voltage. Возможно неправильно проинициализированиы порты. Может быть, что неправильно идет вывод данных на порты (выводы управления ЖКИ). Не mazur(1097 знак., 25.05.2011 07:42 - 08:32)
- Уважаемый mazur, проблема не в обмене информацией с дисплеем. Я где-то ниже писал, что делал два теста проверки шины и адреса. Писал в память дисплея и проверял чтением. Оба теста проходят. Связь с контроллером дисплея нормальная. Просто LeonidPr(292 знак., 25.05.2011 09:45)
- Точно, забыл про HALT. В моем ЖКИ этого вывода нет. Вам нужно управлять этим выводом? Если нет, подтяните его и забудьте про него. Кстати, если бы был виноват HALT, то и обмена данными бы не было. Пока просто держим его в уме. Насчет медленного mazur(191 знак., 25.05.2011 10:31)
- несколько NOP-ов МК не помогут, если затянуто питание на ЖКИ от ИП. хардварная проблема. и не надо пугать пикоманов словом BODEN :> - Snaky(25.05.2011 07:53)
- Разве в пиках нет сброса по питанию? mazur(92 знак., 25.05.2011 08:13, ссылка)
- есть, но называется по другому. тебе же не советуют, например, вставить DECFSZ в асм для AVR :> - Snaky(25.05.2011 08:23)
- Поправил. Кстати, пиковский ассемблер многими командами мне больше нравится :) - mazur(25.05.2011 08:33)
- А мне негры кое в чём нравятся. А в целом не люблю :)) - POV(25.05.2011 09:42)
- не отвлекайся :> учи Си :> - Snaky(25.05.2011 09:38)
- Поправил. Кстати, пиковский ассемблер многими командами мне больше нравится :) - mazur(25.05.2011 08:33)
- есть, но называется по другому. тебе же не советуют, например, вставить DECFSZ в асм для AVR :> - Snaky(25.05.2011 08:23)
- Разве в пиках нет сброса по питанию? mazur(92 знак., 25.05.2011 08:13, ссылка)
- Уважаемый mazur, проблема не в обмене информацией с дисплеем. Я где-то ниже писал, что делал два теста проверки шины и адреса. Писал в память дисплея и проверял чтением. Оба теста проходят. Связь с контроллером дисплея нормальная. Просто LeonidPr(292 знак., 25.05.2011 09:45)
- Похоже, что проблема связана со скоростью нарастания напряжения питания 5В. У вас супервизор питания в схеме имеется? Если да, то заведите сигнал с его выхода на вход Reset LCD-модуля. Можно объединить с сигналом от МК через диоды. - rezident(24.05.2011 21:45)
- именно так! - Лагунов(25.05.2011 09:57)
- УРА!!! Получилось! Поставил кондер 0,1 мкф между землей и HALT. И при включении микроконтроллера задержку влепил на 1 секунду. Табильно теперь запускается. Сейчас буду играть задержкой при включении, но вроде проблема разрешилась. - LeonidPr(25.05.2011 14:25)
- mazur, я поразбирался в вашем примере, и еще посмотрел здесь: LeonidPr(648 знак., 30.04.2011 18:44)
- Решил сегодня погонять ЖКИ 128х64. Два года валялся. Поднял свои старые программы. Оказывается, у меня есть еще одна пробная программа. В ней задействован внешний знакогенератор. Получается, что эта прога вернее будет, так как я ее для этого ЖКИ mazur(252 знак., 03.05.2011 19:03)
- Во накодил-то. Только сейчас решил всю программу посмотреть. КАШМАР! Как еще работает? - mazur(03.05.2011 19:12)
- Решил сегодня погонять ЖКИ 128х64. Два года валялся. Поднял свои старые программы. Оказывается, у меня есть еще одна пробная программа. В ней задействован внешний знакогенератор. Получается, что эта прога вернее будет, так как я ее для этого ЖКИ mazur(252 знак., 03.05.2011 19:03)
- Уважаемый, поверьте, я долго парился с этим ЖКИ. С нуля, на ура, его не взять. Чтобы его запустить, нужно внимательно прочитать даташит и примеры его запуска (не поленитесь, посмотрите мой архив, я его не зря собирал и сохранил). С этим ЖКИ шаг mazur(35 знак., 29.04.2011 20:47)
- да это в общем-то с любым так - koyodza(29.04.2011 20:56)
- Еще один маленький вопросик возник, хотя он больше по протеусу, но не хочется новую тему плодить. Я на схему модельку этого дислея вытащил. Так вот, физически рабочее положение у него в устройстве будет "на боку". Я пытаюсь повернуть модельку LeonidPr(171 знак., 18.04.2011 07:57)
- => - Snaky(18.04.2011 07:59, ссылка)
- Жаль. Ладно, буду разбираться - LeonidPr(18.04.2011 08:13)
- => - Snaky(18.04.2011 07:59, ссылка)
- Да, кстати. При включении питания триггеры ЖК-модуля принимают неопределенное состояние. На экране это видится как китайская грамота. Я не смог найти команду очистки экрана, пришлось после инициализации ЖК-модуля забивать символом пробела для mazur(137 знак., 14.04.2011 08:18)
- Давно я не работал с Т6963, но мне почему-то вспоминается, что режим EXOR - это способ наложения графического слоя на алфавитно-цифровой, т.е. к записи это не имеет отношения, записываться будет одно и тоже. - AlexBi(13.04.2011 09:44)
- Понятно. Видимо придется картинку в ОЗУ PIC-а хранить. В принципе объем позволяет. - LeonidPr(13.04.2011 10:08)
- всегда храню образ экрана в ОЗУ, хоть символьного, хоть графического. В тех индикаторах, что я применяю, чтение из индикатора я не использую вообще, а в некоторых даже возможности такой нет koyodza(453 знак., 13.04.2011 14:17)
- В выложенном мною архиве есть папка "Описание T6963C". Перекомпилированные мною страницы gaw.ru :) Так вот, там написано: mazur(637 знак., 13.04.2011 20:52 - 20:56, ссылка)
- именно с этими koyodza(288 знак., 13.04.2011 20:56)
- T6963C-и перед командой и перед данными. - mazur(13.04.2011 20:58)
- тогда просто читать статус перед каждой записью koyodza(92 знак., 13.04.2011 21:24)
- T6963C-и перед командой и перед данными. - mazur(13.04.2011 20:58)
- именно с этими koyodza(288 знак., 13.04.2011 20:56)
- В выложенном мною архиве есть папка "Описание T6963C". Перекомпилированные мною страницы gaw.ru :) Так вот, там написано: mazur(637 знак., 13.04.2011 20:52 - 20:56, ссылка)
- Там есть команды чтения ОЗУ, можно их использовать. - AlexBi(13.04.2011 11:31)
- всегда храню образ экрана в ОЗУ, хоть символьного, хоть графического. В тех индикаторах, что я применяю, чтение из индикатора я не использую вообще, а в некоторых даже возможности такой нет koyodza(453 знак., 13.04.2011 14:17)
- Понятно. Видимо придется картинку в ОЗУ PIC-а хранить. В принципе объем позволяет. - LeonidPr(13.04.2011 10:08)
- В протеусе не все нюансы учитываются. Например, вы в курсе, что КАЖДЫЙ раз, перед отправкой команды или данных нужно считать флаг статуса? Иначе ЖКИ работать не будет. Это особенность контроллера T6963C. - mazur(13.04.2011 09:38)
- Спасибо, не знал о таком. До этого работал с KS0108 (в живую, не в протеусе), там эта операция имела рекомендательный характер. Можно было статус считывать, а можно было просто подождать столько, что контроллер будет готов к приему следующей LeonidPr(16 знак., 13.04.2011 10:05)
- Я давно пробовал работать с ним. Года два-три назад. Только начал программировать. Долго не мог запустить его. Тогда я его запустил и на этом все закончилось. В архиве доки и пример. На асме, и только начинал программировать, уж не обессудьте. Но mazur(19 знак., 13.04.2011 10:29)
- Спасибо, посмотрю. Сейчас в эмуляторе он завелся, как реальный получим, буду запускать. - LeonidPr(13.04.2011 10:36)
- Второй день пытаюсь заставить нормально работать реальный индикатор. LeonidPr(2419 знак., 29.04.2011 15:22)
- Постепенно склоняюсь к тому, что попался глючный экземпляр. LeonidPr(722 знак., 04.05.2011 14:47)
- Запросто. Ведь многим при знакомстве с чем-то часто попадается и глючный микроконтроллер, и глючный компилятор, и глючный программатор. - testerplus(05.05.2011 11:01)
- То есть, сейчас получается, что с данными все нормально, с отображением рамс? На всякий случай выложите схему, как вы подключили. - mazur(04.05.2011 16:11)
- Схема подключения: LeonidPr(04.05.2011 16:23)
- Контрастность крутил? Индикатор меняется от "ничего нет" до "весь темный"? - AlexBi(04.05.2011 16:27)
- :) Руль крутил? Колеса пинал? - mazur(05.05.2011 11:29)
- Завтра обязательно это проделаю. А так, я просто подкрутил так, что бы было видно и всё. - LeonidPr(04.05.2011 17:35)
- Покрутил контрастность. Все нормально. Меняется от темного до белого, даже если сам дисплей не запустился. - LeonidPr(05.05.2011 07:15)
- Контрастность крутил? Индикатор меняется от "ничего нет" до "весь темный"? - AlexBi(04.05.2011 16:27)
- Схема подключения: LeonidPr(04.05.2011 16:23)
- примеры смотрели? - Snaky(04.05.2011 10:22, ссылка, ссылка)
- Вы зря задержек везде навтыкали. У меня вообще нет задержек, сброс и ожидание нужных флагов при чтении статуса. Я когда пытал свой ЖКИ, пошагово отлаживал, сверяясь с даташитом. - mazur(04.05.2011 10:18)
- Я опасался что дисплей не успеет за микроконтроллером (10 MIPS) - LeonidPr(04.05.2011 10:33)
- Дисплей никак не может не успеть, по одной простой причине, нужно считывать статус. И пока статус не позволяет, данные отправлять понт. Другое дело, если мы пытаемся как бы обмануть дисплей, заранее отправляем команду чтения статуса и после mazur(328 знак., 04.05.2011 10:40)
- когда топикстартер сразу оговаривает "микроконтроллер PIC18F4620", то советовать "погонять код в авр-студио" моветон :> - Snaky(04.05.2011 10:45)
- точно, пардон. у него же пики. :) - mazur(04.05.2011 11:49)
- когда топикстартер сразу оговаривает "микроконтроллер PIC18F4620", то советовать "погонять код в авр-студио" моветон :> - Snaky(04.05.2011 10:45)
- Дисплей никак не может не успеть, по одной простой причине, нужно считывать статус. И пока статус не позволяет, данные отправлять понт. Другое дело, если мы пытаемся как бы обмануть дисплей, заранее отправляем команду чтения статуса и после mazur(328 знак., 04.05.2011 10:40)
- Я опасался что дисплей не успеет за микроконтроллером (10 MIPS) - LeonidPr(04.05.2011 10:33)
- Я вам привел пример. Инициализация проца. Сброс ЖКИ (обязательно). То есть, подать нолик на ногу сброса ЖКИ на n мс. Потом подать единицу. Ну и дальнейшая работа. Код рабочий. Только давно и криво написан. :) Камменты есть, так что разобраться mazur(4480 знак., 29.04.2011 17:14)
- Есть ли у вас задержка между подачей питания на LCD и запуском процедуры инициализации его? - rezident(29.04.2011 15:38)
- Сначала не было. Сейчас есть - около 500 мс. Не помогает. - LeonidPr(29.04.2011 15:52)
- Сейчас эксперимент провел. Сделал посылку команды установки графического режима (0x98) по нажатию кнопки. Причем если кнопка нажата - команда посылается непрерывно. Как я заметил, если эта команда выполнилась успешно и дисплей перешел в LeonidPr(396 знак., 29.04.2011 16:04)
- Насколько я понял в процедуре инициализации у вас RST переходит в неактивное состояние раньше, чем устанавливаются остальные сигналы квитирования? Это неверно! Держите сигнал RST в активном состоянии до тех пор, пока все сигналы не будут rezident(62 знак., 29.04.2011 16:09)
- Сделал как вы сказали. Пока не помогает. Хочу проконсультироваться с вами насчет сигнала ~HALT. LeonidPr(241 знак., 03.05.2011 08:03)
- Забудьте про HALT. Это вывод контроллера а не ЖКИ. - mazur(03.05.2011 20:06)
- У меня это вывод и ЖКИ то же. Я сейчас подтянул к питанию его через 1 кОм. - LeonidPr(04.05.2011 07:24)
- Что у вас за ЖКИ? Случайно не самоделка какая? Выложите даташит. - mazur(04.05.2011 08:41)
- Winstar WG160128B-TFH-TZ# LeonidPr(04.05.2011 09:06)
- Что у вас за ЖКИ? Случайно не самоделка какая? Выложите даташит. - mazur(04.05.2011 08:41)
- У меня это вывод и ЖКИ то же. Я сейчас подтянул к питанию его через 1 кОм. - LeonidPr(04.05.2011 07:24)
- Забудьте про HALT. Это вывод контроллера а не ЖКИ. - mazur(03.05.2011 20:06)
- Прошу прощения, я не совсем понял. То есть вы предлагаете опустить RST в 0, затем считывать статус до тех пор, пока дисплей не уведомит, что он готов, а затем отпустить RST? - LeonidPr(29.04.2011 16:23)
- Нет. Во время инициализации пинов МК и установки их в начальное состояние. Т.е. вначале RST установили в активное состояние (лог.0) затем запрограммировали функции пинов МК, которые управляют шиной данной и сигналами квитирования CE, RD, WR rezident(119 знак., 29.04.2011 16:54)
- Хорошо, понял. Жаль, попробовать смогу только во вторник после праздником. Но буду надеяться что поможет. Хотя, мне кажется немного странным это. Сброс он и есть сброс. Не важно когда были установлены управляющие сигналы до или во время сброса, LeonidPr(87 знак., 29.04.2011 19:09)
- Как это не важно? Сочетание квитирующих сигналов определяет режим работы контроллера. Пока вы один за другим устанавливаете их в неактивное состояние контроллер LCD может какую-то промежуточную комбинацию воспринять в соответствии с временной rezident(320 знак., 29.04.2011 19:37)
- Так ведь я это и написал. Что главное чтобы после снятия сигнала сброса пины были в нужном состоянии. LeonidPr(234 знак., 29.04.2011 22:11)
- Как это не важно? Сочетание квитирующих сигналов определяет режим работы контроллера. Пока вы один за другим устанавливаете их в неактивное состояние контроллер LCD может какую-то промежуточную комбинацию воспринять в соответствии с временной rezident(320 знак., 29.04.2011 19:37)
- Хорошо, понял. Жаль, попробовать смогу только во вторник после праздником. Но буду надеяться что поможет. Хотя, мне кажется немного странным это. Сброс он и есть сброс. Не важно когда были установлены управляющие сигналы до или во время сброса, LeonidPr(87 знак., 29.04.2011 19:09)
- Нет. Во время инициализации пинов МК и установки их в начальное состояние. Т.е. вначале RST установили в активное состояние (лог.0) затем запрограммировали функции пинов МК, которые управляют шиной данной и сигналами квитирования CE, RD, WR rezident(119 знак., 29.04.2011 16:54)
- Сделал как вы сказали. Пока не помогает. Хочу проконсультироваться с вами насчет сигнала ~HALT. LeonidPr(241 знак., 03.05.2011 08:03)
- Насколько я понял в процедуре инициализации у вас RST переходит в неактивное состояние раньше, чем устанавливаются остальные сигналы квитирования? Это неверно! Держите сигнал RST в активном состоянии до тех пор, пока все сигналы не будут rezident(62 знак., 29.04.2011 16:09)
- Сейчас эксперимент провел. Сделал посылку команды установки графического режима (0x98) по нажатию кнопки. Причем если кнопка нажата - команда посылается непрерывно. Как я заметил, если эта команда выполнилась успешно и дисплей перешел в LeonidPr(396 знак., 29.04.2011 16:04)
- Сначала не было. Сейчас есть - около 500 мс. Не помогает. - LeonidPr(29.04.2011 15:52)
- Постепенно склоняюсь к тому, что попался глючный экземпляр. LeonidPr(722 знак., 04.05.2011 14:47)
- Второй день пытаюсь заставить нормально работать реальный индикатор. LeonidPr(2419 знак., 29.04.2011 15:22)
- Спасибо, посмотрю. Сейчас в эмуляторе он завелся, как реальный получим, буду запускать. - LeonidPr(13.04.2011 10:36)
- Я давно пробовал работать с ним. Года два-три назад. Только начал программировать. Долго не мог запустить его. Тогда я его запустил и на этом все закончилось. В архиве доки и пример. На асме, и только начинал программировать, уж не обессудьте. Но mazur(19 знак., 13.04.2011 10:29)
- Спасибо, не знал о таком. До этого работал с KS0108 (в живую, не в протеусе), там эта операция имела рекомендательный характер. Можно было статус считывать, а можно было просто подождать столько, что контроллер будет готов к приему следующей LeonidPr(16 знак., 13.04.2011 10:05)