ньою пам'яттю. Розподіл адресного простору між різними блоками пам'яті залежить від режиму функціонування мікроконтролера (малюнку 3). Користувач може змінити положення блоків внутрішньої пам'яті в адресному просторі шляхом запису нового значення в спеціальні регістри, що містять початкові адреси цих блоків.
Малюнок 3
Ряд мікроконтролерів сімейства (МС68НС12А0, МС68НС812А4) має можливість збільшити адресний простір в розширеному режимі до 4 Мб пам'яті команд і 1 Мб пам'яті даних. Збільшення обсягу адресується пам'яті здійснюється шляхом використання вікон розширення, розташованих в стандартному 64-КБ просторі пам'яті, і шести додаткових адресних ліній ADDR21-16. Адресація зовнішньої пам'яті об'ємом понад 64 Кб здійснюється за допомогою механізму сторінкової трансляції, для чого кожне вікно розширення має свій регістр, що містить адресу поточної сторінки. При зверненні за адресою, потрапляє у вікно розширення, відповідні розряди цього регістра виводяться на старші лінії шини адреси ADDR21-16.
Для організації банків зовнішньої пам'яті поряд з сторінкової адресацією мікроконтролери можуть формувати сигнали вибірки кристала CS. Ці сигнали стають активними при зверненні за адресами, розташованим в певних розділах адресного простору. Для виведення сигналів CS використовуються лінії порту F. Мікроконтролери сімейства 68HC12 можуть працювати в спеціальному режимі налагодження BDM (Background Debug Mode), який забезпечує виконання основних процедур налагодження - перегляд та модифікацію вмісту регістрів і комірок пам'яті і ряд інших функцій.
Вхід в режим BDM забезпечується за допомогою команди BGND і може бути здійснений з будь-якого режиму функціонування. Частина команд BDM може виконуватися без перекладу мікроконтролера в режим налагодження. Після переведення мікроконтролера в цей режим процесор працює під управлінням програми-відладчика, що зберігається у внутрішньому ПЗУ, яке відображається на карту пам'яті тільки в режимі BDM (малюнок 3). Відмінні риси BDM для даного сімейства: простий набір команд налагодження і використання однопровідного інтерфейсу для взаємодії з системою налагодження. Процесор CPU12 реалізує ряд переривань, для кожного з яких задається 16-розрядний вектор, який вказує адресу входу у відповідну процедуру обробки. Таблиця векторів переривань займає старші 128 байт адресного простору (таблиця 2).
Старші шість позицій таблиці відведені під вектори початкового завантаження і немаскованих переривань, а інші розподіляються між маскіруемимі джерелами переривань. При переході до обслуговування переривань в стеку зберігається вміст регістрів PC, Y, X, A, B, CCR, яке відновлюється при поверненні з підпрограми обслуговування по команді RTI.
Таблиця 1
Адреса вектораВід прериваніяМаскірованіе $ FFFE-FУстановка в початковий стан (Reset) немає $ FFFC-DПрериваніе від схеми контролю тактового сігналанет $ FFFA-BПрериваніе від сторожового таймеранет $ FFF8-9Неправільний код операціінет $ FFF4-5Внешній запит на вході XIRQбіт X
Таблиця 2
Адреса вектораВід прериваніяМаскірованіеАдрес вектораВід прериваніяМаскірованіе $ FFF2-3Внешній запит на вході IRQ або сигнал на лінії порту Dбіт I $ FFDE-FПереполненіе таймерабіт I $ FFF0-1Періодіческое переривання від таймерабіт I $ FFDC-DПереполненіе лічильника імпульсовбіт I $ FFEE-FЗапрос від таймера (канал 0) біт I $ FFDA-BСігнал на вході лічильника імпульсовбіт I $ FFEC-DЗапрос від таймера (канал 1) біт I $ FFD8-9Запрос від SPIбіт I $ FFEA-BЗапрос від таймера (канал 2) біт I $ FFD6-7Запрос від SCI 0біт I $ FFE8-9Запрос від таймера (канал 3) біт I $ FFD4-5Запрос від SCI 1 біт I $ FFE6-7Запрос від таймера (канал 4) біт I $ FFD2-3Запрос від АЦПбіт I $ FFE4-5Запрос від таймера (канал 5) біт I $ FFD0-1Внешній сигнал на лінії порту Jбіт I $ FFE2-3Запрос від таймера (канал 6) біт I $ FFCE-FВнешній сигнал на лінії порту Hбіт I $ FFE0-1Запрос від таймера (канал 7) біт I $ FF80-DЗарезервіровано
До немаскіруемимі джерелами переривань відносяться: сигнал скидання на вході Reset, переривання від схеми контролю частоти тактового сигналу, переривання від сторожового таймера, спроба виконати неправильну команду, програмне переривання по команді SWI, зовнішній сигнал переривання на вході XIRQ. Ці переривання перераховані в порядку убування пріоритету їх обслуговування. Звернення до одного з перших трьох векторів викликає виконання процедури початкового завантаження мікроконтролера. Обслуговування запиту переривання XIRQ проводиться в тому випадку, якщо в регістрі CCR встановлено значення біта X=0. Дозвіл обслуговування маскованих переривань здійснюється шляхом установки в 0 біта I в регістрі CCR. До маскируемую джерелами переривань відносяться: зовнішній сигнал переривання на вході IRQ, переривання в...