Работа с ЖКИ на контроллере HD44780 и его аналогах
- Alex_EXE
- Вымогатель припоя
- Сообщения: 580
- Зарегистрирован: Сб дек 27, 2008 12:01:35
- Откуда: Россия, Екатеринбург
- Контактная информация:
Решил поделиться опытом работы такого индикатора с PIC микроконтроллерами
- Вложения
-
- PIC16F628A-LCD.c
- (2.6 КБ) 1130 скачиваний
Тут неоднократно поднималась тема как выводить руссике буквы на индикатор.
Вот вчера прочитал статью Конвертер текста для индикаторов с контроллером HD44780 в журнале Радио 2009 №4, с. 25, 26.
Проверил с PICом и индикатором фирмы Winstar,вроде получилось.
В статье сказанно что прогу можно настроить для работы практичеси с любым типом контроллера, точнее со средой разработки программ для него.
Вот вчера прочитал статью Конвертер текста для индикаторов с контроллером HD44780 в журнале Радио 2009 №4, с. 25, 26.
Проверил с PICом и индикатором фирмы Winstar,вроде получилось.
В статье сказанно что прогу можно настроить для работы практичеси с любым типом контроллера, точнее со средой разработки программ для него.
- Alex_EXE
- Вымогатель припоя
- Сообщения: 580
- Зарегистрирован: Сб дек 27, 2008 12:01:35
- Откуда: Россия, Екатеринбург
- Контактная информация:
Вот такую самописную функцию, для получения русских символов, применяю для индикаторов 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 ****************************************************************Извиняюсь, что, возможно, не в ту тему, но...
Стал вопрос с регулировкой контрастности дисплея AC162B.
В начале темы нашёл такое:
Так и на этой модели ЖКИ делается? ... А что я что-то не разберусь...
Стал вопрос с регулировкой контрастности дисплея 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!"
Имеется индикатор Winstar WH1601A (однострочный)
но внутренне он построен как двухстрочный 2х8
и работать привычно с одной строкой не получается особенно когда выводиш не одиночные символы а строки
приходиться отслеживать что поз. следущего символа уже превысила 8 знаков и переключаться на вторую строку
тоесть как бы иметировать однострочный режим
зачем производитель замутил такую фигню мне не понятно
не логично как то
может можно как то перевести его действительно однострочный режим
чтение даташита показала что вроде есть в команде Function set
бит N который якобы должен перевести его в режим однострочного
там так и написано
N = 2-line/1-line
но не помогает это не хотит он переходить в этот режим
или они имели под этим что то другое
прошу помощи по данному вопросу
но внутренне он построен как двухстрочный 2х8
и работать привычно с одной строкой не получается особенно когда выводиш не одиночные символы а строки
приходиться отслеживать что поз. следущего символа уже превысила 8 знаков и переключаться на вторую строку
тоесть как бы иметировать однострочный режим
зачем производитель замутил такую фигню мне не понятно
не логично как то
может можно как то перевести его действительно однострочный режим
чтение даташита показала что вроде есть в команде Function set
бит N который якобы должен перевести его в режим однострочного
там так и написано
N = 2-line/1-line
но не помогает это не хотит он переходить в этот режим
или они имели под этим что то другое
прошу помощи по данному вопросу
- GP1
- Поставщик валерьянки для Кота
- Сообщения: 2401
- Зарегистрирован: Пт май 23, 2008 19:32:22
- Откуда: Россия, Волгоград
- Контактная информация:
Pippeytz писал(а):Купил , блин на свою голову ету панель .
Юзаю коде вижен, и библиотеку на HD44780 - везде пишут что KS0066
аналог, у них только процедуры инициализации разные . Вобщем весь день промордавался с етой панелью , абсолютно не как не реагирут на управляющие сигналы от МК. Может к етим контролерам нужна своя библиотека для работы , или кто-то может сталкивался с етими KS0066 ?
Как их заставить рабоать ? Ато , уже подумываю на щет написания собственой билиотеки ...
Посмотри здесь:
http://www.melt.com.ru/work/display/150
- saschai
- Говорящий с текстолитом
- Сообщения: 1596
- Зарегистрирован: Вс дек 14, 2008 20:36:47
- Откуда: SPb
http://www.atmel.ru/Articles/Atmel17.htm
А в чем фишка?
А в чем фишка?
- Pippeytz
- Потрогал лапой паяльник
- Сообщения: 396
- Зарегистрирован: Ср май 28, 2008 19:30:31
- Откуда: Донецк
- Контактная информация:
У меня етих дисплеев 2 оидн 2х16 другой 1х16.
В первом вобще никакой реакции нету на команды, во втором работает ровно половина дисплея (ето со стандартной библой)
А когда я их гонял командами в ручную , без билиотеки - все светилсоь. Как
токо подключаеш готовую библу - никакой реакции
В первом вобще никакой реакции нету на команды, во втором работает ровно половина дисплея (ето со стандартной библой)
А когда я их гонял командами в ручную , без билиотеки - все светилсоь. Как
токо подключаеш готовую библу - никакой реакции
Полный пипеутз.
- sema
- Мудрый кот
- Сообщения: 1708
- Зарегистрирован: Ср апр 23, 2008 17:44:56
- Откуда: Россия, г. Нижний Новгород
- Контактная информация:
Pippeytz писал(а):В низу когда чип трогаеш какие-то сигменты светяться, а чтобы ето все от мк управлялось..
в смысле точки? если контраст на максимуме то верхняя строка должна быть почти черной, фотку дисплея можно увидеть?
абажаю мой KIA CEED [img]http://www.kolobok.us/smiles/madhouse/to_become_senile.gif[/img]
Пресекать нарушения закона мой долг и обязанность как гражданина моей страны
Пресекать нарушения закона мой долг и обязанность как гражданина моей страны
- sema
- Мудрый кот
- Сообщения: 1708
- Зарегистрирован: Ср апр 23, 2008 17:44:56
- Откуда: Россия, г. Нижний Новгород
- Контактная информация:
а примерчик кода мона?
, инициализируете дисплей перед обращением к нему? а по какой схеме подключен дисплей? (в CV кажется шина данных 4-х проводная) подключен дисплей правильно?
абажаю мой KIA CEED [img]http://www.kolobok.us/smiles/madhouse/to_become_senile.gif[/img]
Пресекать нарушения закона мой долг и обязанность как гражданина моей страны
Пресекать нарушения закона мой долг и обязанность как гражданина моей страны
