Микроконтроллеры. Принципы
построения и работа микроконтроллеров.
Микроконтроллеры являются
основой схем управления многих современных промышленных устройств и приборов. Самой главной особенностью
микроконтроллеров, с точки зрения конструктора-проектировщика, является то,
что с их помощью легче и зачастую гораздо дешевле реализовать различные схемы
управления различных устройств и аппаратов, в том числе и копировальных. На рис. 1 изображена
структурная схема типичного современного микроконтроллера.
Рис. 1. Структурная схема
микроконтроллера.
Микроконтроллер (рис. 1, 2)
может управлять различными устройствами, узлами, механизмами и принимать от
них данные при минимуме дополнительных узлов, так как большое число
периферийных схем уже имеется непосредственно на кристалле микроконтроллера.
Это позволяет уменьшить размеры конструкции и снизить потребление энергии от
источника питания. При использовании традиционных микропроцессоров приходится
все необходимые схемы сопряжения с другими устройствами реализовывать на
дополнительных компонентах, что увеличивает массу, размеры и потребление
электроэнергии.
Рис. 2. Архитектура ядра
микроконтроллеров AVR
Типичные компоненты, присутствующие в микроконтроллерах и их функции перечислены
ниже:
- Центральное процессорное устройство (ЦПУ) —
основа микроконтроллера. Оно принимает из памяти программ коды команд,
декодирует их и выполняет. ЦПУ состоит из регистров, арифметико-логического
устройства (АЛУ) и цепей управления.
- Память программ. Здесь хранятся коды команд,
последовательность которых формирует программу для микроконтроллера.
- Оперативная память данных. Здесь хранятся
переменные программ. У большинства микроконтроллеров здесь расположен также
стек.
- Тактовый генератор. Этот генератор определяет
скорость работы микроконтроллера.
- Цепь сброса. Эта цепь служит для правильного
запуска микроконтроллера.
- Последовательный порт — элемент микроконтроллера,
который позволяет обмениваться данными с внешними устройствами при малом
количестве проводов.
- Цифровые линии ввода/вывода. По сравнению с
последовательным портом с помощью этих линий возможно управлять одновременно
несколькими линиями (или проверять несколько линий).
- Таймер. Используется для отсчета временных
интервалов.
- Сторожевой таймер. Это специальный таймер,
предназначенный для предотвращения сбоев программы. Он работает следующим
образом: после запуска он начинает отсчет заданного временного интервала. Если
программа не перезапустит его до истечения этого интервала времени, сторожевой
таймер перезапустит микроконтроллер. Таким образом, программа должна давать
сторожевому таймеру сигнал — все в порядке. Если она этого не сделала, значит,
по какой-либо причине произошел сбой.