![]() | |
НПО Системы Безопасности (499)340-94-73 График работы: ПН-ПТ: 10:00-19:00 СБ-ВС: выходной ![]() ![]() |
Главная » Периодика » Безопасность 0 ... 26272829303132 ... 159 Если программное приложение не использует прерываний, содержимое этих регистров может сохраняться и восстанавливаться с помощью команд call и return. Ниже дан пример быстродействующего стека: call sub 1 return 1 вызов sub после сохранения контекста -содержимого регистров wreg, status и bsr исполнение подпрограммы sub, игнорирование содержимого регистров wreg, status и bsr восстановление содержимого регистров wreg, status и bsr перед возвратом из подпрограммы Следует отметить, что быстрый стек не рекомендуется для программных приложений, в которых разрешение прерываний связано с затиранием сохраненных данных. По этой причине быстрый стек нс пригоден для так называемых вложенных подпрограш1ШШ прерывани11. Выполнение прерываний Выполнение прерываний осуществляется практически так же, как для PIC-микроконтроллеров среднего подсемейства, за исключением задания уровней приоритета каждому источнику прерывания. Если установлены бит р источника прерывания и бит ipen регистра rcon, программа обработки прерываний начнет исполнение с адреса 0x00008. Если бит ipen регистра rcon установлен, а бит р источника прерывания сброшен, программа начнется с адреса 0x00018. Если сброшен бит ipen, прерывания будут обрабатываться программой, стартующей с адреса 0x00008. Общий вид программы обработки прерываний Если быстрый стек не используется, программа обработки прерываний выглядит так: movwf w , сохранение содержимого регистров , контекста movwf status, status movff bsr, bsr , код программы обработки прерываний movff bsr bsr восстановление содержимого , регистров контекста movf w w movff slatus, status retfie ГЛАВА 6 Управляющие регистры PIC микроконтроллеров Адреса одноименных регистров PIC-микроконтроллеров, относа щихся к одному архитектурному подсемейству, практически одинаковы. При этом следует помнить о том, что биты регистров мог)т иметь разное назначение для PIC-микроконтроллеров разных типов. Для того чтобы убедиться в правильности использования тех или иных битов, обращайтесь к спецификациям фирмы Microchip. МИКРОКОНТРОЛЛЕРЫ МЛАДШЕГО ПОДСЕМЕЙСТВА В командах PIC-микроконтроллеров младшего подсемейства для зад.ь ния адреса регистра внутри каждого банка зарезервировано пять бит. В подобных микроконтроллерах может использоваться до четырех банков регистров, при этом первые 16 регистров каждого банка являются общими для всех банков, а вторые 16 инд1гвидуальны для кажго-го конкретного банка. Эта ситуация проиллюстрирована в табл. 6.1. Таблица 6.1 Адреса для PIC-микроконтроллеров младшего подсемейства
Таким образом, микроконтроллеры младшего подсемейства могут использовать от 25 до 73 индивидуальных регистров, дост)тп1ЫХ для любого программного приложения. Ниже названы несколько особенностей работы с данными микроконтроллерами: 0 ... 26272829303132 ... 159 |