16) Состав и структура микроконтроллера.
Микроконтроллер является сложным техническим устройством, предназначенным для обработки цифровой информации. Обычно МК строится на базе выбранного типа микропроцессора, лучшим образом обеспечивающего требуемые функции микропроцессорной системы в целом.
Рис. 1 - Структура микроконтроллера
Контроллер состоит из двух основных частей: ядра и модуля ввода-вывода. Ядро МК составляют микропроцессор, системный контроллер (СК) и устройства памяти. В структуре МК микропроцессор играет главную роль: осуществляет арифметическую и логическую обработку данных, поступающих от внешних устройств (ВУ) системы, и совместно с системным контроллером управляет потоками информации между всеми устройствами МС. Связь микропроцессора с объектом управления осуществляется через УСО и шины системы: шину данных (ШД), шину адреса (ША) и шину управления (ШУ). Подключение УСО к шине данных системы осуществляется через порты ввода-вывода системы, которые обычно входят в состав интерфейса системы. Интерфейс — совокупность программных и аппаратных средств, обеспечивающих обмен информацией между МП и ВУ.
Информация о состоянии объекта управления передается к МП через УСО и шину данных. По этому же направлению передаются управляющие сигналы от МП к объекту управления. Поэтому шина Данных МК двунаправленная. Ее разрядность обычно соответствует разрядности арифметико-логического устройства (АЛУ) микропроцессора и определяет диапазон представляемых двоичных цифровых чисел.
Обращение к ВУ системы осуществляется через адрес, присвоенный каждому ВУ. Адрес ВУ представляет собой цифровой двоичный код, который передается в направлении МП->ВУ. Передача адреса системы осуществляется через однонаправленную шину адреса. Разрядность ША адреса в системах с различными микропроцессорами может составлять 8, 16, 32 двоичных разряда. Чем больше разрядность ША, тем больше количество адресов можно закодировать: для n-разрядной ША объем адресного пространства системы V=2n. Для 16-разрядной ША объем адресного пространства V=216=65536=64К. Шина управления системы служит для передачи системных управляющих сигналов от МП к ВУ и в обратном направлении. Причем ШУ устроено так, что по каждому ее проводу передается управляющий сигнал только в одном направлении. Формирование системных управляющих сигналов, обеспечивающих необходимые операции между МП и ВУ, осуществляется в системном контроллере за счет использования некоторых сигналов управления МП. Поэтому СК можно считать первичным управляющим устройством системы или первичным автоматом. Важнейшей задачей первичного автомата является обеспечение правильного взаимодействия между всеми устройствами МК.
Для хранения программ и данных ядро МК содержит ОЗУ (оперативное запоминающее устройство), ПЗУ (постоянное ЗУ) и РПЗУ (репрограммируемое ЗУ). ПЗУ используется только для хранения программ управления. Эти программы, разработанные и отлаженные на специальных средствах отладки, заносятся в ПЗУ в заводских условиях, и пользователь изменять их не может. РПЗУ отличается тем, что пользователь может изменять его содержание, т.е. запрограммировать. ОЗУ используется для хранения данных, необходимых для выполнения основной программы управления. Обращение к ячейкам памяти адресное. Адреса (n — разрядные двоичные числа) выставляются на шину адреса счетчиком команд (PC) микропроцессора. Часть разрядов ША поступает непосредственно к микросхемам памяти, а остальные (старшие) разряды используются в схеме дешифрации ДШ для выборки микросхем памяти. Таким образом, каждый адрес на ША определяет позицию микросхемы и конкретную ячейку внутри нее.
Любой алгоритм управления МО реализуется управляющей программой, которая представляет собой цифровые двоичные коды, размещенные в ячейках ПЗУ. Для того чтобы определить, что должен делать МП в определенный момент времени, он должен извлечь код операции из ячейки памяти, где этот код хранится. Процедура чтения кода операции реализуется следующим образом: МП выставляет на ША адрес ячейки памяти, на ШУ формируется системный управляющий сигнал ЧТ.ЗУ (чтение памяти) и данные (содержимое ЗУ) через ШД поступают в МП. После определения кода операции происходит выполнение самой операции: либо пересылка данных между МП и ячейками памяти, либо пересылка данных между МП и ОУ. В последнем случае данные будут передаваться в направлении МП -> ШД -> модуль ввода-вывода -> УСО -> ОУ или в обратном направлении.
Особенностью управляющих контроллеров является то, что в его состав не входят средства отладки программ, так как основной набор программных модулей, составляющих библиотеку программ МК, заносится в его память в заводских условиях и изменению не подлежит. Пользователь имеет только возможность из имеющегося набора программных модулей составить конфигурацию контура направления. Для этой цели МК снабжается пультом управления, с помощью которого оператор, используя специальные команды на панели пульта управления, осуществляет выбор требуемого алгоритма управления.
Возрастающая степень интеграции цифровых микросхем определила появление в настоящее время промышленных микроконтроллеров, реализованных на одном кристалле. На кристалле такого контроллера, кроме микропроцессора, находятся модуль памяти, интерфейсные схемы и даже таймер. По сути такие контроллеры — это однокристальные ЭВМ малой производительности. Примерами перепрограммируемых однокристальных МК являются контроллеры серии К1816, К145. Разработка микропроцессорных систем на базе однокристальных МК сводится к разработке устройства сопряжения с объектом и программного обеспечения. Система команд однокристальных МК (ОМК) позволяет организовать сложную управляющую систему с большим количеством внутрипрограммных ветвлений в соответствии с целью управления и состоянием первичных преобразователей.