Не рокетсайнс. Свою напишешь
Работа с ЖКИ на контроллере HD44780 и его аналогах
- trengtor
- Сверлит текстолит когтями
- Сообщения: 1299
- Зарегистрирован: Вт мар 31, 2015 22:56:07
- Откуда: Мы люди простые, живем в лесу, на пенек молимся
- Контактная информация:
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
[uquote="audiocd",url="/forum/viewtopic.php?p=3305388#p3305388"]Да я пока в этом туго соображаю. Просто странно что никто этого не сделал.[/uquote]
Не рокетсайнс. Свою напишешь
Не рокетсайнс. Свою напишешь
-
technik-1017
- Открыл глаза
- Сообщения: 42
- Зарегистрирован: Вс сен 03, 2017 19:43:57
- Контактная информация:
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
[uquote="audiocd",url="/forum/viewtopic.php?p=3305380#p3305380"]А ни у кого нет такой библиотеки...[/uquote]
обычно используют два варианта:
- вывод текста непосредственно в индикатор (думаю используется не часто и в основном для проверки работы, либо в несложных проектах)
- запись текста в ОЗУ, а выводом на индикатор занимаемся в прерывании (используется, чтобы подключить на вывода дисплея дополнительную периферию, например кнопки или регистры)
второй вариант можете посмотреть здесь
https://ru.files.fm/u/nzqmnnss#/list/
обычно используют два варианта:
- вывод текста непосредственно в индикатор (думаю используется не часто и в основном для проверки работы, либо в несложных проектах)
- запись текста в ОЗУ, а выводом на индикатор занимаемся в прерывании (используется, чтобы подключить на вывода дисплея дополнительную периферию, например кнопки или регистры)
второй вариант можете посмотреть здесь
https://ru.files.fm/u/nzqmnnss#/list/
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
Убрал оффтоп!
Пишем по теме, это не МЯЯЯУ.
Пишем по теме, это не МЯЯЯУ.

