A A A A Автор Тема: Проблема с подключением ЖКИ  (Прочитано 6236 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Василий ВершининАвтор темы

  • *****
  • Сообщений: 3 717
  • Благодарностей: 122
  • Per anus ad astra
    • Skype - vasiliy_vershinin
    • Сообщения от Василий Вершинин
Проблема с подключением ЖКИ
« : 15 Фев 2009 [13:06:13] »
После подключения ЖКИ MT–16S2D к PIC16F877 и включения питания, на экран ничего не выводится, хотя в остальном, прошивка нормально работает.

Текст программы на МикроСи

void main(void)
{
PORTD = 0;
TRISD = 0;
Lcd_Init(&PORTD);
Lcd_Cmd(Lcd_CLEAR);
Lcd_Cmd(Lcd_CURSOR_OFF);
Lcd_Out(1, 1, text);
}


В "протеусе" все нормально работает.

Оффлайн TranceWAVE

  • ****
  • Сообщений: 257
  • Благодарностей: 3
    • Сообщения от TranceWAVE
Re: Проблема с подключением ЖКИ
« Ответ #1 : 15 Фев 2009 [15:50:43] »
я когда-то подключал ЖКИ к PIC16F877, но писал на ассемблере программку. и индикатор не помню какой... 128х64 точек. могу, если надо, выкопать свой код отвечающий за инициализацию и вывод на ЖКИ

Оффлайн Александр Л.

  • *****
  • Сообщений: 3 684
  • Благодарностей: 49
  • Мне нравится этот форум!
    • Сообщения от Александр Л.
Re: Проблема с подключением ЖКИ
« Ответ #2 : 15 Фев 2009 [16:49:53] »
 Василий, а вы уверены, что индикатор рабочий? Переполюсовки питания не было? МЭЛТ горит сразу.


Оффлайн Александр Л.

  • *****
  • Сообщений: 3 684
  • Благодарностей: 49
  • Мне нравится этот форум!
    • Сообщения от Александр Л.
Re: Проблема с подключением ЖКИ
« Ответ #3 : 15 Фев 2009 [18:28:46] »
   Василий, я не знаю микро си и процессора, но могу сделать предположение, что встроенные в компилятор процедуры написаны исходя из опроса готовности индикатора. Схемы включения вы не привели. А у вас насколько я понимаю, порт D полностью запрограммирован на вывод, а для опроса готовности должен быть хотя бы один ввод.

Оффлайн Александр Л.

  • *****
  • Сообщений: 3 684
  • Благодарностей: 49
  • Мне нравится этот форум!
    • Сообщения от Александр Л.
Re: Проблема с подключением ЖКИ
« Ответ #4 : 15 Фев 2009 [21:57:51] »
  Володь, странная ссылка, здесь микро си и микрочип, а по ссылке CodeVisionAVR и atmega.
Контроллер KS0066 и HD44780 идентичны. Это я могу сказать не по описаниям, а по практике. На моей макетке на которой отлаживался и контроллер колеса фильтров, и контроллер фокусера, и контроллер ч/б камеры,  установлен ЖКИ DV16230 без подсветки на KS0066. Также я собирал контроллер фокусера на DV16230 с подсветкой и использовал 4-х строчный  ЖКИ Data Vision на KS0066. На HD44780 я использовал какой-то китайский ЖКИ, на помню какой. Помимо всего этого в ЖКИ МЭЛТ стоит контроллер на основе вентильной матрицы отечественной разработки – делают его в Зеленограде. Использовал как МТ16S2H так и МТ16S2D. Все эти ЖКИ, помимо забытых, работают в моих поделках под одной микропрограммой и следовательно имеют одну систему команд.

Тексты микропрограмм есть на конфе в соответствующих темах.

  Проверить работоспособность ЖКИ косвенно можно так. Если подать питание, то без всяких управляющих сигналов в верхней строке должны во все знакоместа быть выведены символы  с полностью заполненным черными точками знакоместами. Для МЭЛТ придется регулировать  контрастность, поскольку она установлена в оптимум на заводе.
 
 Так используется сигнал готовности или нет?


Оффлайн Василий ВершининАвтор темы

  • *****
  • Сообщений: 3 717
  • Благодарностей: 122
  • Per anus ad astra
    • Skype - vasiliy_vershinin
    • Сообщения от Василий Вершинин
Re: Проблема с подключением ЖКИ
« Ответ #5 : 15 Фев 2009 [22:46:17] »
Да, только 3 ногу на землю подключили, для максимальной контрастности

Оффлайн Василий ВершининАвтор темы

  • *****
  • Сообщений: 3 717
  • Благодарностей: 122
  • Per anus ad astra
    • Skype - vasiliy_vershinin
    • Сообщения от Василий Вершинин
Re: Проблема с подключением ЖКИ
« Ответ #6 : 15 Фев 2009 [23:28:26] »
Сейчас мне Алексей Пронин позвонил, проверил дисплей таким образом - ноль эмоций

Оффлайн Александр Л.

  • *****
  • Сообщений: 3 684
  • Благодарностей: 49
  • Мне нравится этот форум!
    • Сообщения от Александр Л.
Re: Проблема с подключением ЖКИ
« Ответ #7 : 15 Фев 2009 [23:36:32] »
  Не надо ничего покупать, все будет работать, если сам ЖКИ цел. Вновь купленный по всей видимости тоже не будет работать, если есть ошибка в микропрограммах.
   Выше я в одном месте ошибся насчет бита готовности. Он доступен естественно через регистр команд.
   Предположим все таки, что встроенные в компилятор микропрограмы рассчитаны на работу с битом готовности. В этом случае разряд RD/WR не надо землить, а надо подключить к микропроцессору, чтобы он имел возможность читать из ЖКИ. Такое предположение логично хотя бы потому, что разные ЖКИ имеют разную скорость обмена.




Оффлайн Александр Л.

  • *****
  • Сообщений: 3 684
  • Благодарностей: 49
  • Мне нравится этот форум!
    • Сообщения от Александр Л.
Re: Проблема с подключением ЖКИ
« Ответ #8 : 15 Фев 2009 [23:40:50] »
  Володь, жаль ты убрал подробное описание процедур работы с ЖКИ, там похоже была процедурка, которая говорила на какие конкретно биты порта микропроцессора выводятся пины ЖКИ - wr, rs, en, d4-d7. Сам индикатор сейчас у Алексея дома?
 

Оффлайн Александр Л.

  • *****
  • Сообщений: 3 684
  • Благодарностей: 49
  • Мне нравится этот форум!
    • Сообщения от Александр Л.
Re: Проблема с подключением ЖКИ
« Ответ #9 : 15 Фев 2009 [23:49:04] »
Вот схема подключения:

void main() {
  TRISD = 0;                         // PORTD - выход
  Lcd_Config(&PORTD,1,2,0,3,5,4,6);  // Инициализация PORTD для работы с LCD
  Lcd_Cmd(Lcd_CURSOR_OFF);           // Выключение курсора
  Lcd_Out(1, 1, text);               // Вывод текста на LCD
}


  В высвеченной строке семь параметров - 4 бита данных, а остальные ? Могут быть только WR,RS,EN.
начит все таки WR/RD описан, а в схеме заземлен.

Оффлайн Александр Л.

  • *****
  • Сообщений: 3 684
  • Благодарностей: 49
  • Мне нравится этот форум!
    • Сообщения от Александр Л.
Re: Проблема с подключением ЖКИ
« Ответ #10 : 16 Фев 2009 [00:10:23] »
  Все строится конечно на  предположениях.
Note: Only Lcd_Config and Lcd_Init routines use the RW pin (RW pin is configured as output and set to zero). If the user needs this pin for other purposes, it can be reconfigured after Lcd_Config or Lcd_Init call. Кто знает, что это значит? Интерпретировать можно по разному. Я бы попробовал подключить WR к микропроцессору.

Могу проверить индикатор, чтобы была одна степень свободы. Если это нужно пусть Алексей мне позвонит, но уже не сейчас, ребенок спит.
 
« Последнее редактирование: 16 Фев 2009 [00:25:20] от Александр Л. »

Оффлайн Александр Л.

  • *****
  • Сообщений: 3 684
  • Благодарностей: 49
  • Мне нравится этот форум!
    • Сообщения от Александр Л.
Re: Проблема с подключением ЖКИ
« Ответ #11 : 16 Фев 2009 [00:15:36] »
  В каком смысле не горит? не горит  подсветка?

Оффлайн Василий ВершининАвтор темы

  • *****
  • Сообщений: 3 717
  • Благодарностей: 122
  • Per anus ad astra
    • Skype - vasiliy_vershinin
    • Сообщения от Василий Вершинин
Re: Проблема с подключением ЖКИ
« Ответ #12 : 16 Фев 2009 [00:18:01] »
На подсветку там отдельные выводы, их вообще не трогали

Оффлайн Александр Л.

  • *****
  • Сообщений: 3 684
  • Благодарностей: 49
  • Мне нравится этот форум!
    • Сообщения от Александр Л.
Re: Проблема с подключением ЖКИ
« Ответ #13 : 16 Фев 2009 [00:18:20] »
Note: Only Lcd_Config and Lcd_Init routines use the RW pin (RW pin is configured as output and set to zero)
Т.е. RW на самом деле нигде больше не изменяется, только выставляется при инициализации.

Может дело в том, что в коде в стартовом сообщении не указана конфигурация подключения шины данных D4-D7 к пинам порта D ?  ???


Да, вот эта строчка должна присутствовать - Lcd_Config(&PORTD,1,2,0,3,5,4,6);
А не эта - Lcd_Init(&PORTD); из первого сообщения темы.




Оффлайн Василий ВершининАвтор темы

  • *****
  • Сообщений: 3 717
  • Благодарностей: 122
  • Per anus ad astra
    • Skype - vasiliy_vershinin
    • Сообщения от Василий Вершинин
Re: Проблема с подключением ЖКИ
« Ответ #14 : 16 Фев 2009 [00:20:09] »
Отличие в этих строчках, судя по описанию в том, что Lcd_Init(&PORTD); инициализирует экран с распиновкой по умолчанию, а  Lcd_Config(&PORTD,1,2,0,3,5,4,6); - с произвольным подключением в пределах заданного порта, в данном случае D
« Последнее редактирование: 16 Фев 2009 [00:21:59] от Василий Вершинин »

Оффлайн Александр Л.

  • *****
  • Сообщений: 3 684
  • Благодарностей: 49
  • Мне нравится этот форум!
    • Сообщения от Александр Л.
Re: Проблема с подключением ЖКИ
« Ответ #15 : 16 Фев 2009 [00:22:04] »
  Символы забой, о которых я писал высвечиваются только при большой контрастности, а у МЭЛТ индикаторов она выставлена в оптимум - ничего не будет видно, надо покрутить контрастность, по памяти заземлить 3 пин.

Оффлайн Василий ВершининАвтор темы

  • *****
  • Сообщений: 3 717
  • Благодарностей: 122
  • Per anus ad astra
    • Skype - vasiliy_vershinin
    • Сообщения от Василий Вершинин
Re: Проблема с подключением ЖКИ
« Ответ #16 : 16 Фев 2009 [00:23:37] »
Цитата
Пусть перекинет pin RW(сейчас земля) на RD0. Похоже дисплей ничего послать контроллеру не может.
Он уже дрыхнет

Цитата
Символы забой, о которых я писал высвечиваются только при большой контрастности, а у МЭЛТ индикаторов она выставлена в оптимум - ничего не будет видно, надо покрутить контрастность, по памяти заземлить 3 пин.

так и сделали

Оффлайн Александр Л.

  • *****
  • Сообщений: 3 684
  • Благодарностей: 49
  • Мне нравится этот форум!
    • Сообщения от Александр Л.
Re: Проблема с подключением ЖКИ
« Ответ #17 : 16 Фев 2009 [00:26:21] »
  Так черные прямоугольники на знакоместах были видны или нет?

Оффлайн Василий ВершининАвтор темы

  • *****
  • Сообщений: 3 717
  • Благодарностей: 122
  • Per anus ad astra
    • Skype - vasiliy_vershinin
    • Сообщения от Василий Вершинин
Re: Проблема с подключением ЖКИ
« Ответ #18 : 16 Фев 2009 [00:28:06] »
Говорит, что при подаче питания дисплей не изменился. А у них должна быть контрастность как у нормально отображаемых символов?

Оффлайн Александр Л.

  • *****
  • Сообщений: 3 684
  • Благодарностей: 49
  • Мне нравится этот форум!
    • Сообщения от Александр Л.
Re: Проблема с подключением ЖКИ
« Ответ #19 : 16 Фев 2009 [00:34:33] »
  При подаче питания и подаче нулевого напряжения на V0 - 3 пин в первой строке должны быть видны черные прямоугольники - полностью забитое черным знакоместо - символ забой.
Во второй строке они тоже могут быть видны, но значительно меньшей контрастности.
  Завтра вечером или послезавтра утром, раз не договорились я могу встретиться с Алексеем на Калужской - я там работаю и проверить индикатор на рабочем контроллере. Он может меня ловить по сотовому начиная с 7:30 по 7:40, тогда можно встретиться и завтра утром. Обычно я все таки выхожу из мтеро Новые Черемушки примерно в 8:30 утра, мы с Алексеем уже так неоднократно встречались, он в курсе.