Види органічних сполук, Детальна інформація
Види органічних сполук
09 EEADR EECON2 89
0A PCLATH 8A
0B INTCON 8B
0C
2F 36 регистров общего назначения
тоже 8C
AF
30
7F не существует
B0
FF
В регистре статуса (03h) есть биты выбора страниц, которые позволяют обращаться к четырем страницам будущих модификаций этого кристалла. Однако для PIC16C84 память данных существует только до адреса 02Fh. Первые 12 адресов используются для размещения регистров специального назначения. Регистры с адресами 0Ch-2Fh могут быть использованы, как регистры общего назначения, которые представляют собой статическое ОЗУ. Некоторые регистры специального назначения продублированы на обеих страницах, а некоторые расположены на странице 1 отдельно. Когда установлена страница 1, то обращение к адресам 8Ch-AFh фактически адресует страницу 0. К регистрам можно адресоваться прямо или косвенно. В обоих случаях можно адресовать до 512 регистров.
Прямая адресация.
Когда производится прямая 9-битная адресация, младшие 7 бит берутся как прямой адрес из кода операции, а два бита указателя страниц (RP1,RP0) из регистра статуса (03h).
Косвенная адресация
f4 - Указатель косв.адресации
Любая команда, которая использует f0 (адрес 00) в качестве регистра фактически обращается к указателю, который хранится в FSR (04h). Чтение косвенным образом самого регистра f0 даст результат 00h. Запись в регистр f0 косвенным образом будет выглядеть как Noр, но биты статуса могут быть изменены. Необходимый 9 - битный адрес формируется объединением содержимого 8 - битного FSR регистра и бита IRP из регистра статуса.
RTCC таймер/счетчик
Режим таймера выбирается путем сбрасывания в ноль бита RTS, который находится в регистре OPTION. В режиме таймера RTCC будет инкрементироваться от ВНУТРЕННЕГО ИСТОЧНИКА частоты- каждый командный цикл (без предделителя). После записи информации в RTCC, инкрементирование его начнется после двух командных циклов. Такое происходит со всеми командами, которые производят запись или чтение-модификацию-запись f1 (напр.MOVF f1, CLRF f1). Избежать этого можно при помощи записи в RTCC скорректированного значения. Если RTCC нужно проверить на равенство нулю без останова счета, следует использовать инструкцию MOVF f1,W. Режим счетчика выбирается путем установки в единицу бита RTS, который находится в регистре OPTION. В этом режиме RTCC будет инкрементироваться либо положительным, либо отрицательным фронтом на ножке RA4/RTCC от ВНЕШНИХ событий. Направление фронта определяется управляющим битом RTE в регистре OPTION. При RTE=0 будет выбран положительный фронт. Пределитель может быть использован или совместно с RTCC, или с Watchdog таймером. Вариант подключения делителя контролируется битом PSA в регистре OPTION. При PSA=0 делитель будет подсоединен к RTCC. Содержимое делителя программе недоступно. Коэффициент деления - программируется. Прерывание по RTCC вырабатывается тогда, когда происходит переполнение RTCC таймера/счетчика при переходе от FFH к 00h. Тогда устанавливается бит запроса RTIF в регистре INTCON<2>. Данное прерывание можно замаскировать битом RTIE в регистре INTCON<5>. Бит запроса RTIF должен быть сброшен программно при обработке прерывания. Прерывание по RTCC не может вывести процессор из SLEEP потому, что таймер не функционирует в этом режиме.
Проблемы с таймером
Проблемы могут возникнуть при счете внешних сигналов. Эти сигналы стробируются внутренним сигналом синхронизации, см. схему SYNC. Образуется некоторая задержка между фронтом входного сигнала и моментом инкрементирования RTCC. Cтробирование производится после пределителя. Выход пределителя опрашивается дважды в течение каждого командного цикла, чтобы определить положительный и отрицательный фронты входного сигнала. Поэтому сигнал Psout должен иметь высокий и низкий уровень не менее двух периодов синхронизации.
Когда пределитель не используется, Psout повторяет входной сигнал, поэтому требования к нему следующие:
Trth= RTCC high time >= 2 tosc+20ns
Trtl= RTCC low time >= 2 tosc+20ns.
Когда пределитель используется, на вход RTCC подается сигнал, поделенный на число, установленное в счетчике делителя. Сигнал после пределителя всегда симметричен.
Psout high time = Psout low time = N*Trt/2, где Trt- входной период RTCC,
N- значение счетчика делителя (2,4...256).
0A PCLATH 8A
0B INTCON 8B
0C
2F 36 регистров общего назначения
тоже 8C
AF
30
7F не существует
B0
FF
В регистре статуса (03h) есть биты выбора страниц, которые позволяют обращаться к четырем страницам будущих модификаций этого кристалла. Однако для PIC16C84 память данных существует только до адреса 02Fh. Первые 12 адресов используются для размещения регистров специального назначения. Регистры с адресами 0Ch-2Fh могут быть использованы, как регистры общего назначения, которые представляют собой статическое ОЗУ. Некоторые регистры специального назначения продублированы на обеих страницах, а некоторые расположены на странице 1 отдельно. Когда установлена страница 1, то обращение к адресам 8Ch-AFh фактически адресует страницу 0. К регистрам можно адресоваться прямо или косвенно. В обоих случаях можно адресовать до 512 регистров.
Прямая адресация.
Когда производится прямая 9-битная адресация, младшие 7 бит берутся как прямой адрес из кода операции, а два бита указателя страниц (RP1,RP0) из регистра статуса (03h).
Косвенная адресация
f4 - Указатель косв.адресации
Любая команда, которая использует f0 (адрес 00) в качестве регистра фактически обращается к указателю, который хранится в FSR (04h). Чтение косвенным образом самого регистра f0 даст результат 00h. Запись в регистр f0 косвенным образом будет выглядеть как Noр, но биты статуса могут быть изменены. Необходимый 9 - битный адрес формируется объединением содержимого 8 - битного FSR регистра и бита IRP из регистра статуса.
RTCC таймер/счетчик
Режим таймера выбирается путем сбрасывания в ноль бита RTS, который находится в регистре OPTION. В режиме таймера RTCC будет инкрементироваться от ВНУТРЕННЕГО ИСТОЧНИКА частоты- каждый командный цикл (без предделителя). После записи информации в RTCC, инкрементирование его начнется после двух командных циклов. Такое происходит со всеми командами, которые производят запись или чтение-модификацию-запись f1 (напр.MOVF f1, CLRF f1). Избежать этого можно при помощи записи в RTCC скорректированного значения. Если RTCC нужно проверить на равенство нулю без останова счета, следует использовать инструкцию MOVF f1,W. Режим счетчика выбирается путем установки в единицу бита RTS, который находится в регистре OPTION. В этом режиме RTCC будет инкрементироваться либо положительным, либо отрицательным фронтом на ножке RA4/RTCC от ВНЕШНИХ событий. Направление фронта определяется управляющим битом RTE в регистре OPTION. При RTE=0 будет выбран положительный фронт. Пределитель может быть использован или совместно с RTCC, или с Watchdog таймером. Вариант подключения делителя контролируется битом PSA в регистре OPTION. При PSA=0 делитель будет подсоединен к RTCC. Содержимое делителя программе недоступно. Коэффициент деления - программируется. Прерывание по RTCC вырабатывается тогда, когда происходит переполнение RTCC таймера/счетчика при переходе от FFH к 00h. Тогда устанавливается бит запроса RTIF в регистре INTCON<2>. Данное прерывание можно замаскировать битом RTIE в регистре INTCON<5>. Бит запроса RTIF должен быть сброшен программно при обработке прерывания. Прерывание по RTCC не может вывести процессор из SLEEP потому, что таймер не функционирует в этом режиме.
Проблемы с таймером
Проблемы могут возникнуть при счете внешних сигналов. Эти сигналы стробируются внутренним сигналом синхронизации, см. схему SYNC. Образуется некоторая задержка между фронтом входного сигнала и моментом инкрементирования RTCC. Cтробирование производится после пределителя. Выход пределителя опрашивается дважды в течение каждого командного цикла, чтобы определить положительный и отрицательный фронты входного сигнала. Поэтому сигнал Psout должен иметь высокий и низкий уровень не менее двух периодов синхронизации.
Когда пределитель не используется, Psout повторяет входной сигнал, поэтому требования к нему следующие:
Trth= RTCC high time >= 2 tosc+20ns
Trtl= RTCC low time >= 2 tosc+20ns.
Когда пределитель используется, на вход RTCC подается сигнал, поделенный на число, установленное в счетчике делителя. Сигнал после пределителя всегда симметричен.
Psout high time = Psout low time = N*Trt/2, где Trt- входной период RTCC,
N- значение счетчика делителя (2,4...256).
The online video editor trusted by teams to make professional video in
minutes
© Referats, Inc · All rights reserved 2021