МК PIC16F84. Организация памяти программ

Микроконтроллеры среднего семейства имеют 13-разрядный счетчик команд, способный адресовать 8К х 14 слов памяти программ, и 14-разрядную шину данных памяти программ. Все команды микроконтроллера состоят из 14-разрядного слова, поэтому микроконтроллер с объемом памяти 8К х 14 может содержать 8К команд. Это позволяет легко определить достаточность объема памяти программ для желаемого приложения.

Вся память программ разделена на 4 страницы по 2К слов каждая (0000h-07FFh, 0800h-0FFFh, 1000h-17FFh, 1800-1FFFh). На рисунке ниже показана карта памяти программ и 8-уровневый аппаратный стек. В зависимости от типа микроконтроллера, только некоторая часть доступной памяти программ реализована аппаратно.

Для перехода между страницами памяти программ необходимо изменить старшие биты регистра счетчика команда PC, записью в регистр специального назначения PCLATH (старший байт счетчика команд). Изменив значение регистра PCLATH и выполнив команду ветвления, счетчик команд PC пересечет границу памяти программ без дополнительного вмешательства пользователя.

Для микроконтроллеров, имеющих память программ меньше 8К слов, обращение к памяти выше фактически реализованного значения приведет к циклической адресации. Например, в микроконтроллере 4К слов. При попытке перехода по адресу 17FFh переход будет выполнен по адресу 07FFh. В микроконтроллерах с памятью программ 2К слов управление страницами памяти не требуется.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: