Работа с ЖКИ на контроллере HD44780 и его аналогах
- Старый ржавый электронщик
- Говорящий с текстолитом
- Сообщения: 1507
- Зарегистрирован: Чт дек 15, 2005 17:34:48
- Откуда: Петрозаводск
- Контактная информация:
аналоговая и цифровая земли полюбому должны быть соединены, так же как силовая земля и сигнальная. Вопрос где - а это уже осциллограф скажет и тесты на помехозащищенность. У самих разработчиков даже мнения расходятся - соединять ли земли на самой плате или вести двумя проводами к БП
путь наименьшего сопротивления проходит по пути наитолстого провода (с) Сергей Соболь
-
Гость
- moLCHec
- Мявтор!
- Сообщения: 825
- Зарегистрирован: Вс дек 18, 2005 20:04:42
- Откуда: Свердловская обл.
- Контактная информация:
короче подцепил ds1624 только температура на экране обновляется только после сброса. уж всяк думал ан ничего не выходит по идее сторожевой таймер же должен сбрасывать.
- Вложения
-
- INLCD.asm
- кварц на 4 MHz
- (9.4 КБ) 947 скачиваний
Настоящий кот всегда либо голоден,
либо невыспался ...
либо невыспался ...
-
Гость
- xelos
- Потрогал лапой паяльник
- Сообщения: 336
- Зарегистрирован: Пн мар 20, 2006 13:05:08
- Контактная информация:
вобщем я это все выкладывал. чтобы мона было мои сообщения редактировать, пришлось вот зарегиться
не пинайте... Гостевое сообщение я уже отредакитровать не могу, так что, тов. администраторы, плиз сделайте сами.
фиксено
Ржавый
вобщем выкладываю библиотеку для LCD (писал сам, так что не пинайте, знаю, что оптимизировать можно).
контроллер экрана ks0066u, совместимый с HD44750.
LCD.C, LCD.H - файлы для управления экрана (библиотека)
ks0066u.c, ks0066u.h - основной проект. Показано как пользоваться библиотекой. овбщем девайс, снимает показания 2 датчиков, выводит на дисплей. Плюс, по запросу с компа, отправляет данные по последовательному порту.
фиксено
вобщем выкладываю библиотеку для LCD (писал сам, так что не пинайте, знаю, что оптимизировать можно).
контроллер экрана ks0066u, совместимый с HD44750.
LCD.C, LCD.H - файлы для управления экрана (библиотека)
ks0066u.c, ks0066u.h - основной проект. Показано как пользоваться библиотекой. овбщем девайс, снимает показания 2 датчиков, выводит на дисплей. Плюс, по запросу с компа, отправляет данные по последовательному порту.
- Вложения
-
- fitmasque.zip
- (3.04 КБ) 1401 скачивание
Я просто верю в то, что рушить догмы - лучший способ не стареть.
Если кто работал с lcd wh1602d помогите плиз. Подключил я ету фигню на мегу 8 на 8 MHZ всё описал по Data Sheet что то содрал у когото и всё казалось запахало норм. Законнектил RS232 ко всему етому и начал на С++ прогу под COM писать выводил на LCD все прешедшие данные на COM всё вроде норм, но чтото вдруг начал он иногда мне белый экран кидать на ресет жмякнеш пару раз и свё норм. Потом на следующий день ничего не пашет. Попробывал залить старую прошивку без RS232 не пашет. Всё на макетке думал не контачит гдето поетуму когда на ресет жмеш пробивает иногда от вибрации, прозвонил всё вроде норм. Во время ресета там какаято ljkdvjklfb проскакивает и исчезает.
Я иногда в строку записывал больше чем 16 символов мот из за етого. ПОМОГИТЕ ПЛИЗ. ИЛИ ПОДСКАЖИТЕ НЕ УМЕР ЛИ LCD.
Я иногда в строку записывал больше чем 16 символов мот из за етого. ПОМОГИТЕ ПЛИЗ. ИЛИ ПОДСКАЖИТЕ НЕ УМЕР ЛИ LCD.
- moLCHec
- Мявтор!
- Сообщения: 825
- Зарегистрирован: Вс дек 18, 2005 20:04:42
- Откуда: Свердловская обл.
- Контактная информация:
У меня подобная фигня была. Я брал инициализацию и пр. сдесь в статьях там на мэлтовкий но у WINSTAR-овских немного не так. уж не помню чего именно и пришлось переделать. Есть описалово на дисплеи 5метров оттуда взял и сделал с тех пор горя не знал юзал WH0802 и WH1604.
- Вложения
-
- lcd.txt
- вот код на Си кварц 16 МГц, работало и на 4-х МГц тока закоментил часть NOP
- (6.68 КБ) 1425 скачиваний
Настоящий кот всегда либо голоден,
либо невыспался ...
либо невыспался ...
У меня инициализация есть всё по data sheet проблела с операцией write там есть временная диаграмма, осталось её соблюсти, меня интересует когда на rs 0 то на шине данных что 1 или 0 до момента передачи данных и надо ли после передачи скидывать на 1 или 0 по DH вроде надо там от rs всё зависит . У мя есть инициализация чьято но там ничего не скидавает и вобще там ошибки есть, она и глючит у меня, то что ты скинул (спасиб) ето другая я посмотрю если запашет то ОК, иначе попробую свою с нуля писать а пока поздно пойдука спать 
- moLCHec
- Мявтор!
- Сообщения: 825
- Зарегистрирован: Вс дек 18, 2005 20:04:42
- Откуда: Свердловская обл.
- Контактная информация:
ULTER про rs я уже честно не помню, давно писал и поскольку пробмем не было больше не вникал. Посмотри вложение там всё это есть логика понятна даже если ты на АСМе пишешь (SetBit установить бит, ClrBit сбросить бит) вывод RW ЖК надо на землю либо на выводе держать 0. Хотел описалово скинуть где всё по русски написано 394кб, не получается грит квота достигнута макс 256 кб. Могу на мыло кинуть.
Настоящий кот всегда либо голоден,
либо невыспался ...
либо невыспался ...
Я там свою собрал инициализацию и схему чуток изменил стал вродь постабильнее работать но было чтото раз как трактор заводился. Гляньте кто, мот найдет из за чего он так иногда подглючивает. Сразу говорю написано корявенько и часть не моя я там менял чуток. на порт данных не хватило B пинов я из С порта взял.
- Вложения
-
- 321.c
- (3.72 КБ) 1151 скачивание
- moLCHec
- Мявтор!
- Сообщения: 825
- Зарегистрирован: Вс дек 18, 2005 20:04:42
- Откуда: Свердловская обл.
- Контактная информация:
Что то я тебя совсем не пойму говоришь что пинов не хватает и тут же 8-ми битный режим юзаешь. Зделай 4-х битный и всё управление у тебя сведётся к 6-ти проводам. т.е. порта С тебе вполне хватит у меня кстати так и подключено на m8. Все функции для работы в 4-х битном режиме я выложил. см. предыдущий пост. кстати экран я всегда 0 очищаю а у тебя 0х01. И если честно функции инициализации и записи как то подозрительно выгдядят.
Настоящий кот всегда либо голоден,
либо невыспался ...
либо невыспался ...
Спасиб за описание, оч хорошо написано. Я кароч расковырял свой глюк. у мя почему то LCD на 3 бите шины данных всегда логич 1 считет, хотя мерял вольтметром там ноль (потом ваще отпоял чтоб точно быть уверенным) поэтому вместо команды стерать он отрубается, вместо данных выводит всякую хрень , которую я по таб. ASCII перевёл в коды символов а их в бинарный вид и сравнил с правильными и точно все норм кроме третьего бита который всегда 11... . И что ето значит мот здох он. Просто в начале он норм пахал дня два (но я правда в эти дни и не сильно юзал его) а потом когда я RS232 (дата кабель на max232 и 4 кандёра а стабилитроны не ставил, пожадничал, мот скачёк был а стабылитронов не было) приделал к мк и он тогда первый раз заглючил потом всё чаще и чаще и сча совсем глючит, хотя горят обычно сразу и навсегда. Поеду новый покупать попробую сравнить тока 5$ жалко 
- moLCHec
- Мявтор!
- Сообщения: 825
- Зарегистрирован: Вс дек 18, 2005 20:04:42
- Откуда: Свердловская обл.
- Контактная информация:
Если символы англицкого алфавита то их так загонять можно напрямую коды совпадают т.е. WriteSym('S'); выведет S. Для русских букв я функцию сделал она преобразует и выводит на экран см. вложение. просто устанавливаеш адресс и выводишь строку например
WriteDDR(0x80);
lcd_rus("Проверка");
Выведет в первой строке слово Проверка.
WriteDDR(0x80);
lcd_rus("Проверка");
Выведет в первой строке слово Проверка.
Настоящий кот всегда либо голоден,
либо невыспался ...
либо невыспался ...