Когда используется прескаллер, низкий и высокий уровень
сигнала на его входе должны быть не менее 10 нс. Таким обра-
зом, общие требования к внешнему сигналу, когда делитель
подключен, таковы:
Trt = TMRO period >= (4tosc + 40ns)/N;
Trth = TMRO high time >= 10ns;
Trtl = TMRO low time >= 10ns.
Так как выход пределигеля синхронизируется внутренним
сигналом тактовой частоты, то существует небольшая задер-
жка между появлением фронта внешнего сигнала и временем
фактического инкремента TMRO. Эта задержка находится в
диапазоне между 3*tosc и 7*tosc. Таким образом, измерение
интервала между событиями будет выполнено с точностью
4*tosc (1 мкс при кварце 4 МГц).
Регистр статуса
Регистр статуса (03h) содержит арифметические флаги АЛУ,
состояние контроллера при сбросе и биты выбора страниц для
памяти данных. Регистр доступен для любой команды так же,
как любой другой регистр. Однако, биты ТО и PD устанавлива-
ются аппаратно и не могут быть записаны в статус программ-
но. Это следует иметь в виду при выполнении команды с ис-
пользованием регистра статуса. Например, команда CLRF 03h
обнулит все биты, кроме битов ТО и PD, а затем установит бит
Z=1. После выполнения этой команды регистр статуса может
и не иметь нулевое значение (из-за битов ТО и PD)
03h=000??100. Поэтому рекомендуется для изменения регис-
тра статуса использовать только команды битовой установки
BCF, BSF, MOVWF, которые не изменяют остальные биты ста-
туса. Воздействие всех команд на биты статуса можно посмот-
реть в “Описании команд”.
Программные флаги статуса
Размещение флагов в регистре статуса следующее
(табл. 3).
Табл.3
Ь7
Ь6
Ъ5
Ь4
ВЗ
Ь2
ы
ЬО
03h =
[RP
RP1
RP0
ТО
PD
Z
DC
С
С - флаг переноса/заема
Для команд АОО\Л/Р и 5иВ\Л/Р Этот бит устанавливается,
если в результате операции из самого старшего разряда про-
исходит перенос. Вычитание осуществляется путем прибав-
ления дополнительного кода второго операнда. При выполне-
нии команд сдвига этот бит всегда загружается из младшего
или старшего бита сдвигаемого источника.
-Пример
;SUBWF
Example #1
clrf
0x20
f(20h)=0
movlf
1
wreg=l
subwf 0x20
f(2 Oh)=f(20h)-wreg=0-l=FFh
Carry=0: Результат отрицательный
;SUBWF
Example #2
movlw OxFF
movwf
0x20
f (20h)=FFh
clrw
wreg=0
subwf 0x20
f(20h)=f(2Oh)-wreg=FFh-0=FFh
;Саггу=1: Результат положительный.
ОС - флаг десятичного переноса/заема
Для команд АОО\А/Р и ЭиВ\А/Р. Этот бит устанавливает-
ся, если в результате операции из четвертого разряда про-
исходит перенос. Механизм установки десятичного бита
переноса “ОС" тот же самый, отличается тем, что отслежи-
вается перенос из четвертого бита.
7.
- флаг нулевого результата
Устанавливается, если результатом арифметической
или логической операции является ноль.
М ИКРО КО НТРО ЛЛЕРЫ
;рл
PD - Power Down (режим хранения данных)
Устанавливается в “1” при включении питания или ко-
манде CLRWDT. Сбрасывается в “0” командой SLEEP.
ТО - Time Out. Флаг срабатывания Watchdog тай-
мера
Устанавливается в “1” при включению питания и коман-
дами CLRWDT, SLEEP. Сбрасывается в “0” по завершению
выдержки времени таймера WDT.
RP1, RP0 - биты выбора страницы памяти данных
при прямой адресации
RP1, RP0:
00 = Страница 0 (00h-7Fh);
01 = Страница 1 (80h-FFh);
10 = Страница 2 (100h-17Fh);
11 = Страница 3 (180h-1FFh).
Fla каждой странице расположено 128 байт. В кристал-
ле PIC16F84 используется только RP0. В этом кристалле
RP1 может использоваться просто как бит общего назна-
чения чтения/записи. Однако надо помнить, что в последу-
ющих разработках он будет использоваться.
IRP - бит выбора страницы памяти данных при кос-
венной адресации
IRP:
0 = Страницы 0, 1 (OOh-l^h);
1 = Страница 2, 3 (100h-1FFh).
Этот бит в кристалле PIC16F84 использовать не имеет
смысла. Поэтому его можно использовать как бит общего
назначения чтения/записи. Однако, надо помнить, что в
последующих разработках он будет использоваться.
Аппаратные флаги статуса
Аппаратные Биты статуса
ТО
(Time Out) и
PD
(Power
Down).
По состоянию битов регистра статуса ТО и PD можно
определить, чем был вызван “Сброс”:
- просто включением питания;
- срабатыванием таймера Watchdog;
- выходом из режима пониженного энергопотребления
(Sleep) в результате срабатывания Watchdog таймера;
- по внешнему сигналу MCLR.
На состояние этих битов могут повлиять только следу-
ющие события (табл. 4)
В
табл.
5 показаны состояния битов ТО и PD после
“Сброса".
Табл.4
С обы тия
т о
PD
П рим ечание
Включение
1
1
W D T тайм ер
0
X
Н е воздействует на бит
Sleep ком анда
1
0
CLRWDT команда
1
1
П рим ечание: собы тие W DT tim eout происходит независимо
о т состояния Т О бита. Sleep команда вы полняется независимо
о т состояния PD бита
Табл.5
ТО
PD
“С брос” бы л вы зван следую щ им и собы тиям и
0
0
Выход из Sleep по заверш ению задерж ки W atchdog
0
1
Заверш ен и е задерж ки W atchdog
X
0
Выход из Sleep по внеш нем у сигналу
1
1
Вклю чение питания
X
X
“О" —
импульс на входе
П рим ечание: биты ТО и
РЭ
сохраняю т текущ ее состояние до
тех пор, пока не произойдет одно из собы тий, перечисленны х
в таблице ''О” — импульс низкого уровня на входе кристалла
МСГ.Й не изм еняет состоян и е битов ТО и
РО
(Продолжение следует
г/гооз
предыдущая страница 35 Радиолюбитель 2003-02 читать онлайн следующая страница 37 Радиолюбитель 2003-02 читать онлайн Домой Выключить/включить текст