Например TDA7294

Форум РадиоКот • Просмотр темы - Работа с ЖКИ на контроллере HD44780 и его аналогах
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Пн июл 28, 2025 04:16:12

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 2431 ]     ... , , , 81, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Переопределяемые символы в HD44780
СообщениеДобавлено: Вт окт 21, 2014 00:31:06 
Родился
Аватар пользователя

Зарегистрирован: Пн окт 20, 2014 09:38:35
Сообщений: 3
Рейтинг сообщения: 0
koyodza писал(а):
Обычно я стараюсь не использовать символ с кодом 00, вместо него использую 08


1)А чем может быть чревато использование символа 00?



2)т.е. если я хочу например в 07 символ записать рисунок вертикальной палочки справа, в качестве команды передаю адрес CGRAM 0x78 затем в режиме данных (RS=1) значение этой ячейки 0х01, повторяю этот шаг увеличивая на 1 адрес CGRAM до восьми раз, и посылаю команду 0х80 для вывода символа в первое место верхней строки, и вызвать сам символ послав данные 0x07 ?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Переопределяемые символы в HD44780
СообщениеДобавлено: Вт окт 21, 2014 07:10:47 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 98
Рейтинг сообщений: 2116
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 18403
Откуда: Новочеркасск
Рейтинг сообщения: 1
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
CyberVad писал(а):
7 байтов значащих (первый описывает верхнюю строку, седьмой нижнюю), а восьмой произвольный.
попадаются индикаторы, в которых все 8 байтов отображаются, поэтому обнуление восьмого будет правильной тактикой.

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Переопределяемые символы в HD44780
СообщениеДобавлено: Вт окт 21, 2014 11:34:05 
Собутыльник Кота
Аватар пользователя

Карма: 40
Рейтинг сообщений: 372
Зарегистрирован: Вс июл 17, 2011 11:51:52
Сообщений: 2623
Рейтинг сообщения: 0
ksardas_90 писал(а):
1)А чем может быть чревато использование символа 00?

Сложностями использования нормальных строк, которые оканчиваются нулём.
Не все пишут 50 раз подряд lcdwrite('a'), бывают и более сложные программные реализации, в которых хочется по-возможности использовать более "объектный" подход.
ksardas_90 писал(а):
2)в качестве команды передаю адрес CGRAM 0x78 затем в режиме данных (RS=1) значение этой ячейки 0х01,

Всё верно, только адрес всё же 0х38, поскольку в самом адресе 6 бит, но передаётся на этом этапе 0х78, поскольку бит7=0 и бит6=1 означает запись адреса CGRAM
Привыкайте использовать правильные названия и понятия.
CyberVad писал(а):
И хоть символ 5х7, а передать надо 8 байтов: 7 байтов значащих (первый описывает верхнюю строку, седьмой нижнюю), а восьмой произвольный.

Большинство современных индикаторов восьмую строку отображают. Поэтому если она не нужна записывайте туда 0.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Переопределяемые символы в HD44780
СообщениеДобавлено: Ср окт 22, 2014 00:23:48 
Родился
Аватар пользователя

Зарегистрирован: Пн окт 20, 2014 09:38:35
Сообщений: 3
Рейтинг сообщения: 0
Всем огромное спасибо, ответы многое прояснили и теперь стало получаться).


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Сб ноя 15, 2014 18:11:32 
Вымогатель припоя
Аватар пользователя

Карма: 3
Рейтинг сообщений: 12
Зарегистрирован: Сб окт 17, 2009 18:56:05
Сообщений: 613
Откуда: РФ, Башкортостан г.Сибай
Рейтинг сообщения: 0
Здравствуйте, прошу помощи. Купил седня WH1602B-YYK-CTK# как я думал, но оторвав наклейку увидел надпись 1602F. :shock: ПОсмотрел датники на WH1602 нескольких серий, у всех 1,2 ножка это +, -, но меняются местами в зависимости от серии. Раз наклейка не соответствует надписи на плате, то может по факту это ваще другая серия где 1 ножка это не GND, а +5В(Как раз первая ножка идет на кондер которого нет, но есть знак + около пяточка). У моего индикатора как я понял LED подсветка, то есть чтобы что-то увидеть на нем, нужно запитать подсветку через резистор 40-150Ом и настроить контрастность? Может у кого такое же чудо было уже? Не хочу просто на ветер 400р выкинуть

Вот фото этого чуда
Спойлер1: Изображение
2: Изображение

_________________
Нельзя всё знать, достаточно понимать.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Вс ноя 16, 2014 10:27:31 
Друг Кота

Карма: 28
Рейтинг сообщений: 568
Зарегистрирован: Чт май 05, 2011 21:26:34
Сообщений: 4550
Откуда: Украина, Славутич
Рейтинг сообщения: 0
Подсветка не мешает увидеть изображение.
Просто прозвони питание в режиме прозвонки диодов - в таких схемах имеется обратный диод по питанию, если подключишь щупы тестера не так как надо - питание индикатора будет звониться как диод.


Вернуться наверх
 
Распродажа паяльного оборудования ATTEN!
Паяльные станции, паяльники и аксессуары по самой выгодной цене.

По промокоду radiokot скидка 10%
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Вс ноя 16, 2014 17:55:46 
Вымогатель припоя
Аватар пользователя

Карма: 3
Рейтинг сообщений: 12
Зарегистрирован: Сб окт 17, 2009 18:56:05
Сообщений: 613
Откуда: РФ, Башкортостан г.Сибай
Рейтинг сообщения: 0
Alexeyslav, благодарю :) ща узнаем где +, а где -

_________________
Нельзя всё знать, достаточно понимать.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт ноя 20, 2014 22:55:18 
Нашел транзистор. Понюхал.

Карма: 1
Рейтинг сообщений: 25
Зарегистрирован: Пт сен 21, 2007 17:53:23
Сообщений: 190
Откуда: Зарайск
Рейтинг сообщения: 0
Alexeyslav писал(а):
Подсветка не мешает увидеть изображение.
Просто прозвони питание в режиме прозвонки диодов - в таких схемах имеется обратный диод по питанию, если подключишь щупы тестера не так как надо - питание индикатора будет звониться как диод.

про диод - не слыхал о таком
часть приборов при 2.5В потребляют ток, что при прозвонке тестером будет определенно как ток через диод - обратный тому, что вы сказали


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт ноя 20, 2014 23:18:09 
Друг Кота

Карма: 28
Рейтинг сообщений: 568
Зарегистрирован: Чт май 05, 2011 21:26:34
Сообщений: 4550
Откуда: Украина, Славутич
Рейтинг сообщения: 0
Но он всегда меньше чем в обратном направлении.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Пн янв 05, 2015 16:05:58 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 133
Рейтинг сообщений: 782
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4995
Откуда: Иркутск
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Спасите. ))) Подключил ЖКИ, мк АтМега8. Алгоритм по ДИ-ХАЛТУ, только урезал его, потом что мне чтение не надо. Однако Дисплей не инициализируется. Проверил вольтметром, на всех ногах DB0-DB7 у дисплея присутствует 5 вольт. Подключил по 4 битной шине.



Ничего не понимаю. Мега прошивается. Порт рабочий только что проверял. Все в идеале. ))) А на дисплее че DB подтянуты к плюсу? Так и должно быть?

Такс... еще лишние DB0-DB3 посадил на землю, чтобы не болтались.... Не знаю на сколько это правильно. Однако, ничего не изменилось.

Еще одну хрень понял... Это все из-за временных задержек. Если на выводы кварца положить палец, то начинает дисплей мерцать и можно даже разглядеть символ, который я на него отправил...

Поправил еще фьюзы СКОРТ. Теперь пальцем прижимать не реагирует, амплитуда на кварце стала больше. Проверял осциллографом. Но и запускаться дисплей теперь отказывается.

_________________
Станислав


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Ср янв 07, 2015 21:37:57 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 133
Рейтинг сообщений: 782
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4995
Откуда: Иркутск
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Такс... Не выдержал и полностью все переписал по своему.. Теперь можно подключать дисплей вообще на любые пины любых портов, хоть все на разные по 4 битной шине (6 проводов). И даже инициализация проходит (разбирался с кучей всяких даташитов). Загораются обе строки белыми квадратами. Контраст регулируется.
Остался такой вопрос. Я уже туплю...
Вывод данных как делать? Просто указывать, что сейчас идут данные и пихать их? Или надо еще адрес где-то поставить сначала, а потом пихать? А то у меня не выводит ничего... И курсор не мигает...

_________________
Станислав


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт янв 08, 2015 00:07:42 
Друг Кота
Аватар пользователя

Карма: 86
Рейтинг сообщений: 1035
Зарегистрирован: Чт апр 11, 2013 11:19:59
Сообщений: 4884
Откуда: Минск
Рейтинг сообщения: 0
Загорание двух строк вовсе не означает удачную инициализацию.
Для надёжной инициализации в 4битном режиме вывода на дисплей нужно:

A)
1. Выставить на D7-D4 режиме INIT_DATA (0x3)
2. Перевести RS/RW в режим записи команды.
3. Задержка 20мс
4. Строб по E
5. Задержка 5мс
6. Строб по E
7. Задержка 120мкс
8. Строб по E

B)
1. Передать в 8битном режиме (1 строб)
KS0066_FUNCTION | KS0066_4BIT (0x20 | 0x00)
2. Уже находясь в 4битном режиме (два строба на команду) инициализировать двухстрочный режим
KS0066_FUNCTION | KS0066_4BIT | KS0066_2LINES (0x20 | 0x00 | 0x08)
3. Включить экран
KS0066_DISPLAY | KS0066_DISPAY_ON (0x08 | 0x04)
4. Очистить экран командой KS0066_CLEAR (0x01) с задержкой после неё 2 мс
5. Включить режим автоинкремента адреса KS0066_SET_MODE | KS0066_INC_ADDR (0x04 | 0x00)

После этого можно задавать командой адрес KS0066_SET_DDRAM + addr (0x80 + addr) и писать уже данные, каждый новый байт данных будет писаться в следующую ячейку (автоинкремент).


Последний раз редактировалось WiseLord Чт янв 08, 2015 09:06:52, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт янв 08, 2015 08:13:59 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 133
Рейтинг сообщений: 782
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4995
Откуда: Иркутск
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Кажется не так малость сделал... ))) Мне все интересны эти стробы. В одном ДШ написано, что надо Три раза вывести старшую тетраду команды установки в 8 битный режим с паузами между ними в 40 мкс. А уже четвертой командой вывести старшую тетраду команды установки в 4 битную линию, а дальше без особых задержек уже можно снова пихать уже полностью 8 битные команды (разбивая вперед старшей).
Сейчас перестал две строк и включать... :(
По моему в МЭЛТовских так написано... Только не понятно про строб. 40 мкс давать когда строб наверху и 40 мкс, когда строб внизу? Или 40 мкс делить на один строб, т.е. по 20?
Вот мой проект. Там два файла с комментариями. LCD4_macro.inc и LCD4.asm.
В первом макросы и инициализация с большими задержками. Во втором объявление портов вначале и формирование выводимых данных на порте(ах) с задержками.


Вложения:
LCD.rar [3.65 KiB]
Скачиваний: 120

_________________
Станислав
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт янв 08, 2015 09:10:37 
Друг Кота
Аватар пользователя

Карма: 86
Рейтинг сообщений: 1035
Зарегистрирован: Чт апр 11, 2013 11:19:59
Сообщений: 4884
Откуда: Минск
Рейтинг сообщения: 1
СКАЗОЧНИК писал(а):
В одном ДШ написано, что надо Три раза вывести старшую тетраду команды установки в 8 битный режим с паузами между ними в 40 мкс.

Команда установки в 8бит режим - это KS0066_FUNCTION | KS0066_8BIT (0x20 | 0x10). Это то же самое, что я выше и говорил - устанавливаем на D7-D4 число 0x3 (на всём порту получается 0x30, но D3-D0 не подключены, так что всё равно) и три раза делаем строб. Потом уже переводим (8-битной командой - по стробу на команду) в 4-битный режим, а дальше добиваем инициализацию уже 4-хбитными командами (по два строба на команду).

P.S.
Посмотрел на код - вроде никакого особо криминала не видно, должно бы работать.
Можете глянуть на мой код (на C) - он-то точно работает, может какие-то идеи появятся. Комментариев по коду нет, но там вроде бы всё понятно должно быть. Задержки те же поменять, например.
https://github.com/WiseLord/boardcomput ... s0066.h#L7
https://github.com/WiseLord/boardcomput ... 0066.c#L65
У меня несколько иначе стробирование сделано - сначала выставляются данные, а потом идёт строб (задержка - поднять E - задержка - опустить E), но можно как и у Вас - поднять E, выставить данные - задержка - опустить строб - задержка.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт янв 08, 2015 11:39:16 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 133
Рейтинг сообщений: 782
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4995
Откуда: Иркутск
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
WiseLord писал(а):
Посмотрел на код

Спасибо Вам, что помогаете! )) Даже не лень было код смотреть! Это уже много стоит. Сейчас буду дальше его мучить. :beer:

