Не работает ЖКИ WH0802A1
|
|
somlich |
Дата: Сб, 09.01.2010, 02:45 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 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 проблем нет никаких. Захотелось миниатюризации, блин.
|
|
|
|
ADMIN |
Дата: Сб, 09.01.2010, 07:28 | Сообщение # 2 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Во-первых, у 628 нет регистра adcon, во-вторых, отключи компараторы: cmcon = 7 В-третьих, проц выдержит 20 МГц?
|
|
|
|
somlich |
Дата: Сб, 09.01.2010, 11:41 | Сообщение # 3 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 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 |
Группа:
Пользователи
Ранг:
Помогаю всем
Сообщений:
333
Замечания:
±
На сайте с 18.09.2007
Статус:
Offline
|
PortA.4- открытый сток, нужен подтягивающий резистор.
Век живи - век учись! К концу жизни поймешь, что ничего не знаешь...
|
|
|
|
sanek |
Дата: Сб, 09.01.2010, 12:24 | Сообщение # 5 |
Группа:
Проверенные
Ранг:
Понимаю
Сообщений:
84
Замечания:
±
На сайте с 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
Замечания:
±
На сайте с 23.02.2009
Статус:
Offline
|
Quote (brown) PortA.4- открытый сток, нужен подтягивающий резистор. Спасибо, подтянул на 5.6КОм - решились все проблемы!
|
|
|
|
somlich |
Дата: Сб, 09.01.2010, 13:12 | Сообщение # 7 |
Группа:
Проверенные
Ранг:
Начал соображать
Сообщений:
35
Замечания:
±
На сайте с 23.02.2009
Статус:
Offline
|
Quote (sanek) сейчас в протеусе запустил но на экране иероглифы может то что вы пытаетесь вывести на экран ваш лсд не понимает.я так понял что надпись должна быть на русском. Это адреса русских символов в знакогенераторе. Работает. Написал программу для перекодировки русских букв непосредственно в код ЖКИ. Добавлю. может кому пригодится
|
|
|
|
Ripper |
Дата: Вс, 18.04.2010, 12:50 | Сообщение # 8 |
Группа:
Пользователи
Ранг:
Новенький
Сообщений:
12
Замечания:
±
На сайте с 26.02.2010
Статус:
Offline
|
Вы здесь упомянули что в 16F628A нет регистра ADCON, как тогда воспользоваться встроенный АЦП?
|
|
|
|
Broka |
Дата: Вс, 18.04.2010, 13:40 | Сообщение # 9 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
253
Замечания:
±
На сайте с 30.09.2009
Статус:
Offline
|
Ripper: В этом микроконтроллере нет встроеного АЦП, поэтому и нет регистра ADCON
Наладчик КИП и А
Сообщение отредактировал
Broka - Вс, 18.04.2010, 13:45
|
|
|
|
Ripper |
Дата: Вс, 18.04.2010, 14:22 | Сообщение # 10 |
Группа:
Пользователи
Ранг:
Новенький
Сообщений:
12
Замечания:
±
На сайте с 26.02.2010
Статус:
Offline
|
Quote (Broka) Ripper: В этом микроконтроллере нет встроеного АЦП, поэтому и нет регистра ADCON зачем тогда 16F628A аналоговые входы ?
|
|
|
|
holyuser |
Дата: Вс, 18.04.2010, 14:25 | Сообщение # 11 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
228
Замечания:
±
На сайте с 12.12.2007
Статус:
Offline
|
Quote (Ripper) зачем тогда 16F628A аналоговые входы ? Потому что есть аналоговые компараторы.
|
|
|
|
Ripper |
Дата: Вс, 18.04.2010, 14:33 | Сообщение # 12 |
Группа:
Пользователи
Ранг:
Новенький
Сообщений:
12
Замечания:
±
На сайте с 26.02.2010
Статус:
Offline
|
Возможно ли как то реализовать определение величины напряжения на них? Или проще взять какойнить с АЦП?
|
|
|
|
terrarus |
Дата: Вс, 18.04.2010, 16:13 | Сообщение # 13 |
Группа:
Пользователи
Ранг:
Помогаю всем
Сообщений:
451
Замечания:
±
На сайте с 21.08.2008
Статус:
Offline
|
Аналоговые компараторы и встроенные АЦП совершенно разные вещи. Если нужены встроенные АЦП нужно взять соответствующий проц. например 16f873A
Если у в Вас что-то не получается, подумай, не стоит ли прочитать инструкцию...!
|
|
|
|
Ripper |
Дата: Вс, 18.04.2010, 18:37 | Сообщение # 14 |
Группа:
Пользователи
Ранг:
Новенький
Сообщений:
12
Замечания:
±
На сайте с 26.02.2010
Статус:
Offline
|
Quote (terrarus) Аналоговые компараторы и встроенные АЦП совершенно разные вещи. Если нужены встроенные АЦП нужно взять соответствующий проц. например 16f873A Как можно использовать аналоговые компараторы? интересует именно сторона "применяемости"
|
|
|
|
terrarus |
Дата: Пн, 19.04.2010, 13:36 | Сообщение # 15 |
Группа:
Пользователи
Ранг:
Помогаю всем
Сообщений:
451
Замечания:
±
На сайте с 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
|
|
|
|