Объяснение в любви. Подключаем LCD к микроконтроллеру по 4-х

Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


~Dmitriy~
Открыл глаза
Сообщения: 54
Зарегистрирован: Вт дек 13, 2005 21:28:58

Объяснение в любви. Подключаем LCD к микроконтроллеру по 4-х

Сообщение ~Dmitriy~ »

Статья: http://www.radiokot.ru/lab/controller/04


Добавьте пожалуйста в статью hex фаль,плиз :)
Аватара пользователя
Sailanser
Друг Кота
Сообщения: 3121
Зарегистрирован: Ср фев 01, 2006 22:29:02
Откуда: г.Ростов-на-Дону

Сообщение Sailanser »

Давай адрес эл.почты скину а то тут что-то нельзя файлы с этим расширением прикреплять.

Либо копируй отсюда таким образом создаешь файл с расширением hex и вставляешь в него это

Код: Выделить всё

:020000020000FC
:100000000BC009C008C007C029C005C004C003C098
:1000100002C001C000C018950FEF07BB01BB00E094
:1000200002BB0FED0DBF24D034D0B5D000E851D0C5
:10003000E8E7F1E075D001EC4CD0E6E8F1E070D0F3
:1000400000E409BF03E00EBD0CE40BBD0BE40ABDE8
:1000500011E000E00DBD0CBD7894FFCF00E00DBDB8
:100060000CBD103811F0110F01C011E018BB18952C
:100070000F9300E00A95F1F70F9108950F931F93E6
:1000800000E014E10A95F1F71A95E1F71F910F913D
:10009000089500E002BBECDF10E1E2ECF0E0C8956F
:1000A00002BA319600000000949A0000000000009F
:1000B0000000000000009498DBDF1A9581F7DEDF76
:1000C000089503030302020800080006000F080059
:1000D00000010F9306950695069506950F7002BBD5
:1000E00000000000949A00000000000000000000E2
:1000F00000009498000000000000000000000000D4
:1001000000000F910F7002BB00000000949A0000E5
:10011000000000000000000000009498A9DF08958E
:10012000C895002D043239F131960F9302950F7066
:10013000006402BB00000000949A00000000000070
:100140000000000000009498000000000000000083
:100150000000000000000F910F70006402BB00005F
:100160000000949A00000000000000000000000061
:1001700094987EDFD5CF089549004B50A54354B0E5
:10018000AC4120262400726164696F6B6F742E721B
:1001900075203A29240000E49CDFE2EAF1E0C0DFA8
:0C01A000089500000A1F0E040000240057
:00000001FF


Потом сохраняешь и шьешь.
Аватара пользователя
moLCHec
Мявтор!
Сообщения: 825
Зарегистрирован: Вс дек 18, 2005 20:04:42
Откуда: Свердловская обл.
Контактная информация:

Сообщение moLCHec »

для справки инициализация МЭЛТовского ЖК чуть отличается от WINSTAR, по крайней мере у меня робило (W) не стабильно пока под datashet-овскую не подогнал.
Настоящий кот всегда либо голоден,
либо невыспался ...
~Dmitriy~
Открыл глаза
Сообщения: 54
Зарегистрирован: Вт дек 13, 2005 21:28:58

Сообщение ~Dmitriy~ »

dimok-se(@)mail.ru
Аватара пользователя
moLCHec
Мявтор!
Сообщения: 825
Зарегистрирован: Вс дек 18, 2005 20:04:42
Откуда: Свердловская обл.
Контактная информация:

Сообщение moLCHec »

у тебя ЖК то какой. Приведёная прошивка что не прошла.
Настоящий кот всегда либо голоден,
либо невыспался ...
~Dmitriy~
Открыл глаза
Сообщения: 54
Зарегистрирован: Вт дек 13, 2005 21:28:58

Сообщение ~Dmitriy~ »

Мне нужна была любая прошивка. Для того чтобы проверить программатор.
Аватара пользователя
moLCHec
Мявтор!
Сообщения: 825
Зарегистрирован: Вс дек 18, 2005 20:04:42
Откуда: Свердловская обл.
Контактная информация:

Сообщение moLCHec »

теперь то уже не надо????????
Настоящий кот всегда либо голоден,
либо невыспался ...
~Dmitriy~
Открыл глаза
Сообщения: 54
Зарегистрирован: Вт дек 13, 2005 21:28:58

Сообщение ~Dmitriy~ »

Да, всё нормально. Программатор шьёт.
Maxim
Родился
Сообщения: 6
Зарегистрирован: Чт июл 20, 2006 17:27:19

