Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 18.02.2012, 23:58  
Opasif
Частый гость
 
Регистрация: 18.01.2009
Сообщений: 22
Сказал спасибо: 4
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Opasif на пути к лучшему
По умолчанию Не инициализируется mtc-s16208xfyhsgy

Есть LCD. Надписи: на плате mtc-s16208xp-16208x, на этикетке mtc-s16208xfyhsgy 08a.
В datasheet в описании Busy Flag указан контролер KS0066U.
При подаче питания загорается верхняя строка: 16 прямоугольников 8*5 точек.
Никакие манипуляции не меняют его содержимого. Пробовал:
1)инициализацию по datasheet для KS0066U;
2)инициализацию по datasheet для HD44780;
3)не инициализировать вовсе, после паузы подавать данные;
4)менять LCD на такой же.
В Proteus работают варианты 1 и 2. В железе - ни один. Как с ним бороться? Как его инициализировать?
P.S. Трассировка в порядке, PIC-контроллер исправный. Проверял.
Реклама:

Последний раз редактировалось Opasif; 19.02.2012 в 00:04.
Opasif вне форума  
Непрочитано 22.02.2012, 11:25  
Opasif
Частый гость
 
Регистрация: 18.01.2009
Сообщений: 22
Сказал спасибо: 4
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Opasif на пути к лучшему
По умолчанию Re: Не инициализируется mtc-s16208xfyhsgy

Неужели никто не сталкивался с этим LCD?
Opasif вне форума  
Непрочитано 22.02.2012, 14:37  
jump
Почётный гражданин KAZUS.RU
 
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,984
Сказал спасибо: 0
Сказали Спасибо 4,943 раз(а) в 2,371 сообщении(ях)
jump на пути к лучшему
По умолчанию Re: Не инициализируется mtc-s16208xfyhsgy

Сообщение от Opasif Посмотреть сообщение
При подаче питания загорается верхняя строка: 16 прямоугольников 8*5 точек.
Никакие манипуляции не меняют его содержимого. Пробовал:
1)инициализацию по datasheet для KS0066U;
2)инициализацию по datasheet для HD44780;
3)не инициализировать вовсе, после паузы подавать данные;
4)менять LCD на такой же.
Наверно жив, но программа неправильная. АСМ?
1. инициализация 4/8битная?
3. бессмысленно без инициализации
4. замена на другой от другой фирмы?
шпротеус работает с универсальной моделью, не учитывающей разброс по задержкам конкретного производителя. совет - увеличьте максимально задержки и повторите тест, замените на индикатор другого производителя
jump вне форума  
Непрочитано 22.02.2012, 17:51  
Opasif
Частый гость
 
Регистрация: 18.01.2009
Сообщений: 22
Сказал спасибо: 4
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Opasif на пути к лучшему
По умолчанию Re: Не инициализируется mtc-s16208xfyhsgy

У меня 2 одинаковых индикатора, аналогов от других производителей у меня нет. Код написан на АСМе. Инициализация 8битная, как и последующая работа. Пробовал увеличивать время задержек в 2 раза от указанных в datasheet’ах, как для KS0066U, так и HD44780, - никаких изменений. Случайно задел какие-то контакты на задней стороне одного LCD во время работы схемы, обнаружил, что появились какие-то символы, причём много и в 2 строках! Хотя через время экран очистился и видны были прямоугольники только в верхней строке. Контакты между платой и LCD надёжные, не искрят. Что определяет тактовую частоту контроллера LCD и как выполняется синхронизация? Может надо не просто ждать, а опрашивать Busy Flag, тактируя сигналом E?
Opasif вне форума  
Непрочитано 22.02.2012, 19:43  
Vadim_sh
Вид на жительство
 
Регистрация: 29.01.2010
Адрес: Десногорск Смол.обл.
Сообщений: 333
Сказал спасибо: 17
Сказали Спасибо 256 раз(а) в 103 сообщении(ях)
Vadim_sh на пути к лучшему
По умолчанию Re: Не инициализируется mtc-s16208xfyhsgy

а как дела обстоят с контрастностью? настроена?
Vadim_sh вне форума  
Непрочитано 22.02.2012, 22:30  
jump
Почётный гражданин KAZUS.RU
 
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,984
Сказал спасибо: 0
Сказали Спасибо 4,943 раз(а) в 2,371 сообщении(ях)
jump на пути к лучшему
По умолчанию Re: Не инициализируется mtc-s16208xfyhsgy

Opasif,
а как у вас с теорией? выдерживаете перед началом ввода задержку на стабилизацию питания? трижды крестите индикатор начальной командой ширины шины? какой длины строб Е? заземлите R/W, дабы неповадно было писать и "не просто ждать, а опрашивать Busy Flag, тактируя сигналом E"
jump вне форума  
Непрочитано 23.02.2012, 16:10  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Не инициализируется mtc-s16208xfyhsgy

