Скачиваний:
43
Добавлен:
09.05.2014
Размер:
134.14 Кб
Скачать

21. Опишите особенности обработки прерываний в стенде sdk1.1. Укажите причины этих особенностей.

Вектор прерывания— закреплённый за устройством номер, который идентифицирует соответствующий обработчик прерываний. Векторы прерываний объединяются в таблицу векторов прерываний, содержащую адреса обработчиков прерываний. Прерывания ADuC812 имеют вектора в диапазоне 0003h-0043h, которые попадают в область младших адресов памяти программ. Это пространство соответствует 8Кб (0000h-2000h) Flash-памяти. Следовательно, пользователь, не имеющий возможности записи во Flash-память, не может подставить свои процедуры обработки прерываний (точнее, команды перехода к процедурам) по адресам, соответствующим векторам прерываний

Проблема использования прерываний в пользовательских программах решается следующим образом:

1. По адресам (0003h-0043h) векторов прерываний во Flash-памяти SDK-1.1 располагаются команды переходов на вектора пользовательской таблицы, размещенной в адресах 2003h-2043h.

2. По адресам векторов пользовательской таблицы пользователем указываются команды переходов на процедуры обработки прерываний.

22. Прерывание. Классификация прерываний. Примеры

Прерывание— прекращение выполнения текущей команды или последовательности команд для обработки некоторого события обработчиком прерывания, с последующим возвратом к выполнению прерванной программы.

Классификация прерываний

В зависимости от источника возникновения сигнала прерывания делятся на:

•асинхронные или внешние (аппаратные) — события, которые исходят от внешних источников (например, периферийных устройств) и могут произойти в любой произвольный момент: сигнал от таймера, внешнего интерфейса, АЦП и других;

•внутренние — события в самом процессоре как результат нарушения каких-то условий при исполнении машинного кода: деление на ноль или переполнение, обращение к недопустимым адресам или недопустимый код операции. Такого рода прерывания еще называются исключительными ситуациями (exceptions);

•программные (частный случай внутреннего прерывания) — инициируются исполнением специальной инструкции в коде программы. Программные прерывания как правило используются для обращения к функциям встроенного программного обеспечения драйверов и операционной системы.

23. Применение ацп и цап.

Модуль аналого-цифрового преобразования (АЦП, Analog-to-digital converter, ADC) предназначен для ввода в процессор аналоговых сигналов с датчиков физических величин и преобразования значения напряжения этих сигналов в двоичный код с целью дальнейшей программной обработки

Цифро-аналоговый преобразователь (digital-analog converter, DAC ) предназначен для преобразования числа, представленного, как правило, в виде двоичного кода, в напряжение или ток, пропорциональные этому числу.

24. Регистры специального назначения (рсн). Регистры общего назначения (рон). Дайте определения. Перечислите различия рсн и рон. Приведите примеры регистров обоих видов.

Регистры специального назначения (Special Function Registers, SFR) занимают адреса внутренней памяти данных с 80h по FFh. SFR служат для управления, конфигурирования и передачи/приема данных от периферийных устройств, т. е. выполняют функцию интерфейса между процессором и

периферией на кристалле. (Например IE, DATA_IND, SV и другие)

Регистры общего назначения (РОН, General-Purpose Registers) позволяют писать самые эффективные программы. У микроконтроллеров семейства MCS-51 программисту доступны восемь регистров. Более того, в этом семействе микроконтроллеров есть целых четыре набора (банка) регистров с именами RB0 - RB3. Банк регистров состоит из восьми восьмиразрядных регистров с именами R0, R1, …, R7. Несколько банков регистров служат для организации независимой работы нескольких параллельно выполняемых программ. Переключение банков регистров производится при помощи двух особых бит

регистра слова состояния программы PSW (RS0 и RS1).

Соседние файлы в папке ответы на контрольные работы (примерные)