Битовая структура каждого из регистров VICVectAddr0...15 приведена в Табл. 6.11.
Регистры адреса векторов 0...15 содержат адреса для сервисных подпрограмм обработки прерываний для 16 векторных слотов IRQ.
Таблица 6.11. Биты регистров адреса векторов (VTCVectAddrO... 15 — OxFFFFFlOO... 13С, R/W)
Номер бита |
Название бита |
Функция бита |
Значение после сброса |
31:0 |
VlCVfectAddr0...15 |
Когда один или более запросов прерываний или программных прерываний разрешены, классифицированы как запросы IRQ, присутствуют (имеют место) и назначены на включенный векторный слот запроса IRQ, то в этом регистре сервисная подпрограмма обработки запросов IRQ для слота с самым высоким приоритетом прочитает адрес вектора (VICVectAddr) |
0 |
Заданный по умолчанию регистр адреса вектора (VICDefVectAddr—0xFFFFF034, R/W) Битовая структура регистра VICDefVectAddr приведена в Табл. 6.12. Этот регистр содержит адрес для сервисной подпрограммы обработки прерываний (ISR), которая обрабатывает невекторизованные запросы прерываний. |
|||
Таблица 6.12. Биты заданного по умолчанию регистра адреса вектора (VICDefVfectAddr - 0xFFFFF034, R/W) |
|||
Номер бита |
Название бита |
Функция бита |
Значение после сброса |
31:0 |
VICDefVectAddr |
Если в тот момент, когда сервисная подпрограмма запроса IRQ читает регистр адреса вектора (VICVectAddr), ни один из слотов IRQ не отвечает, как было описано выше, то чтение возвращает адрес, содержащийся в регистре VICDefVectAddr |
0 |
Регистр адреса вектора (VICVectAddr — 0xFFFFF030, R/W)
Битовая структура регистра VICVectAddr приведена в Табл. 6.13.
Когда происходит запрос IRQ, сервисная подпрограмма обслуживания запросов IRQ может прочитать этот регистр и передать управление по прочитанному значению адреса.
Таблица 6.13. Биты регистра адреса вектора (VICVectAddr — 0xFFFFF030, R/W)
Номер бита |
Название бита |
Функция бита |
Значение после сброса |
31:0 |
VICVectAddr |
Когда один или более запросов прерываний или программных прерываний разрешены, классифицированы как запросы IRQ, присутствуют (имеют место) и назначены на включенный векторный слот запроса IRQ, то чтение этого регистра возвращает значение адреса, хранящегося в регистре адреса вектора для слота с самым высоким приоритетом (наименьшим по номеру). Если эти условия не выполнены, то чтение возвращает значение адреса, хранящегося в заданном по умолчанию регистре адреса вектора VICVectAddr. Запись в этот регистр не означает, что соответствующее значение адреса будет использоваться и при обработке всех последующих прерываний. Каждый раз в конце сервисной подпрограммы обработки прерывания в этот регистртюлж-на быть произведена запись, чтобы обновить состояние аппаратных средств контроллера |
0 |
Регистр разрешения защиты (VICProtection — 0xFFFFF020, R/W)
Битовая структура регистра VICProtection приведена в Табл. 6.14. Этот однобитный регистр позволяет ограничивать доступ к регистрам VIC для программного обеспечения, выполняющегося в пользовательском режиме.
НА ГЛАВНУЮ | | ЧТО ТАКОЕ PIC ? | | ПРОГРАММАТОР | | ПРОЕКТЫ | | СТАТЬИ | | ССЫЛКИ | | КАРТА САЙТА |