Параллельные порты
ввода / вывода – также обязательная часть любого МК. Обычно их используют для связи с ближайшим окружением – датчиками и исполнительными механизмами.
Важная особенность параллельных портов МК – возможность программирования на выполнение нескольких функций. Например, в 8051 выводы портов P0 и P2 могут использоваться либо как обычные статические регистры ввода / вывода, либо в качестве шины адреса и данных для подключения внешних устройств, таких как дополнительная память программ, память данных, устройства ввода / вывода. Это придаёт МК архитектурную гибкость. Порт P3 может либо использоваться как статический регистр ввода / вывода, либо выполнять специальные функции для работы последовательного канала, таймеров, контроллера прерываний и т.д. Возможность перепрограммирования позволяет с максимальной эффективностью задействовать все выводы МК в проектируемом устройстве.
Система прерываний
– одна из важнейших частей МК. Особенность систем реального времени заключается в том, что для них чрезвычайно важным параметром является время реакции на внешние события. Поясним на простом примере. Когда Вы производите математический расчёт на компьютере, то обычно запускаете программу, предназначенную для выполнения этих расчётов, и после того, как она загрузится в память компьютера, вводите условие задачи и ждёте результата. Время ожидания в таком случае не имеет принципиального значения (в пределах разумного, конечно) – медленная работа компьютера может раздражать, но на результате это не скажется. Система реального времени предполагает совершенно конкретную, рассчитываемую на этапе разработки скорость реакции системы управления на внешние события. Задержки сверх расчётных здесь просто недопустимы – они могут приводить к катастрофическим последствиям.
Проблемы быстрой реакции на события решаются организацией системы прерываний. Она подразумевает, что для каждого такого события разрабатывается отдельный «кусок» кода, который формирует реакцию МК на него. Этот «кусок» кода называют подпрограммой обработки запроса на прерывание (для краткости часто используют термин подпрограмма прерывания
) и размещают в памяти программ по известному адресу. В момент возникновения заданного события сигнал об этом поступает на вход контроллера прерываний
. Последний представляет собой устройство, устанавливающее однозначное соответствие между входным сигналом о происшедшем событии и адресом программной памяти, по которому размещена точка входа в подпрограмму обработки запроса прерывания от данного события. Контроллер прерывает выполнение ЦП текущей программы и инициирует его переход на выполнение подпрограммы обработки прерывания. Время, прошедшее с момента возникновения события до начала выполнения первой инструкции подпрограммы прерывания, называют временем реакции МК на событие. После окончания обработки ЦП автоматически возвращается к выполнению прерванной программы.
Другая функция контроллера прерываний – установка приоритетов событий. Понятие приоритет
означает, что выполняемая подпрограмма прерывания может быть прервана другим событием только при условии, что оно имеет более высокий приоритет, чем текущее. В противном случае ЦП перейдет к обработке нового события после окончания обработки предыдущего. Контроллер прерываний, входящий в состав МК 8051, имеет пять входов событий: два от внешних устройств, два от таймеров и один от последовательного канала.
Обычно, когда говорят о каком-либо МК, то всегда упоминают семейство
, к которому он принадлежит. К одному семейству относят изделия, имеющие одинаковое ядро
, под которым понимают совокупность таких понятий, как система команд, циклограмма работы ЦП, организация памяти программ и памяти данных, система прерываний и базовый набор периферийных устройств. Фактически на рис. 1 представлено ядро, ставшее основой для создания сотен других модификаций семейства 8051.
Отличия между его различными представителями заключаются, в основном, в составе периферийных устройств и объёме памяти программ или данных. Поскольку диапазон задач, решаемых МК, чрезвычайно широк, их производители стараются выпустить столько модификаций, чтобы удовлетворить самые разнообразные запросы потребителей. Во многих семействах число модификаций приближается к сотне или даже превышает это значение.
Наиболее важная особенность семейства – программная совместимость на уровне двоичного кода всех входящих в него МК. Это позволяет разработчикам систем заменять одни МК семейства другими без потери наработок своего программного обеспечения. Естественно, чем большее число разновидностей входит в семейство, тем больше шансов выбрать оптимальный вариант, тем привлекательнее это семейство для разработчика. Вопрос правильного выбора семейства МК для новой разработки является стратегическим, так как проблема переноса программного обеспечения между изделиями разных семейств чрезвычайно сложна и даже использование языков высокого уровня не всегда позволяет решить её без больших потерь. К вопросу о критериях выбора мы вернемся в следующих статьях цикла. Перейти на страницу: 1 2 3 4 5
Советуем почитать:
Прием, обработка, выдача Экспресс и ЕМS почтовых отправлений Не секрет, что в наш скоростной век, экономия времени является главной задачей, особенно для делового человека. Что бы облегчить участь бизнесменов многие компании, предоставляющие услуг ...
Изучение характеристик ключевых схем на дополняющих МОП-транзисторах (КМОП) Изучить характеристики ключевых схем на дополняющих МОП-транзисторах (КМОП) и базовых схем логических элементов КМОП, используя возможности программы MC8DEMO. Изучить содержание процессо ...
Моделирование голограммы, получаемой с помощью подповерхностного сканирующего радиолокатора Современные радиолокаторы можно условно разделить условно на два класса: радиолокаторы в которых используются видеоимпульсные сигналы и радиолокаторы с использованием гармонических модулиро ...