Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Микропроцесоры_Ответы.docx
Скачиваний:
20
Добавлен:
17.03.2016
Размер:
1.98 Mб
Скачать

6.3.3. Режими роботи програмованого таймеру.

У пам'яті МК 16-розрядний лічильник відображається двома регістрами: TH - старший байт лічильника, TL - молодший байт. Регістри доступні для читання і для запису. Напрямок відліку - тільки прямий, тобто при надходженні вхідних імпульсів уміст лічильника інкрементується. У залежності від настроювання лічильник може використовувати одне з джерел вхідних сигналів:

  • імпульсну послідовність з виходу керованого дільника частоти fBUS;

  • сигнали зовнішніх подій, що надходять на вхід TOCKI контролера.

У першому випадку говорять, що лічильник працює в режимі таймера, у другому - у режимі лічильника подій. При переповненні лічильника встановлюється в "одиницю" тригер переповнення TF, що генерує запит на переривання, якщо переривання від таймера дозволені. Пуск і зупинка таймера можуть здійснюватися тільки під управлінням програми. Програмним способом можна також установити старший і молодший біти лічильника в довільний стан або прочитати поточний код лічильника.

У першому випадку говорять, що лічильник працює в режимі таймера, у другому - у режимі лічильника подій. При переповненні лічильника встановлюється в "одиницю" тригер переповнення TF, що генерує запит на переривання, якщо переривання від таймера дозволені. Пуск і зупинка таймера можуть здійснюватися тільки під управлінням програми. Програмним способом можна також установити старший і молодший біти лічильника в довільний стан або прочитати поточний код лічильника.

Розглянутий "класичний" модуль таймера/лічильника широко застосовується в різних моделях простих МК. Він може використовуватися для виміру часових інтервалів і формування послідовності імпульсів. Основними недоліками "класичного" таймера/лічильника є:

  • втрати часу на виконання команд пуску і зупинки таймера, що створює помилки при вимірюванні часових інтервалів і обмежує мінімальну тривалість вимірюваних інтервалів часу одиницями мс.;

  • складності при формуванні часових інтервалів (міток часу), відмінних від періоду повного коефіцієнта відліку, рівного (Кділ/fBUS) · 216;

  • неможливість одночасного обслуговування (вимірювання або формування імпульсного сигналу) відразу декількох каналів.

6.3.4. Нарощування об’єму пам’яті.

Тема 6.4: Система переривів. Контролер переривів. Організація механізму переривів. Перериви таймеру.

6.4.1. Контролер переривів. Джерело переривів.

Все микропроцессорные системы должны связываться с внешним миром. Типичная вычислительная система обычно имеет клавиатуру, дисковод и коммуникационный порт. Все они требуют внимания процессора в разное время.

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

В вычислительной системе часто происходят события, которые требуют прерывания нормального хода выполнения программы и выполнения некоторых специальных действий. Такие исключительные ситуации, или просто исключения, могут быть инициированы сигналом от внешнего устройства, или условиями, обнаруженными в процессоре.

Например, персональные компьютеры часто используют таймер, чтобы прервать процессор раз в секунду, чтобы заставить его модифици­ровать изображение часов, отображаемых на экране. Компьютеры, используемые в управлении производственным процессом, обычно прерываются датчиками, которые обнаруживают различные состояния оборудования, требующие немедленного внима­ния. Пример внутрен­него состояния, требующего прерывания – попытка деления на 0, которая не может дать никакого результата. Этот тип исключительного состояния должен приостановить работу програм­мы, чтобы прервать операцию и послать предупреждающее сообщение пользователю.

Микропроцессор 8086 имеет два источника внешних прерываний; вход немаскируемого прерывания (NMI) и вход маскируемого прерывания (INTR). Для большинства микропроцессорных систем единственный вход маскируемого прерывания недостаточен. Боль­шинство процессоров использует специальный контроллер прерыва­ний, чтобы увеличить число доступных маскируемых прерываний.