МИКРОКОНТРОЛЛЕРЫ
PM
лера или действия помехи может нарушить все дальнейшее фун-
кционирование ЖКИ, так как нарушится подача команд, может
потеряться флаг занятости и т.д. Чтобы этого не произошло, в
контроллер введена функция синхронизации интерфейса, обес-
печивающая правильный порядок следования данных в 4-х раз-
рядном интерфейсе: любое изменение ситалов RS или RW сбра-
сывает селектор данных в начальное состояние. Это значит что
любое изменение режима работы интерфейса (даже проверка
“Флага занятости”) автоматически приводит его в начальное со-
стояние. С другой стороны, изменять состояние RS и RW между
импульсами Е во время подачи одной команды не разрешается.
Текущий адрес, по которому осуществляется обращение к
памяти (DDRAM и CGRAM), а также определяется положение
курсора на экране, задается счетчиком текущего адреса АС
(Address Counter). Счетчик имеет функции сброса в нулевое со-
стояние, установки заданного состояния, инкрементирования и
декрементирования. Сброс адреса АС в 0 производится коман-
дами “Очистка дисплея” и “Возврат в начальное состояние”. Ус-
тановка произвольного адреса АС осуществляется командами
"Установка адреса DDRAM” и “Установка адреса CGRAM”. В этом
случае новый адрес записывается в АС из регистра команд IR.
Этими же командами устанавливается тип памяти, к которой
производятся все последующие обращения. Инкрементирова-
ние или декрементирование адреса АС может производиться
следующими командами: “Запись в память” и “Чтение из памя-
ти”. Направление счета определяется битом “ГО” команды “Ус-
тановка режима ввода данных”, “Сдвиг курсора”, в которой оп-
ределяется также и направление счета. При обращении к
ООВАМ порядок счета следующий.
Для однострочного режима:
- инкрементирование: 0,1, 2,.
.. 78, 79, 0,1, 2.
..
-декрементирование: 0, 79, 78, 77,.
.. 2,1,0, 79.
..
- при установке произвольного адреса большего 79 счетчик
инкрементируется до 127 и далее переходит в 0.
Для двухстрочного режима:
- инкрементирование: 0, 1,2, .
.. 38, 39, 64, 65, .
.. 102,
103, 0, 1, .
..
-декрементирование: 0, 103, 102, .
.. 65, 64, 39, 38, .
.. 2,
1, 0, 103, .
..
- при установке произвольного адреса большего 103 счетчик
инкрементируется до 127 и далее переходит в 0.
В качестве примера работы сЖКИ ниже приведена схема вклю-
чения и программа. Здесь представлен вариант с использовани-
ем четырехразрядного интерфейса для управления контроллером
ЖКИ, который нашел наибольшее применение. В качестве внеш-
него контроллера используется РКП 6(84. Схема для управления
ЖКИ под управлением Р1С16(84 приведена на рис. 8. Программа
написана на языке МРАЭМ. Подробное описание языка и контрол-
лера можно получить на сайте http:Wwww.mlcrochip.ru, и там же
скачать программу компилятор МРАЭМ.
Программа для PIC16F84
Программа для PIC16F84
LcdRw
equ
3
сигнал R/W Led
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*******************
LcdRs
equ
2
сигнал RS Led
*
Расположение выводов
Ini con Equ
B' 00000000’
; TMR0 -> отключение
*
-
прерывания
*
PORTA:
Ini opt Equ
B' 00000010’
pull-up установка в
*
0 -
высокое состояние
*
2 -
. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
*
3 -
; Эта программа начинается с инициализации
*
PORTB:
Init
bsf
STATUS, RP0
Bank 1
0 -3KKH Display E
movlw
Ini_opt ; pull-up on
*
1-
movwf
OPTION REG
*
2- LCD Display RS
movlw
в'iiiiiooo’
RAO * . RA2 -выход.
*
3- LCD Display R/W
RA3, RA4 -вход
*
4-7 LCD Display D4 .
. D7
movwf
TRISA
;
*
movlw
B'00000000’
PortB
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
movwf
TRISB
bef
STATUS, RP0
; Bank 0
Матричный ЖКИ
clrf
PORTA
clrf
PORTB
Тактовая частота: 4 MHz
movlw
Ini con ; Interupt disable
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
movwf
INTCON
Подключение дополнительной библиотеки для PIC16f84
call
InitLCD
Вызов подпрограммы
tinclude <P16f84. INO
;
инициализации дисплея
; Установка конфигурации
; Вывод на ЖКИ слова "Hello"
;
CONFIG
PWRTE ON &
WDT OFF &
XT
osc
movlw
"H"
movwf
LcdDaten
***************************************************************
call
OutLcdDaten
;
Описание переменных
movlw
"E"
movwf
LcdDaten
w copy
Equ
0x20
call
OutLcdDaten
5 copy
Equ
0x21
movlw
"L"
LcdDaten
Equ
0x22
movwf
LcdDaten
LcdStatus Equ
0x23
call
OutLcdDaten
loops
EQU
0x24
movlw
“L"
loops2
EQU
0x25
movwf
LcdDaten
call
OutLcdDaten
;
Описание констант
movlw
"O"
movwf
LcdDaten
PORTC
equ
PORTB
; LCD-порт управления
call
OutLcdDaten
PORTO
equ
PORTB
;
LCD-порт данных
LcdE
equ
0
; сигнал E -Led
sleep
1 /2 0 0 3
R e
if
-
предыдущая страница 18 Радиолюбитель 2003-01 читать онлайн следующая страница 20 Радиолюбитель 2003-01 читать онлайн Домой Выключить/включить текст