Работа с ЖКИ на контроллере HD44780 и его аналогах

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

Сообщение Aheir »

Думаю, можно добавить прослойку по преобразованию данных.. Но это еще и от индикатора зависит, мне кажется.
Оптимизм х (Опыт + Знания) = const
Контактная информация:
Реклама
Вымогатель припоя
Аватара пользователя
Сообщения: 580
Зарегистрирован: Сб дек 27, 2008 12:01:35
Откуда: Россия, Екатеринбург

Сообщение Alex_EXE »

Решил поделиться опытом работы такого индикатора с PIC микроконтроллерами
Вложения
PIC16F628A-LCD.c
(2.6 КБ) 1133 скачивания
Контактная информация:
Реклама
Потрогал лапой паяльник
Сообщения: 331
Зарегистрирован: Вс мар 30, 2008 14:31:51

Сообщение PB_EXPERT »

Тут неоднократно поднималась тема как выводить руссике буквы на индикатор.
Вот вчера прочитал статью Конвертер текста для индикаторов с контроллером HD44780 в журнале Радио 2009 №4, с. 25, 26.
Проверил с PICом и индикатором фирмы Winstar,вроде получилось. :)
В статье сказанно что прогу можно настроить для работы практичеси с любым типом контроллера, точнее со средой разработки программ для него.
Вымогатель припоя
Аватара пользователя
Сообщения: 580
Зарегистрирован: Сб дек 27, 2008 12:01:35
Откуда: Россия, Екатеринбург

Сообщение Alex_EXE »

Вот такую самописную функцию, для получения русских символов, применяю для индикаторов Winstar, на контроллере HD44780:

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

//	LCD				****************************************************************
unsigned char const ch_font_[2][32] = {
	{0x41,0xA0,0x42,0xA1,0xE0,0xE4,     0xA3,0xA4,0xA5,
	 0xA6,0x4B,0xA7,0x4D,0x48,0x4F,0xA8,0x50,0x43,0x54,
	 0xA9,0xAA,0x58,0xE1,0xAB,0xAC,0xE2,0xAD,0xAE,0xC4,
	 0xAF,0xB0,0xB1},
	{0x61,0xB2,0xB3,0xB4,0xE3,0x65,     0xB6,0xB7,0xB8,
	 0xB9,0xBA,0xBB,0xBC,0xBD,0x6F,0xBE,0x70,0x63,0xBF,
	 0x79,0xE4,0x78,0xE5,0xC0,0xC1,0xC2,0xC3,0xC4,0xC4,
	 0xC5,0xC6,0xC7 }
	};

char LCDSymbolTranslation(unsigned char kod)
{
	switch(kod)
	{
		case 168 : return 0xA2;break;	//	Ё
		case 184 : return 0xB5;break;	//	ё
		case 126 : return 0xE9;break;	//	~
		default:
		{
			if((191<kod)&&(kod<224))
			{
				return ch_font_[0][kod-192];
			}
			else
			if((223<kod)&&(kod<255))
			{
				return ch_font_[1][kod-224];
			}
			return kod;
		}
	}
}
//	-LCD			****************************************************************
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Вымогатель припоя
Аватара пользователя
Сообщения: 601
Зарегистрирован: Пт фев 13, 2009 20:58:13
Откуда: Донецк

Сообщение DataLife »

Извиняюсь, что, возможно, не в ту тему, но...
Стал вопрос с регулировкой контрастности дисплея AC162B.
В начале темы нашёл такое:
Sailanser писал(а):3 ногу которая регулирует контрастность заводи через подстроечник, поставь его так один конец на (+) другой на (-) и с центральной ноги снимай напряжение (кстати это тоже есть в даташите на индикатор). Например у меня напряжение контрастности на 3-й ноге стоит 1,23 вольта и все прекрасно видно.
Так и на этой модели ЖКИ делается? ... А что я что-то не разберусь... :?
Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного.
Реклама
Мучитель микросхем
Аватара пользователя
Сообщения: 450
Зарегистрирован: Пт фев 20, 2009 21:45:04
Откуда: Болгария

Сообщение бгкот »

DataLife писал(а):Так и на этой модели ЖКИ делается?
Да, см. стр. 9 :
http://www.ampire.com.tw/Spec-AC/AC-162B.pdf
©"Good indian is dead one!"
Контактная информация:
Реклама
Мявтор!
Аватара пользователя
Сообщения: 2057
Зарегистрирован: Чт ноя 30, 2006 12:27:46
Откуда: Челябинск

Сообщение dt_andrew »

Имеется индикатор Winstar WH1601A (однострочный)

но внутренне он построен как двухстрочный 2х8

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

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

тоесть как бы иметировать однострочный режим

зачем производитель замутил такую фигню мне не понятно
не логично как то

может можно как то перевести его действительно однострочный режим

чтение даташита показала что вроде есть в команде Function set
бит N который якобы должен перевести его в режим однострочного

там так и написано
N = 2-line/1-line

но не помогает это не хотит он переходить в этот режим

или они имели под этим что то другое

прошу помощи по данному вопросу
GP1
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград

Сообщение GP1 »