Сообщение Maxim »

Прочитал эту статью попробовал подключить индикатор к микрокотроллеру правда подключал немного другим образом в статье он подключен так
A0,R/W,E,DB7,DB6,DB5,DB4

a0 (4) (11) pd6
r/w (5) (9) pd5
e (6) (8) pd4
db4 (11) (2) pd0
db5 (12) (3) pd1
db6 (13) (6) pd2
db7 (14) (7) pd3

файл - 1.txt

при таком подключении все работает на ура никаких как говориться проблем нет но после того как немного меняю расположение сигналов для того что бы удобно было панельку ставить на такое

R/W,DB5,DB7,DB6,DB4,E,A0

a0 (4) (2) pd0
r/w (5) (11) pd6
e (6) (3) pd1
db4 (11) (6) pd2
db5 (12) (9) pd5
db6 (13) (7) pd3
db7 (14) (8) pd4

как в статье написано немного изменяю процесс инициализации самого дисплея по принципу Формат посылки: 0b00000000=0bx,A0(RS),R/W,E,DB7,DB6,DB5,DB4

на такой - 2.txt

то на индикаторе только видно первую строчку еле еле и видно что она вся из квадратиков. Что я мог прописать не так проверил уже несколько раз дожно быть так:(( но вот что то видно не учел т.к с микроконтроллерами и индикатором только начинаю работать.

Всем заранее спасибо за подсказку.
Вложения
2.txt
(5.68 КБ) 630 скачиваний
1.txt
(5.5 КБ) 593 скачивания
Аватара пользователя
Старый ржавый электронщик
Говорящий с текстолитом
Сообщения: 1507
Зарегистрирован: Чт дек 15, 2005 17:34:48
Откуда: Петрозаводск
Контактная информация:

Сообщение Старый ржавый электронщик »

Максим, упал чтоли??? неужто нельзя всё в файлик сложить и прикрепить??? еще раз так сделаешь - удалю без разговоров.
путь наименьшего сопротивления проходит по пути наитолстого провода (с) Сергей Соболь
Аватара пользователя
moLCHec
Мявтор!
Сообщения: 825
Зарегистрирован: Вс дек 18, 2005 20:04:42
Откуда: Свердловская обл.
Контактная информация:

Сообщение moLCHec »

Записи символов и выборе области даннных мы переставляем тетрады регистра swap-помоему короче на BD4-BD7 индикатора должны приходить Px0-Px3 ноги порта соответсвенно иначе тебе нада сдвигать перед выводом в порт полубайт. В твоёт случае влево на 2 разряда т.е. умножить на 4. Въедь просто в работу индикатора и программы по лучше и ты поймёшь в чём ошибка сам.
Настоящий кот всегда либо голоден,
либо невыспался ...
Maxim
Родился
Сообщения: 6
Зарегистрирован: Чт июл 20, 2006 17:27:19

Сообщение Maxim »

Старый ржавый электронщик дико извеняюсь я сначала так и пытался сделать но что то файл не хотел приклепляться думал плтомучто я тут новичек.

moLCHec
Честно говоря не понял можешь рассказать поподробнее???
Аватара пользователя
moLCHec
Мявтор!
Сообщения: 825
Зарегистрирован: Вс дек 18, 2005 20:04:42
Откуда: Свердловская обл.
Контактная информация:

Сообщение moLCHec »

Инициализация заключается в последовательности определённых байтов для того что бы контролллер индикатора принял байт нужен строб.-сигнал на выводе Е. 1 delay 0. Так вот представь теперь что байт это 8-мь разрядов а у тебя подключение по 4-х битной шине. При коды инициализации расчитаны так что значащами являются тока младший полубайт. Т.е. при инициализации тебе надо вывести определённый полубайт на на копыта которые подключены к BD4-BD0 индикатора. И дать строб выводом который питает "Е". При Выборе области WriteDDR ак у меня наз-ся . Ситуация уже несколько другая здесь мы уже перевели окончательно в 4-х битный режим и формат посыла такой: A0-"1"-Старший полубайт A0-0- A0-1-строб - младший полубайт A0-0.При записи символа при записи символа всё также только А0 не изменяется в WH индикаторах он кстати RS наз-ся. Ну теперь главное как это всё у тебя програмно организуется . При инициализации просто записывам в PORTx байт причем младший полубайт оказавается на DB4-DB7 при первом тобой указанном подключении ну и стробируем. тепереча представь если ты просто поменял копыта. У тебя байт выводится в DB4 DB5 Е А0. При выборе памяти и выводе символа мы переставляем тетрады swap окрляем старший посылаем. Затем этотже байт не "пререворачиаем" а просто округляем "верхушку" и посылаем. Ну ты понял что получается при твоём втором подрлючении просто не туды выводится инфа.
Настоящий кот всегда либо голоден,
либо невыспался ...
Maxim
Родился
Сообщения: 6
Зарегистрирован: Чт июл 20, 2006 17:27:19

Сообщение Maxim »

Ага вот теперь понятно, только скажи вот что какой командой переставляются тетрады swap в обучалке на сэтом сайте что то не видел упоминания такого.

Я так понимаю что необходимо использовать команду логический сдвиг влево как ты говорил немного выше и втыкать ее в подпрограммы INIT_LCD16S2D: Init_next0: ?
Аватара пользователя
moLCHec
Мявтор!
Сообщения: 825
Зарегистрирован: Вс дек 18, 2005 20:04:42
Откуда: Свердловская обл.
Контактная информация:

Сообщение moLCHec »

Ага совершенно верно для перестановки тетрад используется команда
SWAP аргумент РОН сам понимаешь. Можно просто разделить число на 16 или сдвинуть на 4 разряда вправо тогда не нада округлять старший полубайт. Сдвигать тебе придётся не тока в инициализации . Также в функции выбора адреса и непосредственно вывода символа.
А вообче проще печатку переделать наверно чем так извращаться тем более в асме. На крайняк проводками перемычки кинуть.
Настоящий кот всегда либо голоден,
либо невыспался ...
SD

Сообщение SD »

Код: Выделить всё

...
   out PortD,Temp
   nop         ;Не менее 40нс
   nop
...

Почему используется 2а nop'а? ведь при f=10MHz T=1/f=10^-7s=100ns
Ведь 100ns>40ns, получается можно исключить эти 2а nop'а?

Но почему-то если так считать, то не прокатывает общение с LCD :( не в данном месте, а вообще с остальными командами... и в коде ведь не спроста везде nop'ов больше чем по моему рассчету?
Аватара пользователя
Nobody
Встал на лапы
Сообщения: 93
Зарегистрирован: Пт июн 15, 2007 23:21:26
Откуда: Орск
Контактная информация:

Сообщение Nobody »

Из статьи:
Боясь перегреть дорожки я решил использовать флюс. Припаялось идеально. Но не перестарайтесь. Флюс очищает площадки, растворяя медь и если его вовремя не убрать, то может растворить до конца.

Я сошёл с ума или просто валерьянка несвежая? Мяусеньки. :shock:
Аватара пользователя
Aheir
Модератор
Сообщения: 4517
Зарегистрирован: Пн апр 03, 2006 11:43:25
Откуда: Санкт - Петербург
Контактная информация:

Сообщение Aheir »

Кончай флейм!

С валерьянкой все в порядке. Существуют активные флюсы, медь они, конечно, не сильно растворяют, но бед, если не отмыть, натворить могут.
По этому поводу уже было обсуждение.
Оптимизм х (Опыт + Знания) = const
Аватара пользователя
Артур
Нашел транзистор. Понюхал.
Сообщения: 157
Зарегистрирован: Пн дек 04, 2006 09:50:08
Откуда: Vladivostok

Сообщение Артур »

Всем привет!
Извините за вторжение но не хотелось засорять форум создавая похожую тему! Пользуясь случаем задаю свой вопрос:
Скажите пожалуйста стробирующий сигнал должен быть постоянным или прерываться? и если он должен прерываться, то в какое время и для чего?
И Еще не могли бы Вы рассказать мне весь процесс (на какие выводы, в какой момент времени надо подавать какие уровни) чтобы вывести символ например "А"
Читал даташит на дисплей, но смотрю в книгу вижу фигу :( я с этим впервые сталкиваюсь , боюсь сам не разберусь!
Спасибо! Очень надеюсь на вашу помощь!
Век живи! - Век учись!
ICQ-15B87330h
Аватара пользователя
Барсик
Друг Кота
Сообщения: 3459
Зарегистрирован: Ср сен 27, 2006 16:18:57

Сообщение Барсик »

Артур писал(а):...не могли бы Вы рассказать мне весь процесс...

Обсуждалось на http://www.radio.ru/ubb/Forum5/HTML/002946.html
Там же есть ссылки на статьи на Русском...
Ответить

Вернуться в «Статьи»