logo
Ответы_МПС

8. Организация памяти данных

Память данных МК разбита на две области. Первые 12 адресов — это область регистров специальных функций (SFR), а вторая — область регистров общего назначения (GPR). Область SFR управляет работой прибора. Обе области разбиты в свою очередь на банки 0 и 1. Банк 0 выбирается обнулением бита RPO регистра статуса (STATUS). Установка бита RPO в единицу выбирает банк 1. Каждый банк имеет протяженность 128 байт. Однако для PIC16F84 память данных существует только до адреса 04Fh.

Рис. 8 - Организация памяти данных

Некоторые регистры специального назначения продублированы в обоих банках, а некоторые расположены в банке 1 отдельно. Регистры с адресами OCh-4Fh могут использоваться как регистры общего назначения, которые представляют собой статическое ОЗУ. Адреса регистров общего назначения банка 1 отображаются на банк 0. Следовательно, когда установлен банк 1, то обращение к адресам 8Ch-CFh фактически адресует банк 0. В регистре статуса помимо бита RPO есть еще бит RB1, что позволяет обращаться к четырем страницам (банкам) будущих модификаций этого кристалла

К ячейкам ОЗУ можно адресоваться прямо, используя абсолютный адрес каждого регистра, или косвенно, через регистр указатель FSR. Косвенная адресация использует текущее значение разрядов RP1:RPO для доступа к банкам. Это относится и к EEPROM памяти данных. В обоих случаях можно адресовать до 512 регистров.