Pippeytz писал(а):Купил , блин на свою голову ету панель .
Юзаю коде вижен, и библиотеку на HD44780 - везде пишут что KS0066
аналог, у них только процедуры инициализации разные . Вобщем весь день промордавался с етой панелью , абсолютно не как не реагирут на управляющие сигналы от МК. Может к етим контролерам нужна своя библиотека для работы , или кто-то может сталкивался с етими KS0066 ?
Как их заставить рабоать ? Ато , уже подумываю на щет написания собственой билиотеки ...
Посмотри здесь:
http://www.melt.com.ru/work/display/150
Чем дальше, тем больше становлюсь занудой...
Изображение
Контактная информация:
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1596
Зарегистрирован: Вс дек 14, 2008 20:36:47
Откуда: SPb

Сообщение saschai »

Потрогал лапой паяльник
Аватара пользователя
Сообщения: 396
Зарегистрирован: Ср май 28, 2008 19:30:31
Откуда: Донецк

Сообщение Pippeytz »

Да, я просто не пойму работают ети KS0066 под библиотеку под HD44780 из коде вижена?
Полный пипеутз.
Контактная информация:
Мудрый кот
Аватара пользователя
Сообщения: 1708
Зарегистрирован: Ср апр 23, 2008 17:44:56
Откуда: Россия, г. Нижний Новгород

Сообщение sema »

KS0066 полностью аналогичен HD44780, из кодевижена библа подходит. на дисплее видна первая строка? (темные квадраты)
абажаю мой KIA CEED [img]http://www.kolobok.us/smiles/madhouse/to_become_senile.gif[/img]
Пресекать нарушения закона мой долг и обязанность как гражданина моей страны
Контактная информация:
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 396
Зарегистрирован: Ср май 28, 2008 19:30:31
Откуда: Донецк

Сообщение Pippeytz »

У меня етих дисплеев 2 оидн 2х16 другой 1х16.
В первом вобще никакой реакции нету на команды, во втором работает ровно половина дисплея (ето со стандартной библой)
А когда я их гонял командами в ручную , без билиотеки - все светилсоь. Как
токо подключаеш готовую библу - никакой реакции
Полный пипеутз.
Контактная информация:
Мудрый кот
Аватара пользователя
Сообщения: 1708
Зарегистрирован: Ср апр 23, 2008 17:44:56
Откуда: Россия, г. Нижний Новгород

Сообщение sema »

ну, понимаю что говорю очевидное, но..... контраст крутить пробовали?

да и пример вашего кода для наглядности не помешал бы :wink:
абажаю мой KIA CEED [img]http://www.kolobok.us/smiles/madhouse/to_become_senile.gif[/img]
Пресекать нарушения закона мой долг и обязанность как гражданина моей страны
Контактная информация:
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1596
Зарегистрирован: Вс дек 14, 2008 20:36:47
Откуда: SPb

Сообщение saschai »

sema писал(а):ну, понимаю что говорю очевидное, но..... контраст крутить пробовали?
:)) !
Я первый раз подключал, очень долго подпрыгивал, ну не работает, хоть плачь, уж думал, чавойто пожог. Все было намного проще :))
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 396
Зарегистрирован: Ср май 28, 2008 19:30:31
Откуда: Донецк

Сообщение Pippeytz »

Контарст выставлен максимальный.. В низу когда чип трогаеш какие-то сигменты светяться, а чтобы ето все от мк управлялось.. Ладно , буду разбираться раз с етой билиотекой ето работать должно
Полный пипеутз.
Контактная информация:
Мудрый кот
Аватара пользователя
Сообщения: 1708
Зарегистрирован: Ср апр 23, 2008 17:44:56
Откуда: Россия, г. Нижний Новгород

Сообщение sema »

Pippeytz писал(а):В низу когда чип трогаеш какие-то сигменты светяться, а чтобы ето все от мк управлялось..
в смысле точки? если контраст на максимуме то верхняя строка должна быть почти черной, фотку дисплея можно увидеть?
абажаю мой KIA CEED [img]http://www.kolobok.us/smiles/madhouse/to_become_senile.gif[/img]
Пресекать нарушения закона мой долг и обязанность как гражданина моей страны
Контактная информация:
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 396
Зарегистрирован: Ср май 28, 2008 19:30:31
Откуда: Донецк

Сообщение Pippeytz »

Фотика к сожаления нету, а светиться как положено почти черным. Цвет
размазаной пасты от ручки.Не работает от лсд библиотеки коде вижена и все тут..
Полный пипеутз.
Контактная информация:
Мудрый кот
Аватара пользователя
Сообщения: 1708
Зарегистрирован: Ср апр 23, 2008 17:44:56
Откуда: Россия, г. Нижний Новгород

Сообщение sema »

а примерчик кода мона? :) , инициализируете дисплей перед обращением к нему? а по какой схеме подключен дисплей? (в CV кажется шина данных 4-х проводная) подключен дисплей правильно?
абажаю мой KIA CEED [img]http://www.kolobok.us/smiles/madhouse/to_become_senile.gif[/img]
Пресекать нарушения закона мой долг и обязанность как гражданина моей страны
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 3459
Зарегистрирован: Ср сен 27, 2006 16:18:57

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

Pippeytz писал(а):Да, я просто не пойму работают ети KS0066 под библиотеку под HD44780 из коде вижена?
У меня работает. Индикатор выдран из списанного сервера. На микросхеме надпись: KS0066F00.
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1596
Зарегистрирован: Вс дек 14, 2008 20:36:47
Откуда: SPb

Сообщение saschai »

Может, проблема именно в работоспособности, конкретного индикатора :? и стоит попробывать на макетке типовое подключение и готовую прошивку
Ответить

Вернуться в «Периферия»