9. Регистры специального назначения pic16f84: регистр status
Регистр статуса (STATUS) содержит признаки операции (арифметические флаги) АЛУ, состояние контроллера при сбросе и биты выбора страниц для памяти данных.
Назначение бит регистра STATUS (адрес 03h, 83h). | |||||||
R/W-0 | R/W-0 | R/W-0 | R-1 | R-1 | R/W-x | R/W-x | R/W-x |
IRP | RP1 | RP0 | /TO | /PD | Z | DC | C |
Бит 7 | Бит 6 | Бит 5 | Бит 4 | Бит 3 | Бит 2 | Бит 1 | Бит 0 |
Бит 7: IRP: бит выбора страницы банка данных (используется при косвенной адресации) Бит IRP не используется в МК подгруппы PIC16F8X | |||||||
Биты 6-5: RP1:RP0: биты выбора страницы банка данных (используются при прямой адресации) 00 = банк 0 (00h – 7Fh) 01 = банк 1 (80h – FFh) 10 = банк 2 (100h – 17Fh) 11 = банк 3 (180h – 1FFh) В МК подгруппы PIC16F8X используется только бит RP0 | |||||||
Бит 4: /TO: бит срабатывания сторожевого таймера 1 = после включения питания, а также командами CLRWDT и SLEEP 0 = по завершении выдержки сторожевого таймера | |||||||
Бит 3: /PD: бит снижения потребляемой мощности 1 = после включения питания, а также командой CLRWDT 0 = по команде SLEEP | |||||||
Бит 2: Z: бит нулевого результата 1 = результат арифметической или логической операции нулевой 0 = результат арифметической или логической операции ненулевой | |||||||
Бит 1: DC: бит десятичного переноса/заема (для команд ADDWF и ADDLW) 1 = имеет место перенос из 4-го разряда 0 = нет переноса из 4-го разряда | |||||||
Бит 0: C: бит переноса/заема (для команд ADDWF и ADDLW) 1 = имеет место перенос из самого старшего разряда 0 = нет переноса из самого старшего разряда Примечание: вычитание осуществляется путем прибавления дополнительного кода второго операнда. При выполнении команд сдвига этот бит загружается из младшего или старшего разряда сдвигаемого источника. |
R — читаемый бит; W — записываемый бит; S — устанавливаемый бит; U — неиспользуемый бит (читается как "0"); -n = 0 или 1 — значение бита после сброса.
Регистр статуса доступен для любой команды так же, как любой другой регистр. Однако если регистр STATUS является регистром назначения для команды, влияющей на биты Z, DC или C, то запись в эти три бита запрещается. Кроме того, биты /TO и /PD устанавливаются аппаратно и не могут быть записаны в статус программно. Это следует иметь в виду при выполнении команды с использованием регистра статуса. Например, команда CLRF STATUS обнулит все биты, кроме битов /TO и /PD, а затем установит бит Z=1. После выполнения этой команды регистр статуса может и не иметь нулевого значения (из-за битов /TO и /PD) STATUS=000uu1uu, где u – неизменяемое состояние. Поэтому рекомендуется для изменения регистра статуса использовать только команды битовой установки BCF, BSF, MOVWF, которые не изменяют остальные биты статуса. Воздействие всех команд на биты статуса рассматривается в разделе "Описание системы команд".
- 1. Состав и назначение семейств pic-контроллеров
- 6. Схема тактирования и цикл выполнения команды в мк pic16f84
- 7. Организация памяти программ и стека
- 8. Организация памяти данных
- 9. Регистры специального назначения pic16f84: регистр status
- 10. Регистры специального назначения pic16f84: регистр option
- 11. Регистры специального назначения pic16f84: регистр intcon
- 12. Регистры специального назначения pic16f84: счетчик команд pcl и pclath
- 13. Прямая и косвенная адресация в мк pic16f84
- Порт ввода/вывода «а» мк pic16f84
- Порт ввода/вывода «в» мк pic16f84
- Модуль таймера tmr0 мк pic16f84
- Память данных eeprom мк pic16f84
- 18 Организация прерываний в мк pic16f84
- 19 Работа с модулем ацп в мк pic16f676
- 20. Работа с модулем опорного напряжения в мк
- 21 Работа с модулем компаратора в мк
- 22 Форматы команд pic16f84a
- 23 Команды работы с байтами в мк pic16f84
- 24 Команды работы с битами в мк pic16f84
- 25 Команды управления в мк pic16f84
- 26 Команды работы с константами в мк pic16f84
- 27 Синтаксис ассемблера mpasm: метки, мнемоники, операнды, комментарии
- Директивы языка mpasm
- Языки программирования плк
- Промышленные сети и интерфейсы: Can