_________________
Станислав


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт янв 08, 2015 18:46:54 
Потрогал лапой паяльник
Аватар пользователя

Зарегистрирован: Пн янв 07, 2008 16:56:28
Сообщений: 302
Откуда: Минск
Рейтинг сообщения: 0
Задача разбить "data" на 2 нибла и отправить в жк. Я мыслю в верном направлении?

//PORTA.0 // bit4
//PORTA.1 // bit5
//PORTA.2 // bit6
//PORTA.3 // bit7

PORTB.1 - "Е"

Код:
void write(char data)
{
char nibble;
   
   
 nibble = (data & 0xF0) >> 4;
 PORTA |= nibble;
 PORTB.1=1;
 PORTB.1=0;
   
 nibble = data & 0x0F;
 PORTA |= nibble;
 PORTB.1=1;
 PORTB.1=0;

}


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт янв 08, 2015 18:55:45 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 133
Рейтинг сообщений: 782
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4995
Откуда: Иркутск
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Похоже, что в правильном. Правда я принципиально мучаюсь с ассемблером и поэтому Си начал уже забывать.
У вас только задержек не хватает между и после строба (Е). И еще направления (RS) на выдачу команды или данных.
И еще. КодеВижн со своим синтаксисом - зло.

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

_________________
Станислав


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт янв 08, 2015 19:33:52 
Потрогал лапой паяльник
Аватар пользователя

Зарегистрирован: Пн янв 07, 2008 16:56:28
Сообщений: 302
Откуда: Минск
Рейтинг сообщения: 0
СКАЗОЧНИК писал(а):

У вас только задержек не хватает между и после строба (Е).
КодеВижн со своим синтаксисом - зло.

сколько задержку сделать оптимально?

Ой зло, но приятное :beer:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт янв 08, 2015 19:39:18 
Идёт направо - песнь заводит, Налево - сказку говорит.
Аватар пользователя

Карма: 133
Рейтинг сообщений: 782
Зарегистрирован: Чт апр 21, 2011 17:55:50
Сообщений: 4995
Откуда: Иркутск
Рейтинг сообщения: 1
Медали: 1
Получил миской по аватаре (1)
levaclaus писал(а):
сколько задержку

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

А вообще написано "поднять строб", подождать более 230 нсек. потом "Сбросить строб" и еще столько же подождать. Общая длинна периода строба будет равна 500 нсек. так и в таблице нарисовано. В момент, когда строб переходит с высокого в низкий происходит запись в индикатор. Типа того.
Там даже есть табличка, а в ней написано "Период сигнала Е" минимум 500 нсек.

З.Ы. и еще.. Если у вас на порт А подключено еще что-нибудь, то лучше было читать весь порт в переменную, а потом по маске младшую тетраду переделывать, а старшую оставлять без изменений. А то иначе на других пинах порта будет выводить всякую всячину еще... )))))

_________________
Станислав


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
СообщениеДобавлено: Чт янв 08, 2015 19:56:53 
Друг Кота
Аватар пользователя

Карма: 86
Рейтинг сообщений: 1035
Зарегистрирован: Чт апр 11, 2013 11:19:59
Сообщений: 4884
Откуда: Минск
Рейтинг сообщения: 1
levaclaus писал(а):
Код:
nibble = (data & 0xF0) >> 4;
 PORTA |= nibble;
 PORTB.1=1;
 PORTB.1=0;
   
 nibble = data & 0x0F;
 PORTA |= nibble;
 PORTB.1=1;
 PORTB.1=0;

Такой код будет работать неправильно. Нужно ещё, как минимум, перед PORTA |= nibble добавить PORTA &= 0xF0, для очистки полубайта в порту, иначе рано или поздно там скопятся 4 единичных бита и по факту в дисплей будут всегда уходить данные 0xFF.


Последний раз редактировалось WiseLord Чт янв 08, 2015 20:03:37, всего редактировалось 1 раз.

Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 2431 ]     ... , , , 81, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y