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

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

Прерывается программа работы по сигналу запроса на прерывание, который вырабатывается либо внешним устройством непосредственно, если оно подготовилось ко вводу информации в МП систему, либо в ответ на сигнал опроса, посылаемый из МП системы, если в ходе выполнения программы необходим ввод или вывод информации. Подпрограмма обслуживания или организации прерываний (так называют программу ввода/вывода) хранится в ПЗУ и может быть не одна. Количество таких подпрограмм определяет разнообразие устройств и способов обмена информацией с ними. В этом случае говорят о векторном прерывании, т. е. о прерывании, выбранном из некоторого множества возможных с указанием обслуживаемого устройства.

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

Некоторые, особенно первые модели МП не имели готовых подпрограмм обслуживания прерываний, «зашитых» в ПЗУ, что заставляло программиста каждый раз, когда в этом появлялась необходимость, организовывать в рабочей программе останов и обмен информацией с устройствами ввода/вывода.

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

В интервале Т0—Т1 выполняется основная программа, и к моменту T1, соответствующему сигналу прерывания с некоторым приоритетом, верхний регистр стека оказывается заполненным командным словом, к которому программа должна была бы перейти, если бы не произошло прерывание в этот момент.

Первое прерывание обслуживается до прихода сигнала на второе прерывание, имеющее старший приоритет, при этом к моменту Т2 верхний регистр стека заполняется командным словом из программы обслуживания первого, к которому надо будет перейти, чтобы продолжить эту программу. По окончании программы второго прерывания в момент Т3 это командное слово выбирается из стека (пришло последним, а вышло первым — в чем и «хитрость» стека!) и продолжает программу первого прерывания до прихода в момент Т4 следующего прерывания, также имеющего старший приоритет. По окончании обслуживания этого прерывания в момент Т5 опять продолжается исполнение первого, после чего в момент Т6 происходит переход к выполнению основной программы, начиная с командного слова, записанного в стек первым. Стек при этом полностью очищается.

Таким образом, наиболее длительное первое прерывание, имеющее младший приоритет, выполнялось «по кускам» в интервалах Т1—Т2, Т3—Т4, Т5—Т6,

content

Share
Published by
content

Recent Posts

Магнитное поле тока. Магнитные силовые линии

Разница между энергией электрического поля и энергией магнитного поля примерно такая же, как между энергией,…

12 месяцев ago

Постоянные магниты

Когда-то легендарный пастух Магнес, нашел природный магнитный камень, притягивающий железо. В последствии этот камень назвали магнетит или магнитный…

12 месяцев ago

Соединение конденсаторов

В электрических цепях применяются различные способы соединения конденсаторов. Соединение конденсаторов может производиться: последовательно, параллельно и последовательно-параллельно (последнее иногда называют смешанное соединение конденсаторов). Существующие…

12 месяцев ago

Обозначение конденсаторов

Обозначение конденсаторов на схемах определено ЕСКД ГОСТ 2.728-74. Обозначения условные графические в схемах. Резисторы, конденсаторы. Итак,…

1 год ago

Виды конденсаторов

Узнав, что же такое конденсатор, рассмотрим, какие бывают виды конденсаторов. Итак, виды конденсаторов можно классифицировать по…

1 год ago

Энергия поля конденсатора

Вся энергия заряженного конденсатора сосредотачивается в электрическом поле между его пластинами. Энергию, накоп­ленную в конденсаторе, можно определить…

1 год ago