- audiocd
- Грызет канифоль
- Сообщения: 292
- Зарегистрирован: Вт мар 15, 2016 23:30:43
- Откуда: Краснодарский край
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
Ну в общем как-то так получилось
По командам совместима со встроенной микросишной. В железе тоже проверена.
Спойлер
Код: Выделить всё
/***
Вывод пользовательских символов
Пример:
const char AV[] = {21,14,4,31,17,17,31,0};
void Custom_Chr()
{
Lcd_Cmd(64); // Запись в CGRAM
for (i = 0; i<=7; i++) Lcd_Chr_Cp(AV[i]);
Lcd_Cmd (0x02); // Return Home
Lcd_Chr(1, 1, 0); // Выводим в 1 строку в первый символ
}
***/
/**
Lcd_Cmd(0x01); // Очистка дисплея
**/
sbit LCD_RS at RB5_bit;
sbit LCD_EN at RB4_bit;
sbit LCD_D4 at RB0_bit;
sbit LCD_D5 at RB1_bit;
sbit LCD_D6 at RB2_bit;
sbit LCD_D7 at RB3_bit;
void LCD_STROBE(void)
{
LCD_EN = 1;
delay_us(2);
LCD_EN = 0;
}
void Lcd_Dat(char c)
{
LCD_D4 = (c & 1) ? 1 : 0;
LCD_D5 = (c & 2) ? 1 : 0;
LCD_D6 = (c & 4) ? 1 : 0;
LCD_D7 = (c & 8) ? 1 : 0;
}
void Lcd_Cmd(char c)
{
LCD_RS = 0;
Lcd_Dat ( c >> 4 );
delay_us(2);
LCD_STROBE();
Lcd_Dat(c);
delay_us(2);
LCD_STROBE();
delay_ms(2);
}
void Lcd_Init()
{
LCD_RS = 0;
LCD_EN = 0;
Lcd_Dat(0x00);
delay_ms(15);
Lcd_Cmd (0x03);
LCD_STROBE();
delay_ms(5);
LCD_STROBE();
delay_ms(5);
LCD_STROBE();
delay_ms(5);
Lcd_Cmd(0x02);
delay_ms(5);
Lcd_Cmd(0x28);
delay_us(40);
Lcd_Cmd(0x06);
delay_us(40);
Lcd_Cmd(0x0C);
}
void Lcd_Chr_Cp(unsigned char c)
{
LCD_RS = 1;
Lcd_Dat ( c >> 4);
delay_us(2);
LCD_STROBE();
Lcd_Dat( c );
delay_us(2);
LCD_STROBE();
delay_ms(2);
}
void Lcd_Out_Cp(const char *q)
{
while (*q) {
Lcd_Chr_Cp(*q++);
}
}
void Lcd_Chr(char row, char col, char c){
if(row == 1)
{
Lcd_Cmd(0x80 + col - 1);
}
else if(row == 2)
{
Lcd_Cmd(0xC0 + col - 1);
}
Lcd_Chr_Cp(c);
}
void Lcd_Out(char row, char col, const char *q){
if(row == 1)
{
Lcd_Cmd(0x80 + col - 1);
}
else if(row == 2)
{
Lcd_Cmd(0xC0 + col - 1);
}
Lcd_Out_Cp(q);
}
По командам совместима со встроенной микросишной. В железе тоже проверена.
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
Добрый вечер! Попался один упёртый дисплей sc1601aslb-sh-gs-r KS0066. При включении с напряжением питания 5 Вольт 8 первых квадратиков и всё. Пробовал подключать и к МК и к LPT компьютера (в режиме и 8 и 4 бит) - не в какую. Нашёл в одном даташите что напряжение питания 3,3 Вольт, попробовал, или не смог настроить контрастность или реально не было изображения совсем. Есть ещё один LCD китайский QAPASS 1602A вроде, так тот вообще всеядный: работает во всех перечисленных ранее режимах: и от 3 и от 5 Вольт, и 8 бит и 4 бит.
Что можно попробовать, что я упустил? Он мог сгореть от 5 В вместо 3,3 Вольт?
Что можно попробовать, что я упустил? Он мог сгореть от 5 В вместо 3,3 Вольт?
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
JOHN2018 писал(а):При включении с напряжением питания 5 Вольт 8 первых квадратиков и всё.
Судя по даташиту питание 3 В
https://www.terraelectronica.ru/pdf/sho ... -XH-HS.pdf
Или подгорел, или скорее всего инициализация неправильная
"Чтобы правильно задать вопрос, нужно знать бо́льшую часть ответа." Ро́берт Ше́кли
Я правильных ответов знаю мало, поэтому не стесняюсь и много спрашиваю.
Я правильных ответов знаю мало, поэтому не стесняюсь и много спрашиваю.
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
Здравствуйте уважаемые друзья!!!Помогите пожалуйста если можете,я собрал DDS генератор на меге 16,индикатор мелтовский LCD MT-16S2R-3FLA нет индикации,программа работает на выходе сигнал есть,а на индикаторе ничего нету,при подаче напряжения стробы на все выводы индикатора приходят но на 2-3 секунды и затухают,индикатор менял,мегу16 тоже менял,читал что контроллер индикатора не проходит инициализацию.а это уже работа с прошивкой,а я в программировании полный ноль,я могу залить прошивку,запрограммировать фуз-биты,вот такая беда,помогите если можете,архив выложу.
- Вложения
-
- DDs-gener-mega16.rar
- (991.17 КБ) 361 скачивание
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
Может остался включенным JTAG? FUSE-бит JTAGEN=0 (изначально запрограммирован).
- audiocd
- Грызет канифоль
- Сообщения: 292
- Зарегистрирован: Вт мар 15, 2016 23:30:43
- Откуда: Краснодарский край
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
xnikolas
Поговорить надо в личке.
Поговорить надо в личке.
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
Нет JTAG выключен.
Последний раз редактировалось xnikolas Вт мар 20, 2018 13:42:01, всего редактировалось 1 раз.
- Starichok51
- Модератор
- Сообщения: 19043
- Зарегистрирован: Сб авг 14, 2010 15:05:51
- Откуда: г. Озерск, Челябинская обл.
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
есть у тебя личка, как и у всех...
Мудрость приходит вместе с импотенцией...
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Когда на русском форуме переходят на Вы, в реальной жизни начинают бить морду.
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
Да-Да Это я что-то смудрил прошу прощенья!!!
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
[uquote="JOHN2018",url="/forum/viewtopic.php?p=3322787#p3322787"]Добрый вечер! Попался один упёртый дисплей sc1601aslb-sh-gs-r KS0066. При включении с напряжением питания 5 Вольт 8 первых квадратиков и всё. Пробовал подключать и к МК и к LPT компьютера (в режиме и 8 и 4 бит) - не в какую. Нашёл в одном даташите что напряжение питания 3,3 Вольт, попробовал, или не смог настроить контрастность или реально не было изображения совсем. Есть ещё один LCD китайский QAPASS 1602A вроде, так тот вообще всеядный: работает во всех перечисленных ранее режимах: и от 3 и от 5 Вольт, и 8 бит и 4 бит.
Что можно попробовать, что я упустил? Он мог сгореть от 5 В вместо 3,3 Вольт?[/uquote]
Процитировал своё сообщение. LCD sc1601aslb-sh-gs-r при питании 3,3 Вольт для контрастности требует -1,28 Вольт, но показывает также первые 8 квадратов. Похоже не проходит инициализация. Может подскажете что подправить? В архиве код и протеус, спасибо.
Что можно попробовать, что я упустил? Он мог сгореть от 5 В вместо 3,3 Вольт?[/uquote]
Процитировал своё сообщение. LCD sc1601aslb-sh-gs-r при питании 3,3 Вольт для контрастности требует -1,28 Вольт, но показывает также первые 8 квадратов. Похоже не проходит инициализация. Может подскажете что подправить? В архиве код и протеус, спасибо.
- Вложения
-
- 8515+lcd перебор символов.rar
- (47.78 КБ) 325 скачиваний
- audiocd
- Грызет канифоль
- Сообщения: 292
- Зарегистрирован: Вт мар 15, 2016 23:30:43
- Откуда: Краснодарский край
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
JOHN2018
Попробуй так
Попробуй так
Код: Выделить всё
// Активизация четырехразрядного режима
lcd_com(0x03);
PORTC |= (1 << EN);
PORTC &= ~(1 << EN);
_delay_ms(10);
lcd_com(0x02);
PORTC |= (1 << EN);
PORTC &= ~(1 << EN);
_delay_ms(1); // можно попробовать уменьшить до _delay_us(200);
lcd_com(0x28);
lcd_com(0x0C);
lcd_com(0x06);
lcd_com(0x01);
_delay_ms(5);
- pony sonata
- Первый раз сказал Мяу!
- Сообщения: 27
- Зарегистрирован: Чт май 24, 2018 09:38:55
- Откуда: Украина
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
кто может поделиться схемкой, как программно управлять контрастом дисплея.
нашел 2 схемки. подскажите какая из них больше подходит?
схема 1:

схема 2:

номиналы со схемы 2:
R2 Resistor 22 KOhm 1/4 Watt 5% Carbon Film [View photo]
R3 Resistor 4.7 KOhm 1/4 Watt 5% Carbon Film [View photo]
R4 Resistor 680 Ohm 1/4 Watt 5% Carbon Film
Capacitors
C1 Electrolytic Capacitor 47 uF 16 Volts
з.ы. дисплей1602,контроллер 328 мега, питание 5в
нашел 2 схемки. подскажите какая из них больше подходит?
схема 1:
Спойлер

схема 2:
Спойлер

номиналы со схемы 2:
Спойлер
R1 Potentiometer 10 KOhm Linear Rotary 1/2WR2 Resistor 22 KOhm 1/4 Watt 5% Carbon Film [View photo]
R3 Resistor 4.7 KOhm 1/4 Watt 5% Carbon Film [View photo]
R4 Resistor 680 Ohm 1/4 Watt 5% Carbon Film
Capacitors
C1 Electrolytic Capacitor 47 uF 16 Volts
з.ы. дисплей1602,контроллер 328 мега, питание 5в
-- Приключения маленькой пони в большом мире электроники --
- Ярослав555
- Поставщик валерьянки для Кота
- Сообщения: 2081
- Зарегистрирован: Пт май 31, 2013 17:14:38
- Откуда: Украина, Винница
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
Как по мне схема 2 как-то логичнее - есть подтяжка в виде R3.
Схема 1 суть такая же, только без подтяжки - значит либо подтяжка на плате дисплея, либо расчет идет на ток самого чипа/экрана, которому я бы не доверял
Схема 1 суть такая же, только без подтяжки - значит либо подтяжка на плате дисплея, либо расчет идет на ток самого чипа/экрана, которому я бы не доверял
- pony sonata
- Первый раз сказал Мяу!
- Сообщения: 27
- Зарегистрирован: Чт май 24, 2018 09:38:55
- Откуда: Украина
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
замерил на дисплее сопротивление между V0 и VDD есть сопротивление 11кОм, т.е. есть подтяжка к плюсу
-- Приключения маленькой пони в большом мире электроники --
- Albert_V
- Друг Кота
- Сообщения: 4119
- Зарегистрирован: Чт сен 12, 2013 00:54:12
- Откуда: ЗаМКАДье. Там, где ЦУП
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
Можно левый вывод R4 подключить непосредственно к выводу порта контроллера, а номинал R4 увеличить до получения "крайней контрастности" при уровне на порте "0".
Если получится что номинал R4 придётся уменьшать - тогда оставляйте схему с транзистором №2.
Я бы ещё добавил диод (в обратном включении) с V0 на VDD чтоб не "прибить" вход V0 при выключении питания. Вероятность "убить" вход хоть и небольшая, но есть.
Если получится что номинал R4 придётся уменьшать - тогда оставляйте схему с транзистором №2.
Я бы ещё добавил диод (в обратном включении) с V0 на VDD чтоб не "прибить" вход V0 при выключении питания. Вероятность "убить" вход хоть и небольшая, но есть.
- pony sonata
- Первый раз сказал Мяу!
- Сообщения: 27
- Зарегистрирован: Чт май 24, 2018 09:38:55
- Откуда: Украина
Re: Работа с ЖКИ на контроллере HD44780 и его аналогах
ну так то оно да - можно через резистор напрямую, но не нравится мне это. хоть там и потребление должно быть мизерное, но через транзистор спокойнее чтоль 
-- Приключения маленькой пони в большом мире электроники --
