Ну значить проверяйте что вы всётаки шлете в шину? может вы фронты и спады такта делаете не вовремя / не правильно попробуйте временно на отлодочной плате завести выход вашего программного спи на аппаратный спи и попринимайте ним байты
По идее разбираться нужно исключительно с Вашими функциями передачи ибо в передаче проблема...не думаю что контроллер не отрабатывает комманды...просто они до него не доходя или доходят неправильно
_________________ Что нас не убило сделало нас осторожней Не доверяйте русским лужам - это может быть вход в метро.
Может быть, я проверяю все пока только виртуально на Протеусе. А почему тогда правильно выполняются команды адресации курсора и вывода шрифта? Т.е. получается, что виртуальный контроллер Протеуса понимает команды инициализации, правильно понимает куда позиционировать курсор, правильно отображает символы знакогенератора, а вот переключить режим отображения не может? Разве так бывает? Обратился за помощью потому как все что можно было перепробовал, все идеи тоже, бьюсь уже вторую неделю, мыслей нет....
Ну первый вопрос nxj напрашивается - это какая частота? второй...сколько задержка времени между установкой логического уровня на DATA пине контроллера ЛСД и приходом тактового? у вас задержек нету вы выпаливаете как только позволяет контроллеру его тактовая....совсем неправильная трактовка работы спи Далее...экран более тормозной чем вы только думаете...после подачи питания нужно ждать 100 мс как и после резета Далее...кхм...зачем такая запутанность можно же всё более понятно написать вот пример нужных вам функций в моём исполнении: 1) табличка шрифта
Теперь Вам нужно сюда добавить в этот список всеголишь процедуру spi() собственного производства которая правильно бы отправляла данные... Это всё если делать по-моему а если оставить так как у вас есть то оно тоже работает по крайней мере у меня и в вашей же модели протеуса Вы же перевернули модель экранчика естественно и изображение на нём вы теперь видите перевернутое ) протеус даже это эмулирует )) в общем опишите ещё раз какие у Вас проблемы и мы попробуем их решить хотя на самом деле проблем нету
Вложения:
Комментарий к файлу: Вот ваш проектик - откройте и посмотрите proba.rar [106.15 KiB]
Скачиваний: 411
_________________ Что нас не убило сделало нас осторожней Не доверяйте русским лужам - это может быть вход в метро.
Спасибо большое за помощь !!!! Дело в том что я просто переписываю программу , она была написана на асме и не мной, поскольку устройство готово и работает, то и требуется изображение отзеркалировать, поэтому экранчик и перевернут. А вот с инверсией не получается у меня. Не могли бы в моем тексте подправить что бы получилась инверсия (точнее нормальный режим черным по белому), свой текст как то ближе к телу . Ваш текст хорош !!! Но его надо изучать, как там и что работает (чем обязательно займусь попозже), а пока хотелось бы разобраться, что не так у меня. С временами задежки попробовал и раньше безрезультатно. А у вас каким цветом и на каком фоне пишет буквы? Во вложении hex, мне надо чтоб так писало.
в модели протеуса бит черного цвета печатается белым у меня прозрачный экран и по нему непрозрачными черновато-синими пикселями рисуется а в протеусе - как и у вас ... не забывайте что с Вашим способом вывода битов в программный спи протеус будет работать нормально но вот реальный экран навряд...ему надо порядка 20-ти микросекунд на установку лог уровня входа и только после этого надо поднять clock на +, снова подождать хотябы 20 микросекунд и потом уже опустить наземлю без временных задержек этот колхоз будет работать неправильно .... даже на 8-ми мегагерцах мой экранчик с аппаратным спи уже не заработал...теряя иногда биты и такты клока(у мя просто резистор с ноги мк до экрана и всё)... не понимаю к чему переворот экрана и зеркалирование??? у модели протеуса контакты нарисованы внизу(чтоб смотрелось нормально) а по факту у так же сориентированного экрана всё получается вверх ногами в общем не заморачивайтесь вы с этой моделью она зеркалирование всёравно навряд поддерживает А скрол вверх-вниз так то точно что не держит П.С. ваш хекс чёта моего протеуса подвешивает 7.5 сп2
_________________ Что нас не убило сделало нас осторожней Не доверяйте русским лужам - это может быть вход в метро.
Странно но у меня все работает правда и версия у меня новее 7.6 SP0 может поэтому подвешивает? Жаль конечно, что не запустился hex ? вот там все правильно как в Протеусе так и на экране реальной работающей конструкции (по белому пишет черным) вот этого и хотелось добиться в протеусе. По поводу задержек полностью согласен, что в железе придется помучиться и все подобрать, это я прекрасно понимаю, просто я сейчас моделирую только в протеусе и уже тут оно не работает как положено ((. По поводу зеркалирования - модель в протеусе реально поддерживает все функции LCD и зеркалирование в том числе , это видно из hex, который у Вас к сожалению не запустился. Еще раз повторяю, что есть реальная конструкция которая стоит у меня на столе и работает, это блок питания которым я пользуюсь, переделывать его совсем нет никакого желания (а там экран как раз наоборот стоит) , а вот переписать программу желание есть очень большое, поэтому собственно этим и занимаюсь... Вот как должно быть 1 и 2 картинки во вложении, а 3 это как есть сейчас.
Ещё раз обьясняю!!! Я Сам с таким делом работаю и если на протеусе белые буковки то в реальности они инверсные, дальше на самом деле могло иметь место двойной негатив, это когда программа умышленно шлет неправильно данные и ещё в довес ко всему и экрану дана комманда инверсии поэтому в протеусе одно а в реальности - другое!!!!! Говорю ещё раз я ПИСАЛ в вашей прошивке код инициализации на инверсию - моя модель его НЕ ОТРАБОТАЛА!!! хотя в железе игрался со своим проектиком и там через менюшку всё работало 200%!!!да и сейчас работает !!! Дальше...зеркальный вывод...ну кто мне в программе мешает сами биты переворачивать вверхногами и выдавать побайтово задом наперед строку????? никто!!!!! я сейчас сделаю анализ того что шлется на моник если ваш хексик зачитается и тогда посмотрим!
Ну вот что и требовалось доказать
_________________ Что нас не убило сделало нас осторожней Не доверяйте русским лужам - это может быть вход в метро.
Последний раз редактировалось clawham Пт апр 09, 2010 10:21:55, всего редактировалось 1 раз.
Кстати если присмотреться можно заметить чтодовольно часто происходят сбои в работе программного зеркалирования и некоторые символы на половину съедаются
_________________ Что нас не убило сделало нас осторожней Не доверяйте русским лужам - это может быть вход в метро.
Спасибо огромное clawham за помощь и Ваш труд, теперь вопростов нет. Программно можно все сделать, думалось что можно это сделать "железно". Надо спаять макетку попробовать в железе..... Протеус видимо действительно такие функции не поддерживапет. По поводу сбоев это так работает модель, железо работает отлично и сбоев не наблюдается.
Как говорится - кривые решения вылазят боком у меня в моём проектике никогда никаких глюков не наблюдается в экранчике и на модели аналогично!!! Ну ни разу небыло замечено глюков...просто если всё вверх ногами то....ну...на руках тоже можно ходить но...разве не правда что это делать лучше ногами....? Зачем вам так точно реинженерить ту прошивку? разве сложно развернуть в нормальное положение экранчик и получить минус 1000 проблем?
_________________ Что нас не убило сделало нас осторожней Не доверяйте русским лужам - это может быть вход в метро.
Все очень просто экранчик приделан к передней панели и перевернуть его нет никакой возможности ну разве, что переделывать полностью весь конструктив ..... там кроме экранчика используются еще кнопочки от телефона все это на одной платке..... в общем геморно это, проще все таки программно, да и потренируюсь заодно )
Подскажите ктонибудь пожалуста При включении питания к экрану от 3310, появляются на экране какиенибудь признаки жизни? Есть у меня такой дисплей, но чтото никакой жизни он не подаёт
вообще при подключении питания к дисплею на экране должен быть мусор но по факту он сбрасывается внутренней схемой и висит в повер дауне поэтому без инициализации никуда
lerik, это я так понимаю вы уже запустили Ваш контроллер? Если так то ваша процедурка передачи данных по программному СПИ немного слишком очень кривовата..тайминги ни к чёрту...фронты неправильно сделаны...в общем есть вариант что дисп просто не видит того что вы на шину шлете ибо не успевает
_________________ Что нас не убило сделало нас осторожней Не доверяйте русским лужам - это может быть вход в метро.
" вообще при подключении питания к дисплею на экране должен быть мусор " не факт, у многих дисплеев есть интересные выводы например куда подключается емкость, если ее не будет то и на экране ничего не будет, даже мусора, опять же если не было инициализации то вряд ли что тоже появится, во всяком случае я не видел мусора при простой подаче питания на разнообразные дисплеи.... Нет, пока в железе я свою программку не проверял, я прекрасно понимаю, что еще придется повозиться в железе, сейчас потихоньку пишу дальше, времени катастрофически не хватет Пока проинвертировал "буковки" перед выводом, получил то, что хотел, тут главное было понять программно это было или физически. Когда все будет написано и если оно влезет в память, тогда уж придет время железа....
Спасиба за ответ Вобщем соеденил экран к Atmega8 как в схеме термометра, посмотрел на разных сайтах подключение всё правильно. Пробовал прошивать прошивку мигалки на светодиодах(без экрана), всё работает. Вот хочу проверить экран, всю эту тему я перечитал с начала и до конца, хотелось бы увидить 100% рабочий исходник который запустит экран, чтоб проверить его на роботоспособность и желательно без кварца, я уже весь интернет облазил, нашол только с кварцем, но у меня его нету. Спасибо если поможите.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения