М ИКРОКОНТРОЛЛЕРЫ - PT
V :
м. ПУТЫРСКИЙ,
г. Минск
(Окончание. Начало в №2-3/2003)
КОНТРОЛЛЕР
PIC16F84
Табл.12
М нем окод
Н азвание ком анды
ф л аги
П рим ечание
ADDWF
f. cl
С лож ение W с f
С, DC, Z
2, 3
ANDW F
f. d
Л огическое И W и f
Z
2. 3
CLRF
I
Сброс регистра f
Z
3
CLRW
С брос регистра W
Z
CO M F
f. d
И нверсия р е г и с т £ ^ ^ _
Z
2, 3
DECF
f. d
Д екрем ент регистра 1
Z
2, 3
DECFSZ
f, d
Д екрем ент f, пропустить команду, если 0
2, 3
INCF
f, d
И нкрем ент регистра f
Z
2, 3
INCFZ
f. d
И нкрем ент регистра f, пропустить команду, если 0
2, 3
IORWF
1. d
Л огическое ИЛИ W и f
Z
2, 3
MOVE
1, d
П ересы лка регистра I
Z
2, 3
MOV
W F
1
П ересы лка W в f
3
NOP
Х олостая ком анда
RLF
f, d
Сдвиг 1 влево через перенос
с
2, 3
RRI
f. d
Сдвиг f вправо через перенос
с
2, 3
SUEW F
1. d
Вычитание W из f
с.
DC. Z
2, 3
SWAPF
f. d
О бмен местами тетрад в f
2, 3
XORW F
f, d
И склю чаю щ ее ИЛИ W и f
Z
2, 3
ADDLW
k
С лож ение константы с W.
с.
DC, Z
ANDLW
k
Л огическое И константы и W
Z
IORLW
k
Л огическое ИЛИ константы и W
Z
SUBLW
k
Вычитание W из константы .
с,
DC, Z
M OVLW
k
П ересы лка константы в W
XORLW
k
И склю чаю щ ее ИЛИ константы и W
Z
OPTION
Загрузка W в OPTION REG регистр
1
TRIS
F
Загрузка TRIS регистра
1
Б айт о р и е н т и р о в а н н ы е к о м а н д ы
(табл. 12)
Б ит
о р и е н т и р о в а н н ы е
ко м а н д ы
(табл. 13)
П ереходы
(табл. 14)
Замечания и пояснения
Примечание
1.
К о м ан д ы
T R IS
и
OPTION помещены в перечень команд для
совместимости с семейством PIC16C5X. Их
и сп о л ь зо в а н и е не р е ко м е н д у е тс я .
В
PIC16F84 регистры TRIS и OPTION доступ-
ны для чтения и записи как обычные реги-
стры с номером. Предупреждаем, что эти
команды могут не поддерживаться в даль-
нейших разработках PIC16CXX.
Примечание 2.
Когда модифицируется
регистр ввода/вывода, например, MOVF
6,1, значение, используемое для модифи-
кации, считывается непосредственно с но-
жек кристалла. Если значение защелки вы-
вода для ножки, запрограммированной на
вывод, равно “ 1”, но внешний сигнал на
этом выводе “0" из-за “навала” снаружи, то
будет считываться “0".
Примечание
3. Если операндом этой
команды является регистр f1 (и, если до-
пустимо, d = 1), то делитель, если он под-
ключен k TMRO, будет обнулен.
Условия сброса
В PIC16F84 существуют различия меж-
ду вариантами сбросов:
1. Сброс по включению питания.
2. Сброс по внешнему сигналу MCLR
при нормальной работе.
3. Сброс по внешнему сигналу MCLR в
режиме SLEEP
4. Сброс по окончанию задержки таймера W DT при
нормальной работе.
5. Сброс по окончанию задержки таймера W DT в ре-
жиме SLEEP
Некоторые из спецрегистров при сбросе не инициали-
зируются. Они имеют случайное состояние при включе-
нии питания и не изменяются при других видах сбросов.
Другая часть спецрегистров инициализируются в “состо-
яние сброса” при всех видах сброса, кроме сброса по окон-
чанию задержки таймера W DT в режиме SLEEP Просто
этот сброс рассматривается как временная задержка в
нормальной работе. Есть еще несколько исключений. Про-
граммный счетчик всегда сбрасывается в ноль (OOOOh).
Биты статуса ТО и PD устанавливаются или сбрасывают-
ся в зависимости от варианта сброса. Эти биты исполь-
зуются программой для определения природы сброса.
Их значения после сброса приведены в
табл. 15 В
таб-
лице приняты обозначения,
“и”
- не изменяется,
“х”
- не-
известно,
не исполняется, читается как “0”, “? ” - будет
установлен по окончанию записи в EEPROM.
Алгоритм сброса при включении питания
Кристалл PIC16F84 имеет встроенный детектор вклю-
чения питания. Таймер запуска начинает счет выдержки
времени после того, как напряжение питания пересекло
Табл.13
Табл.14
Табл.15
W
Xxxx
xxxx
uuuu
uuuu
Uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
INDF
00h
ГМ RO
Olh
Xxxx
xxxx
uuuu
uuuu
Uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
PCL
02h
0
0
PC + 1
0
0
PC +1
STATUS
03h
0001
lxxx
0000
luuu
UuuO
Ouuu
OOOu
uuuu
0001
Ouuu
uuul
Ouuu
FSR
04h
Xxxx
xxxx
uuuu
uuuu
Uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
PORTA
05h
Xxxx
xxxx
uuuu
uuuu
Uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
PORT B
06h
Xxxx
xxxx
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
TRISA
85h
-2
C-l
1111
C-u
uuuu
C-l
1111
C-l
1111
C-u
uuuu
TRIS B
86h
1111
1111
1111
1111
uuuu
uuuu
1111
1111
1111
1111
uuuu
uuuu
OPTION REG
81h
1111
1111
1111
1111
uuuu
uuuu
1111
1111
1111
1111
uuuu
uuuu
EEDATA
08h
Xxxx
xxxx
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
EEADR
09h
Xxxx
xxxx
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
uuuu
EECON1
88h
C-0
0000
C-0
?000
C-u
uuuu
C-0
?000
C-0
?000
C-u
uuuu
EECON2
89h
PCLATH
OAh
C-0
0000
C-0
0000
C-u
uuuu
C-0
0000
C-0
0000
C-u
uuuu
INTCON
OB h
0000
000x
0000
0000
uuuu
uuuu
0000
OOOu
0000
0000
uuuu
uuuu
М нем окод
Н азвание ком анды
Ф лаги
П рим ечание
BCF
1, d
С брос бита в регистре 1
2,3
BSF
1, d
У становка бита в регистре 1
2,3
BTFSC
1, b
П ропустить команду, если бит равен 0
BTFSS
1. b
П ропустить команду, если бит равен 1
М нем окод
Н азвание команды
Ф лаги
П рим ечание
CALL
k
Вызов подпрограммы
CLRWDT
Сброс W alchdocj таймера
ТО, PD
GOTO
k
_ _П с£еход по адресу
RETLW
k
Возврат из подпрограммы с загрузкой константы в
W
RETF1E
Возврат из прерывания
RETURN
Возврат из подпрограммы
SLEEP
Переход в режим SLEEP
ТО,
PD
4/2003
предыдущая страница 16 Радиолюбитель 2003-04 читать онлайн следующая страница 18 Радиолюбитель 2003-04 читать онлайн Домой Выключить/включить текст