Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций ТСИ.doc
Скачиваний:
5
Добавлен:
26.09.2019
Размер:
1.97 Mб
Скачать

Общие с ведения о микроконтроллерах

Микроконтроллер - микропроцессорное ядро, память и интерфейсные модули, выполненные в одном кристалле.

Обобщенная структурная схема микроконтроллера

Объем адресуемой памяти определяется разрядностью шины адреса.

Разрядность шины данных памяти программ совпадает с разрядностью команды CPU. Разрядность шины данных памяти данных совпадает с разрядностью данных CPU.

Система прерываний

Служит для прерывания выполнения основной программы при появлении определенного события, связанного с работой периферийных устройств.

События (источники прерываний):

- таймера (переполнение или антипереполнение, момент равенства содержимого таймера/счетчика и регистра сравнения, момент захвата внешнего импульса);

- последовательных портов (окончание приема или записи байта, неправильный формат кадра, переполнение буфера приемника или передатчика);

- АЦП (готовности данных);

- ЕЕРRОМ (момент окончания операции);

- параллельных портов (по фронту, по спаду, по уровню импульса на выводе);

- компаратора (момент равенства напряжений, переход от отрицательной разности к положительной и наоборот);

- при сбросе микроконтроллера, при обнаружении падения напряжения питания.

Для каждого прерывания может быть собственная подпрограмма - обработчик прерывания. Каждому источнику прерывания соответствует адрес в памяти программ - вектор прерывания. Вектора расположены в определенном порядке и образуют таблицу прерываний.

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

Существуют двухуровневая (высший и низший) и многоуровневая системы приоритетов. Приоритет по умолчанию может быть изменен установкой соответствующих битов в SFR – регистре приоритетов.

Прерывания программы от источников прерываний могут быть разрешены или запрещены установкой или сбросом соответствующих битов в SFR - регистре разрешения прерываний. Запрещение прерываний называется маскированием.

Работа системы прерываний

1. Событие от источника прерывания сопровождается установкой определенного бита в SFR - регистре флагов прерываний. Этот факт называется запросом прерывания.

2. Если запрашиваемое прерывание запрошено (замаскировало), то никаких изменений в работе программы не происходит.

3. Если разрешено, то выполнение основной программы приостанавливается адрес следующей команды (содержимое счетчика команд+1) сохраняется в стеке, в счетчик команд загружается требуемый вектор прерывания (происходит переход на адрес = вектору прерывания). По адресу = вектору прерывания может быть расположена начальный адрес обработчика прерывании (1-2 команды) или команда перехода на него (много команд).

4. Выполняется подпрограмма обработчика прерываний.

5. Последняя команда обработчика прерывания: возврат из прерывания.

6. По команде «возврат их прерывания» происходит загрузка из стека адреса сохраненной перед прерыванием основной программы команды. Продолжается выполнение основной программы.

7. Если в процессе выполнения обработчика прерываний появляется запрос от источника прерывания с более высоким приоритетом текущий обработчик прерывается описанным выше способом на выполнение высокоприоритетного обработчика прерываний. Запрос от низкоприоритетного источника откладывается до завершения обработчика текущего (высокоприоритетного) прерывания.

Схема обработки прерывания