Микушин Александр Владимирович
«Занимательно о микроконтроллерах»

Введение

«...Основной принцип книги — это микропроцессорная техника в картинках, но без формул, то есть формулы используются только там, где без них действительно невозможно обойтись...»

А. Микушин


Изображение к книге Занимательно о микроконтроллерах
 Об авторе

Изображение к книге Занимательно о микроконтроллерах

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

* * *

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

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

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

Почему в качестве примера выбрано семейство микроконтроллеров MCS-51? Да потому что оно наиболее распространено в мире. Даже на территории России производится несколько типов микросхем, выполненных по этой архитектуре. Это семейство стало классикой микроконтроллеров. Разобраться с работой этих микросхем проще всего, а подобрать подходящую для конкретной задачи — тем более. Даже если один из многочисленных производителей микроконтроллеров семейства MCS-51 прекратит их производство, то всегда найдутся десятки других, которые с радостью предоставят вам свою продукцию, так что усилия, затраченные на изучение предлагаемого материала, не пропадут даром.

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

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

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


Как пользоваться книгой

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

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

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


Изображение к книге Занимательно о микроконтроллерах

Глава 1
Что такое микроконтроллеры, микропроцессоры и сигнальные процессоры

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


Классификация микропроцессоров

Современные электронные устройства, в том числе и микроконтроллеры, выполняются на основе интегральных микросхем. Основные разновидности применяемых в настоящее время микросхем показаны на рис. 1.1.


Изображение к книге Занимательно о микроконтроллерах

Рис. 1.1.Место, занимаемое микропроцессорами среди микросхем


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

По мере развития цифровых микросхем их быстродействие достигло впечатляющих результатов. Наиболее быстрые обладают временем переключения порядка 3–5 не (серия микросхем 74ALS), а внутри кристалла микросхемы, где нет больших емкостей нагрузки, время переключения измеряется пикосекундами. Таким быстродействием обладают программируемые логические интегральные схемы (ПЛИС) и заказные большие интегральные схемы (БИС). В этих микросхемах алгоритм решаемой задачи воплощен в их внутренней структуре.

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

— быстродействующие микросхемы потребляют значительный ток, что ограничивает их сложность (уровень интеграции);

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

Напомню основные характеристики различных видов цифровых микросхем.

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