Вот тестовая программка инита дисплея.LCD_Probe.zip
Рассчитано для Мега8 с дефолтными фьюзами (1МГц, внутренний такт). Схема подключения 8-мибитная внутри. Работает и с частотой 2МГЦ, ;МГц, 8МГц. На 8ми, правда, уже есть сбои, но таки работает. Просто выводит бегущей строкой знакогенератор. Пробовал на MT-10S1-1Y (МЭЛТ) и WH2002A (Winstar). В принцыпе, без разницы, какой индикатор.
Вот инит:
PHP код:
;*************************************************  ************
;   
Подпрограмма инициализации дисплея
По даташиту на MT-10S1 2000 года
;*************************************************  ************
IniLcd_8:
        
cbi     ConPort,ao          ;RS в "0" AO
        cbi     ConPort
,rw          ;R/W в "0"
        
cbi     ConPort,en          ;E в "0"
        
wait_15ms                   ;ожидание не менее 15 ms
        ldi     Lcdreg
,0b00110000   ; (установка параметровразрядность
        rcall   SendCom_8           
1я команда
        wait_10ms                   
;ожидание не менее 10 ms
        ldi     Lcdreg
,0b00110000   ; (установка параметровразрядность
        rcall   SendCom_8           
2я команда
        wait_300us                  
;ожидание не менее 0.3 ms
        ldi     Lcdreg
,0b00110000   ; (установка параметровразрядность
        rcall   SendCom_8           
3я команда
        wait_100ms                  
;ожидание не менее 100 ms
        ldi     Lcdreg
,0b00111000   ; (установка параметров)
        
rcall   SendCom_8           4я команда
        wait_100ms                  
;ожидание не менее 100 ms
        ldi     Lcdreg
,0b00001000   ; (Отключение экрана)
        
rcall   SendCom_8           5я команда
        wait_100ms                  
;ожидание не менее 100 ms
        ldi     Lcdreg
,0b00000001   ; (Очистка экрана)
        
rcall   SendCom_8           6я команда
        wait_4ms                    
;ожидание не менее 4 ms
        ldi     Lcdreg
,0b00000110   ; (установка параметров)
        
rcall   SendCom_8           7я команда
        ret
;*************************************************  ************
;   
Подпрограмма записи байта в LCD по шине 8 bit
;*************************************************  ************
SendDat_8:
        
sbi     ConPort,rs          ;AO в "1" RS
        rjmp    s1
SendCom_8
:
        
cbi     ConPort,rs          ;AO в "0" RS
s1
:     cbi     ConPort,rw          ;R/W в "0"
        
out     LcdPort,Lcdreg
        sbi     ConPort
,en          ;E в "1"
        
wait_40us                   ;ожидание не менее 0.04 ms
        cbi     ConPort
,en          ;E в "0"
        
wait_40us                   ;ожидание не менее 0.04 ms
        ret 

Последний раз редактировалось omercury; 23.02.2012 в 16:13.
omercury вне форума  
Непрочитано 23.02.2012, 18:04  
Opasif
Частый гость
 
Регистрация: 18.01.2009
Сообщений: 22
Сказал спасибо: 4
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Opasif на пути к лучшему
По умолчанию Re: Не инициализируется mtc-s16208xfyhsgy

jump, ниже приведенную часть кода проверки занятости я некорректно назвал "тактирование сигналом E", т.к. значение на E_PIN очень похоже на тактовый сигнал:
Код:
	LoopBusy
		BCF		E_PIN
		NOP
		BSF		E_PIN
		BTFSC	PORTB,7
		GOTO	LoopBusy
omercury, Ваш код реализовывает инициализацию по datasheet для HD44780, только с удвоенными, а то и утроенными задержками.
Инициализация KS0066U проще.

Прикладываю проект, чтобы не обвиняли в кривом коде.


Код:
		BTFSS	IS_LCD_ON,0	; если дисплей ещё не инициализирован, то вызвать LCD_INIT
			CALL	LCD_INIT_KS	; выбирается либо эта строка, либо следующая
			;CALL	LCD_INIT_HD
Пробовал увеличивать количество подряд идущих NOP'ов в процедурах LCD_SEND_DATA и LCD_SEND_CMD, не помогло. Менял в этих же процедурах
init_v DELAY_CNT,D'11' на init_v DELAY_CNT,D'20'. В Proteus работает, а в железе - нет.
Вложения:
Тип файла: zip LCD.zip (33.7 Кб, 80 просмотров)
Opasif вне форума  
Непрочитано 25.02.2012, 00:01  
omercury
Почётный гражданин KAZUS.RU
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Не инициализируется mtc-s16208xfyhsgy

Сообщение от Opasif Посмотреть сообщение
Инициализация KS0066U проще.
omercury вне форума  
Непрочитано 25.02.2012, 01:31  
jump
Почётный гражданин KAZUS.RU
 
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,984
Сказал спасибо: 0
Сказали Спасибо 4,943 раз(а) в 2,371 сообщении(ях)
jump на пути к лучшему
По умолчанию Re: Не инициализируется mtc-s16208xfyhsgy

Opasif,
was ist das "BCF E_PIN › NOP › BSF E_PIN Loop"?
зачем вы меандр формируете?
а это что ? "MOVLW B'00111100' ; Function Set: 8-bit, 2-line, 5x11 dots
может 5х8? MOVLW B'00111000'
jump вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с SD, не инициализируется! nerozero Микроконтроллеры, АЦП, память и т.д 19 20.06.2008 10:44


Часовой пояс GMT +4, время: 12:04.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot