Не работает ЖКИ WH0802A1 - Форум Picbasic.ru
Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: ivan_fd 
Форум Picbasic.ru » Программирование МК » PicBasicPro » Не работает ЖКИ WH0802A1 (Подключаю как всегда, а в ответ - тишина!)
Не работает ЖКИ WH0802A1
somlich Дата: Сб, 09.01.2010, 02:45  |                                                                                                                Сообщение # 1
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 35
Репутация: 0   ±
Замечания:   ±
На сайте с 23.02.2009

Статус: Offline

Решил подключить WH0802A1 к PIC 16F628A
RS к RB0, E к RA4, DB4-RA0,DB5-RA1,DB6-RA2,DB7-RA3
Code

DEFINE OSC 20

' Инициализация ЖКИ **********************************************************************
DEFINE LCD_DREG PORTA ' Определяем порт, к которому подключены цепи данных.
DEFINE LCD_DBIT 0 ' Определяем первый вывод, к которому подключена шина данных,

DEFINE LCD_RSREG PORTB ' Определяем порт, к которому подключена цепь RS.
DEFINE LCD_RSBIT 0 ' Определяем вывод, к которому подключена цепь RS.

DEFINE LCD_EREG PORTA ' Определяем порт, к которому подключена цепь E.
DEFINE LCD_EBIT 4 ' Определяем вывод, к которому подключена цепь E.

DEFINE LCD_BITS 4 ' Определяем режим 4 – разрядной шины.
DEFINE LCD_LINES 2 ' Определяем тип ЖКИ.
DEFINE LCD_COMMANDUS 2000 ' Определяем время задержки между командами на ЖКИ.
DEFINE LCD_DATAUS 50 ' Определяем время задержки между посылками данных.
'*****************************************************************************************

' Настрока портов
TRISB = %00000000 ' Установить все выводы PORTB на выход
PORTB = %00000000 ' Установить все выводы PORTB в низкое состояние
TRISA = %00000000 ' Установить все выводы PORTA на выход
PORTA = %00000000  ' Установить все выводы PORTA в низкое состояние
ADCON1 = %00000110 ' Установим все выводы PORTA как цифровые.

s var byte
PAUSE 500
main:
   s=s+1
  LCDOUT $FE, 1 ' Очищаем экран ЖКИ  
   LCDOUT $FE,2,168,112,184,179,101,191 ;Привет
     LCDOUT $FE,$C0,67,192,101,191," ",dec s
   pause 1000
   toggle PORTB.4 'моргаю светодиодом
   toggle PORTB.5  'моргаю светодиодом
goto main  

В итоге на индикаторе пусто. Если контрастность выкрутить то черные квадраты появляются - индикатор работает. Раньше подключал к PIC16F877 - проблем нет. Но там все к PORTB. В чем проблема - не пойму??? Подключено все правильно, раза 4 тестером позванивал. Подтягивающие резисторы по 5,6КОм стоят на 4 адресных линиях. Кварц - внешний на 20МГц. Кстати светодиоды моргают как то не раз в 1с а раз в 2-3 секунды. Странно.

Это мой первый опыт этим МК. С 16F877 проблем нет никаких. Захотелось миниатюризации, блин.

ЯНДЕКС Дата: 09.01.2010
ADMIN Дата: Сб, 09.01.2010, 07:28  |                                                                                                                Сообщение # 2
Администратор
Группа: Администраторы
Ранг:  Специалист
Сообщений: 1097
Репутация: 24   ±
Замечания:   ±
На сайте с 20.08.2007

Статус: Offline

Во-первых, у 628 нет регистра adcon, во-вторых, отключи компараторы:
cmcon = 7
В-третьих, проц выдержит 20 МГц?
somlich Дата: Сб, 09.01.2010, 11:41  |                                                                                                                Сообщение # 3
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 35
Репутация: 0   ±
Замечания:   ±
На сайте с 23.02.2009

Статус: Offline

Выставил конфигурацию @ device pic16F628A, HS_osc, wdt_on, PWRT_ON, BOD_ON, lvp_off, protect_off
с осцилятором HS - светодиоды моргают четко, значит кварц проц тянет. А вот с ЖКИ - тишина.
Компараторы отключил.
brown Дата: Сб, 09.01.2010, 11:48  |                                                                                                                Сообщение # 4
Группа: Модераторы
Ранг:  Помогаю всем
Сообщений: 335
Репутация: 10   ±
Замечания:   ±
На сайте с 18.09.2007

Статус: Offline

PortA.4- открытый сток, нужен подтягивающий резистор.

Век живи - век учись! К концу жизни поймешь, что ничего не знаешь...
sanek Дата: Сб, 09.01.2010, 12:24  |                                                                                                                Сообщение # 5
Группа: Проверенные
Ранг:  Понимаю
Сообщений: 84
Репутация: 0   ±
Замечания:   ±
На сайте с 09.04.2009

Статус: Offline

а вывод LCD-RW подтянут на землю?

Добавлено (09.01.2010, 12.24.20)
---------------------------------------------
сейчас в протеусе запустил но на экране иероглифы может то что вы пытаетесь вывести на экран ваш лсд не понимает.я так понял что надпись должна быть на русском.

Сообщение отредактировал sanek - Сб, 09.01.2010, 12:25
somlich Дата: Сб, 09.01.2010, 12:52  |                                                                                                                Сообщение # 6
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 35
Репутация: 0   ±
Замечания:   ±
На сайте с 23.02.2009

Статус: Offline

Quote (brown)
PortA.4- открытый сток, нужен подтягивающий резистор.

Спасибо, подтянул на 5.6КОм - решились все проблемы!
somlich Дата: Сб, 09.01.2010, 13:12  |                                                                                                                Сообщение # 7
Группа: Проверенные
Ранг:  Начал соображать
Сообщений: 35
Репутация: 0   ±
Замечания:   ±
На сайте с 23.02.2009

Статус: Offline

Quote (sanek)
сейчас в протеусе запустил но на экране иероглифы может то что вы пытаетесь вывести на экран ваш лсд не понимает.я так понял что надпись должна быть на русском.

Это адреса русских символов в знакогенераторе. Работает. Написал программу для перекодировки русских букв непосредственно в код ЖКИ. Добавлю. может кому пригодится smile
Прикрепления: RusForCode_LCD.rar(288Kb)
Ripper Дата: Вс, 18.04.2010, 12:50  |                                                                                                                Сообщение # 8
Группа: Пользователи
Ранг:  Новенький
Сообщений: 12
Репутация: 0   ±
Замечания:   ±
На сайте с 26.02.2010

Статус: Offline

Вы здесь упомянули что в 16F628A нет регистра ADCON, как тогда воспользоваться встроенный АЦП?
Broka Дата: Вс, 18.04.2010, 13:40  |                                                                                                                Сообщение # 9
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 244
Репутация: 9   ±
Замечания:   ±
На сайте с 30.09.2009

Статус: Offline

Ripper: В этом микроконтроллере нет встроеного АЦП, поэтому и нет регистра ADCON cool

Наладчик КИП и А
Сообщение отредактировал Broka - Вс, 18.04.2010, 13:45
Ripper Дата: Вс, 18.04.2010, 14:22  |                                                                                                                Сообщение # 10
Группа: Пользователи
Ранг:  Новенький
Сообщений: 12
Репутация: 0   ±
Замечания:   ±
На сайте с 26.02.2010

Статус: Offline

Quote (Broka)
Ripper: В этом микроконтроллере нет встроеного АЦП, поэтому и нет регистра ADCON

зачем тогда 16F628A аналоговые входы ?
holyuser Дата: Вс, 18.04.2010, 14:25  |                                                                                                                Сообщение # 11
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 233
Репутация: 5   ±
Замечания:   ±
На сайте с 12.12.2007

Статус: Offline

Quote (Ripper)
зачем тогда 16F628A аналоговые входы ?

Потому что есть аналоговые компараторы.
Ripper Дата: Вс, 18.04.2010, 14:33  |                                                                                                                Сообщение # 12
Группа: Пользователи
Ранг:  Новенький
Сообщений: 12
Репутация: 0   ±
Замечания:   ±
На сайте с 26.02.2010

Статус: Offline

Возможно ли как то реализовать определение величины напряжения на них?
Или проще взять какойнить с АЦП?
terrarus Дата: Вс, 18.04.2010, 16:13  |                                                                                                                Сообщение # 13
Группа: Модераторы
Ранг:  Разобрался
Сообщений: 542
Репутация: 16   ±
Замечания:   ±
На сайте с 21.08.2008

Статус: Offline

Аналоговые компараторы и встроенные АЦП совершенно разные вещи.
Если нужены встроенные АЦП нужно взять соответствующий проц. например 16f873A


Если у в Вас что-то не получается, подумай, не стоит ли прочитать инструкцию...!
Ripper Дата: Вс, 18.04.2010, 18:37  |                                                                                                                Сообщение # 14
Группа: Пользователи
Ранг:  Новенький
Сообщений: 12
Репутация: 0   ±
Замечания:   ±
На сайте с 26.02.2010

Статус: Offline

Quote (terrarus)
Аналоговые компараторы и встроенные АЦП совершенно разные вещи. Если нужены встроенные АЦП нужно взять соответствующий проц. например 16f873A

Как можно использовать аналоговые компараторы?
интересует именно сторона "применяемости"

terrarus Дата: Пн, 19.04.2010, 13:36  |                                                                                                                Сообщение # 15
Группа: Модераторы
Ранг:  Разобрался
Сообщений: 542
Репутация: 16   ±
Замечания:   ±
На сайте с 21.08.2008

Статус: Offline

Quote (Ripper)
Как можно использовать аналоговые компараторы?

На http://terrarus.ucoz.ru/proton_plus_ide/index.html в разделе Datasheets/PIC/RUS/Модуль компараторов
есть опиание модуля компараторов PIC-микроконтроллеров на русском языке.


Если у в Вас что-то не получается, подумай, не стоит ли прочитать инструкцию...!
Сообщение отредактировал terrarus - Пн, 19.04.2010, 13:38
Форум Picbasic.ru » Программирование МК » PicBasicPro » Не работает ЖКИ WH0802A1 (Подключаю как всегда, а в ответ - тишина!)
Страница 1 из 11
Поиск: