
- •Глава 1: Микропроцессор. Основные сведения
- •1.1 Основные характеристики мп
- •1.2 Структура мп устройства
- •1.3 Запоминающие устройства
- •1.4 Оперативное запоминающее устройство
- •1.5 Постоянные зу
- •Глава 2: Восьмиразрядный мп кр580
- •2.2 Система и формат команд. Способы адресации
- •2.3 Словосостояние мп
- •2.4 Работа устройства управления в режиме прерывания
- •2.5 Работа устройства управления в режиме прямого доступа к памяти (пдп)
- •Глава 3: Интерфейс Общие сведения
- •3.1Организация прерывания. Арбитраж
- •3.2 Программируемый периферийный адаптер
- •3.3 Программируемый связной адаптер
- •3.3.1 Работа пса в асинхронном режиме
- •3.3.2 Работа пса в синхронном режиме
- •3.4 Программируемый контроллер прерывания
- •3.5 Контроллер прямого доступа к памяти
- •Глава 4: 16-разрядный мп кр1810вм86
- •4.1 Структура мп кр1810
- •4.1.1 Устройство сопряжения с шиной
- •4.1.3 Устройство управления
- •4.2 Система и формат команд
- •4.2.1 Формат команд
- •4.2.2 Система команд
- •Глава 5: Микроконтроллеры
- •5.1 Классификация мкс
- •Глава 6: мк семейства Microchip
- •6.1 Процессорное ядро
- •6.1.1 Организация памяти
- •6.1.1 Организация памяти данных.
- •6.2 Организация периферийных модулей
- •6.2.1 Порты ввода/вывода
- •6.2.2 Модуль прерывания
- •Структурная схема модуля ацп
- •6.3 Периферийные модули специального назначения
- •6.3 Система и формат команд. Способы адресации
- •6.4 Средства разработки семейства Microchip
- •Глава 7: мк mcs 51
- •7.1 Организация памяти
- •7.2 Режим общего напряжения и электропитания
- •7.3 Модули ацп
- •7.4 Модуль цап
- •7.5 Периферийные модули
- •7.5.1 Последовательные порты ввода
- •7.5.2 Таймеры
- •7.5.3 Программируемый массив счетчиков (pca)
- •7.6 Модули захвата сравнения pca
- •7.7 Порты ввода
- •7.8 Система и формат команд
- •7.9 Способы адресации
- •7.10 Типы команд мк
- •Глава 7: применение програмируемых цифровых устройств в системах безопастности
- •8.1 Организация передачи информации
- •8.2 Параллельный интерфейс периферии lpt
- •8.3 Интерфейс rs232 (com порт)
- •8.4 Интерфейс Токовая петля
- •8.5 Интерфейс i2c
- •Глава 9: Применение мп техники
- •9.1 Разработка алгоритма управления.
- •9.2 Разработка структуры аппаратных и программных средств.
- •9.3 Совместная отладка
- •9.4 Сертификация
- •9.6 Измерительные системы
- •9.7 Системы управления
6.1 Процессорное ядро
6.1.1 Организация памяти
Встроенную память микроконтроллера можно разделить на два типа: память программ и память данных.
В МК реализовано 1024 14-разрядных перепрограммируемых ячеек памяти. Работа с памятью осуществляется с помощью 13-разрядного счетчика команд. Учитывая, что 13 разрядов – обращение к 8кб, то обращение к физически не реализованной памяти приводит к обращению к реализованной в адресном пространстве от 0000 до 05FF. Память программ представлена 2-мя векторами: адрес сброса 000, вектор прерывания 004. Память предназначена для хранения программ пользователя и обеспечивает до 10 000 циклов записи.
6.1.1 Организация памяти данных.
Данный МК рассматривает 2 типа памяти: регистровая память данных (ОЗУ) и постоянная память данных (реализуется как дополнительный периферийный модуль).
Регистровая память данных разделена на два банка и содержит 2 блока, которые содержат регистры общего (GPR) и специального (SFR) назначения. Первые 32 ячейки каждого банка зарезервированы под регистры специального назначения (нулевой банк – регистры с адресом 00-1F, первый банк – регистры с адресами 80-9F). Регистры с 20-5F адреса реализованы в нулевом банке, в первом являются физически нереализованными (обращаются к нулевому банку). Регистры общего назначения предназначены для хранения операндов, переменных, участвующих в операциях при выполнении программ пользователя.
Регистры специального назначения
При любом виде сброс МК происходит очищение обоих регистров. Возможна 2 способа загрузки данных в счетчик команд:
1) непосредственная загрузка младшего регистра СК
2) загрузка СК при выполнении команды вызова подпрограммы или команд переходов.
Вычисляемый переход может быть выполнен командой приращения содержимого регистра PCL командами арифметических операций.
При выполнении табличного чтения вычисляемых переходов, пользователю необходимо отслеживать, чтобы содержимое регистра PCL не пересекло границу блока памяти (256байт), т.к. операции над младшим разрядом не вызывает изменения содержимого старшего.
Регистр INDF (0,80), FSR (3,83) предназначены для организации косвенной адресации к регистровой памяти данных. Для выполнения косвенной адресации необходимо обратиться к физически нереализованному регистру INDF. При этом обращение к этому регистру фактически вызывает действие с регистром, адрес которого указан в регистре FSR. Косвенное чтение непосредственно регистра INDF дает результат 0, запись не вызывает никаких действий.
Организация стека.
Рассматриваемый МК имеет 8-уровневый 13-разрядный аппаратный стек. Стековая память не имеет отображения на память программ и память данных, т.е. при помощи стандартного набора команд нельзя производить запись и чтения данных из стека. Загрузка и считывание данных производится автоматически при выполнении инструкции перехода на подпрограмму (команда call) или обработка прерывания, путем загрузки в него значения счетчика команд. Чтение из стека производится аппаратно при выполнении операции команды возврата из подпрограммы. При данной процедуре значение регистра PCL не изменяется. Стек работает как циклический буфер, т.е. после 8-ми записей стек, 9-ая записывается на место 1-ой, тем самым не сохраняя начальные адреса возврата. Контроль за переполнением стека возлагается на программу пользователя. В МК базового семейства стек является 2-х уровневым.
Регистр OSCCAL – калибровка генератора. Данный регистр содержит 6 функциональных разрядов, которые представляют собой загружаемую константу, позволяющую регулировать собственный внутренний RC генератор. (Константа 100000 соответствует частоте 4 МГц).
Регистр STATUS – доступен для чтения и записи и играет роль регистра признаков/флагов. Условно признаки регистра делятся на 3 части:
1)флаги состояния АЛУ: C, DC, Z. Данные признаку используются для формирования условий.
С – признак переполнения. В зависимости от операции выполняет 2 функции:
а)при операциях сложения и логических сдвигов выполняет бит переноса в 9 разряд результата.
б)при операциях вычитания формирует признак знака.
DC – аналогичен С, только для двоично-десятичных чисел.
Z – признак нуля.
2)Флаги причины сброса МК: TO, PD. Данные признаки не изменяются при программном обращении к регистру STATUS.
3)Флаг выбора банка памяти данных RP0. 0 в этом разряде определяет рабочим 0-ой банк, 1 – 1-ый банк. Существуют МК, в области регистровой памяти которых 4 банка. В этом случае регистр STATUS содержит дополнительный бит RP1.
Регистр OPTIONREG – содержит биты управления базовых модулей МК:
-- биты управления таймером TMR0(T0SC, T0SE, PSA, PS0..2).
T0SC - выбор тактового сигнала для таймера. 0 – модуль работает как таймер (от внутренней системной тактовой частоты), 1- от внешних сигналов, подаваемых на вход T0CKI (режим счетчика).
T0SE – определяет фронт приращения счетных сигналов в режиме счетчика.
PSA – бит направления подключения встроенного предделителя: 0 – к таймеру TMR0, 1 – к специальному сторожевому таймеру.
PS0..2 – определяет коэффициент предделителя от 1/1 до 1/128.
--INTEDG - определяет активный фронт внешнего прерывания INT.
--GPPU - разрешение работы подтягивающих регистров на входе GP.