Доброго времени всем! Продолжаю осваивать МК.На этот раз подключаю жк дисплей к pic 877. Взял готовую программу для вывода текста (немного подкорректировал ее под 877.. изначально она была для 628) Вот кусочек,где происходит инициализация дисплея( в качестве алгоритма)
Вроде все верно.но дисплей никак не реагирует..При подачи питания зажигается верхняя строка(все точки во всех сегментах) и больше ничего не происходит.
Должен ли так вести себя дисплей или он неисправен?Даже если запитать дисплей отдельно от схемы-такая же картина!Или что то не так в самой программе?
Раздел: МК для начинающих
;*** ИНИЦИАЛИЗАЦИЯ ЖКИ **********************************
;*** Пауза более 30 мс + FUNCTION SET *******************
movlw .56 ; DB7-0=00111000 8-битный интерф.,2-строчный ЖКИ,шрифт 5х8
movwf M_byte ; записать это значение в байт сообщения
call in_port ; запись в порт
bcf PortC, 0 ; RS=0
bcf PortC, 1 ; RW=0
call pause3
call zapis ; передача в ЖКИ
;*** Пауза более 39 мкс *********************************
call pause1
;*** Продолжение инициализации DISPLAY ON/OFF MODE ******
movlw .14 ; DB7-0=00001110 - вкл.дисплей,вкл.курсор,выкл.мерцание
movwf M_byte ; на RS и R/W уже установл. нужные уровни,т.к. с прошлой
call in_port ; передачи они не изменились - заново их устан-ть не надо
call zapis ; передача в ЖКИ
;*** Пауза более 39 мкс *********************************
call pause1
;*** Продолжение инициализации DISPLAY CLEAR ************
movlw .1 ; DB7...DB0=00000001
movwf M_byte ; записать это значение в байт сообщения
call in_port ; запись в порт
call zapis ; передача в ЖКИ
;*** Пауза более 1,53 мс ********************************
call pause2
;*** Продолжение инициализации ENTRY MODE SET ***********
movlw .6 ; DB7-0=00000110 - автосдв. курсора вправо,сдв.диспл.выкл.
movwf M_byte ; записать это значение в байт сообщения
call in_port ; запись в порт
call zapis ; передача в ЖКИ
;*** Пауза более 39 мкс *********************************
call pause1
Вроде все верно.но дисплей никак не реагирует..При подачи питания зажигается верхняя строка(все точки во всех сегментах) и больше ничего не происходит.
Должен ли так вести себя дисплей или он неисправен?Даже если запитать дисплей отдельно от схемы-такая же картина!Или что то не так в самой программе?
Раздел: МК для начинающих