Страница 39 из 123

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Вс ноя 13, 2011 12:16:06
Vlad0o
у дисплея не должна гореть верхняя строка после инициализации. только как произвести инициализацию "без подключенных линий управления\данных" я не знаю.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Вс ноя 13, 2011 13:05:42
vladsol
Имел в виду внутреннюю инициализацию \ самотестирование (как еще назвать:) ) самого дисплея =)
В общем, выходит, высокий уровень на D0-D7 по-умолчанию - нормально. Все работает.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Вс ноя 20, 2011 12:04:06
ВитГо
использую 4х проводное подключение данного дисплея.
дисплей если вдруг важно 16х2

в драйвере дисплея заметил запрет прерываний при выполнении действий записи\чтения - меня это не устраивает (У меня в прерывании приоритетный процесс висит) соответственно "лишние" на мой взгляд команды я повыкидывал "наФиг"...
так же мне не нужны подпрограммы чтения данных\команд с дисплея (ну это особо не опасаясь выкинул)

в чем могу поймать грабли ?

Файлы прилагаю..

p.s. базовые файлы получил вместе с PinBoard (это типа как указание на первоначальное авторство)

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Вс ноя 20, 2011 17:42:57
BVS
ВитГо писал(а):использую 4х проводное подключение данного дисплея.
дисплей если вдруг важно 16х2

в драйвере дисплея заметил запрет прерываний при выполнении действий записи\чтения - меня это не устраивает (У меня в прерывании приоритетный процесс висит) соответственно "лишние" на мой взгляд команды я повыкидывал "наФиг"...
так же мне не нужны подпрограммы чтения данных\команд с дисплея (ну это особо не опасаясь выкинул)

в чем могу поймать грабли ?

Файлы прилагаю..

p.s. базовые файлы получил вместе с PinBoard (это типа как указание на первоначальное авторство)
Да если портом не пользуется больше ни кто то пролезит

в BusyWait запрещать нет смысла так как она только читает
но лучьше сделать вот так:

Код: Выделить всё

PortIn:	CLI
			IN		R16,DATA_DDR	; Данные из DDR в регистр
			ANDI	R16,0x0F		; Отдавливаем старшую тетраду - нам нужно сохранить младшую и обнулить старшую
			OUT		DATA_DDR,R16	; Выдаем результат в порт.

			IN		R16,DATA_PORT	; Берем данные из порта 
			ORI		R16,0xF0		; Выставляем все биты старшей тетрады, не трогая младшую
			OUT		DATA_PORT,R16	; Выдаем в порт
		SEI
			RET		
;=================	
PortOut:CLI
			IN		R16,DATA_DDR	; Данные из ДДР в регистр
			ORI		R16,0xF0		; Выставляем все биты старшей тетрады, не трогая младшую
			OUT		DATA_DDR,R16	; Выдаем данные в порт
		SEI
			RET		
тоже и в "DATA_WR" запретил, изменил порт, разрешил сразу перед "LCD_Delay"

P.S. только не делайте длинные прерывания
а запрет в BusyWait у меня мешал динамической индикации на параллельном светодиодном дисплее

P.S.2 забыл, он же там в стеке тарит тетраду, поэтому или брать 2 раза или запрещать на время процедуры

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Пт дек 02, 2011 00:46:44
FeCat
Учусь работать с HD44780, купил на ebay у китайцев один на пробу, нонэйм. Собрал на макетке, вывожу слово – он вставляет по пробелу между каждым символом (в протеусе работает нормально). Подключил канал строба (E) через резистор 1,2к, и добавил со стороны дисплея шунтирующий на землю конденсатор, пробелы пропали. Это глюк конкретного дисплея, или мне очень не повезло с наводками (макетки без пайки вроде как к ним сильно подверженны)?

И ещё вопрос.
В прайсе интернет магазина для всех HD44780 дисплеев написано в описании либо «12:00» либо «6:00», что это значит?

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Пт дек 02, 2011 03:08:54
Леонид Иванович
FeCat писал(а):написано в описании либо «12:00» либо «6:00», что это значит?
http://www.gaw.ru/html.cgi/txt/app/lcd/viev.htm

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Ср дек 07, 2011 18:34:48
acvarium
Сразу к проблеме:
Дисплей работает правильно в 50 % случаев. В остальных случаях показывает какую-то символьную кашу. Вылоды Е и RS подмаял на землю через резистор 5К1.
К сообщению прикрепил файл исходника на MPASM для контроллера PIC16F877.
Тут можно посмотреть видео работы прибора: http://www.youtube.com/watch?v=x0g-v2ff ... e=youtu.be

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 09:35:10
Gudd-Head
acvarium писал(а):Вылоды Е и RS подмаял на землю через резистор 5К1.
WTF?

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 10:29:49
acvarium
Это, чтоб в отсутствии сигнала от микроконтроллера на этих выводах было определено значение 0. Я подозревал, что ЖКИ ведет себя подобным образом потому, что в момент включения на выводе Е значение не определено и в 50 % случаев определяется как 1. Возможно я не прав.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 10:33:42
Gudd-Head
acvarium писал(а):Это, чтоб в отсутствии сигнала от микроконтроллера на этих выводах было определено значение 0.
Хитро... интересно, так делает ещё кто-нибудь? :)

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 10:35:14
МитяРа
Если на вход необходимо подать ноль, то его просто сажают на GND..
Единственное исключение - сканирование внешней клавиатуры.. :tea:

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 10:37:00
Gudd-Head
acvarium писал(а):Тут можно посмотреть видео работы прибора: http://www.youtube.com/watch?v=x0g-v2ff ... e=youtu.be
А что делает кнопка и что должно происходить при нажатии?

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 10:48:51
acvarium
Кнопка RESET, она соединяет + на землю.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 10:54:04
Gudd-Head
acvarium писал(а):соединяет + на землю.
"+" на землю будет КЗ. Схему в студию.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 11:07:27
acvarium
http://www.kosmodrom.com.ua/razrabotka/ ... _schem.pdf
Кнопка RESET на схеме называется S1.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 11:10:49
Gudd-Head
acvarium писал(а):Кнопка RESET на схеме называется S1.
У вас в программе (не смотрел) инициализация дисплея идёт сразу после ресета?
Если так, то про дребезг слышали? Тогда перед инициализацией вставьте задержку 50...100 мс и/или кондёр параллельно S1.
И ещё: если включать-выключать питание (а не ресетом) дисплей нормально инициализируется?

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 11:12:51
acvarium
Ой, не, вру. Кнопка SW1
При включении-выключении питания дисплей работает как-же.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 11:16:29
Gudd-Head
acvarium писал(а):При включении-выключении питания дисплей работает как-же.
Как у вас организована задержка между командами (инициализации) — по таймеру или опросом бита готовности?

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 11:21:04
acvarium
Можно сказать по таймеру. В программе есть несколько процедур задержки, которые вызываются в нужное время.

Re: Работа с ЖКИ на контроллере HD44780 и его аналогах

Добавлено: Чт дек 08, 2011 11:23:05
Gudd-Head
acvarium писал(а):Можно сказать по таймеру. В программе есть несколько процедур задержки, которые вызываются в нужное время.
Всё естессно по даташиту?
На схеме не видно подключение дисплея.