МИКРОПРОЦЕССОРНЫЕ СРЕДСТВА И СИСТЕМЫ УПРАВЛЕНИЯ
Мануковский А.В., Саринова А.Ж. МИКРОПРОЦЕССОРНЫЕ СРЕДСТВА И СИСТЕМЫ УПРАВЛЕНИЯ Учебное пособие Алматы, 2021
УДК 004 ББК 32.973.26 М24 Рекомендовано к изданию Учёным советом Павлодарского государственного университета имени С. Торайгырова Протокол №1 от 29.08.2019 г. Рецензенты: A.Ж. Асамбасв - кандидат технических наук, доцент, Павлодарского государственного педагогического института; B.В. Наумов - кандидат технических наук, доцент, Инновациционного Евразийского университета; В.И. Фандюшин - кандидат технических наук, доцент Павлодарского государственного университета им. С. Торайгырова. Мануковский А.В., Саринова А.Ж. М24 Микропроцессорные средства и системы управления: учебное пособие / А.В. Мануковский, А.Ж. Саринова- Алматы: Эпиграф, 2022,- 308 с. ISBN 978-601-342-314-2 В учебном пособии изложены основы микропроцессорной средств и систем управления. Материал проиллюстрирован большим числом примеров и задач, а также представлены лабораторные и практические работы. Учебное пособие рекомендуется студентам технических специальностей вузов, а также разработчикам микропроцессорных систем, имеющих данный интерес к учебному пособию. УДК 004 ББК 32.973.26 ISBN 978-601-342-314-2 €>Мануковский А.В., Саринова А.Ж., 2022 © Эпиграф, 2022 За достоверность материалов, грамматические и орфографические ошибки ответственность несут авторы и составители
ВВЕДЕНИЕ В современном мире трудно найти область техники, где не применялись бы микропроцессоры. Они применяются при вычислениях, выполняют функции управления, используются при обработке звука и изображения. В зависимости от области применения микропроцессора меняются требования к нему. Это накладывает отпечаток на внутреннюю структуру микропроцессора. В настоящее время сложилась следующая классификация микропроцессоров: - универсальные микропроцессоры; - сигнальные микропроцессоры; - микроконтроллеры (однокристальные микро-ЭВМ). Универсальные микропроцессоры используются для построения вычислительных машин и персональных компьютеров. В них используются самые передовые решения по повышению быстродействия без оглядки на габариты, стоимость и потребляемую энергию. Обычно компьютеры работают в режиме диалога «Человек-машина». Компьютеры могут использоваться также для автоматизации управления объектами, процессами или целыми производственными комплексами. Такие компьютеры, в которых работает только одна программа - программа управления, и которые способны функционировать без участия человека в автоматическом режиме, называются контроллерами. Слово «контроллер» образовалось от английского слова «control» - управление. Сигнальные процессоры решают задачи, которые традиционно решала аналоговая схемотехника. Это такие задачи как фильтрация и поиск сигналов, вычисление спектров, преобразование сигналов из одного вида в другой, устранение отражений и выделение полезного сигнала на фоне помех. К сигнальным процессорам предъявляются специфические требования. От них требуются максимальное быстродействие, малые габариты, легкая стыковка с аналого-цифровыми и цифро-аналоговыми преобразователями, большая разрядность обрабатываемых данных и небольшой набор математических операций, обязательно включающий операцию умножения-накопления и аппаратную организацию циклов.
Микроконтроллеры - эго контроллеры, реализованные в виде одной микросхемы, содержащей все необходимые узлы для построения микро-ЭВМ. Они используются для управления малогабаритными и дешёвыми устройствами, такими как бытовые электроприборы, банковские терминалы, торговое оборудование, станки или современные средства связи. Раньше эти микросхемы называли по их внутреннему устройству однокристальными микро- ЭВМ. В микроконтроллерах, в отличие от универсальных микропроцессоров, максимальное внимание уделяется именно габаритам, стоимости и потребляемой энергии. Настоящее учебное пособие посвящено изучению организации и особенностей проектирования микропроцессорных систем на основе микроконтроллеров и практическому освоению средств разработки и отладки 8 и 32 разрядного поколения. В лабораторных работах используются лабораторные стенды «ЛСМК-51» и интегрированная среда разработки (IDE) «BasCom-8051», а также микроконтроллеры семейства ARM Cortex STM32.
1 ОБЩИЕ ПРИНЦИПЫ ПОСТРОЕНИЯ МИКРОПРОЦЕССОРНЫХ СИСТЕМ 1.1 Что такое микроконтроллеры, микропроцессоры и сигнальные процессоры Слово микропроцессоры у всех на слуху. Сигнальные процессоры известно меньшему кругу людей, однако и это понятие достаточно распространено. Что же такое микроконтроллеры? Прежде чем заняться более подробно микроконтроллерами, рассмотрим к какой области техники относятся микросхемы этого класса и какой круг задач они решают. Основные направления развития современной схемотехники приведены на рисунке 1.1. Рисунок 1 . 1 - Место, занимаемое микропроцессорами в современной схемотехнике.
Вся схемотехника разделяется на две большие области: аналоговую и цифровую. Преимущества и недостатки этих технологий известны. Аналоговая схемотехника характеризуется максимальным быстродействием, малым потреблением энергии и малой стабильностью параметров. Цифровая схемотехника обладает прекрасной повторяемостью параметров, а в последние годы и большим по сравнению с аналоговой техникой динамическим диапазоном. Эти преимущества и привели к развитию цифровой техники в последние годы. По мере развития цифровых микросхем их быстродействие достигло впечатляющих результатов. Наиболее быстрые из цифровых микросхем обладают скоростью переключения порядка 3..5 нс. (серия микросхем 74ALS), а внутри кристалла микросхемы, где нет больших ёмкостей нагрузки время переключения измеряется никосекундами. Таким быстродействием обладают программируемые логические схемы и заказные большие интегральные схемы (БИС). В этих микросхемах алгоритм решаемой задачи заключён в их принципиальной схеме. Часто для решаемой задачи не требуется такого быстродействия, каким обладают современные цифровые микросхемы. Однако за быстродействие приходится платить. Быстродействующие микросхемы потребляют значительный ток. Для решения задачи приходится использовать много микросхем, это выливается в стоимость и габариты устройства. Напомню основные характеристики различных технологий производства цифровых микросхем. Наибольшим быстродействием и наименьшей помехоустойчивостью обладала технология ЭСЛ (эмитерно связанная логика). Однако принципиальная её особенность работы в активном режиме приводила к тому, что в процессе работы накапливались и усиливались шумы транзисторов, а это означает, что достаточно сложные алгоритмы работы принципиально будут выполняться с ошибками. Это привело к тому, что в настоящее время эта технология производства цифровых микросхем практически не применяется. Следующий вид технологии производства цифровых микросхем - это ТТЛ (транзисторно-транзисторная логика).
Современные микросхемы, производимые по этой технологии обладают быстродействием, соизмеримым с быстродействием микросхем ЭСЛ. Однако в связи с особенностями внутреннего устройства микросхемы, её потребление не зависит от скорости переключения логических вентилей. Решая задачу, требующую предельнохо быстродействия или задачу, в которой вентили переключаются только несколько раз в секунду, микросхема потребляет одинаковый ток. Поэтому выпускается несколько различных серий микросхем, выполненных по этой технологии, обладающих различным быстродействием и, соответственно различным током потребления. В современном мире наибольшее распространение получила технология КМОП (комплементарные транзисторы с изолированным затвором). Особенностью этой технологии является то, что микросхемы построены по двухтактной схеме. Поэтому в статическом состоянии если верхний транзистор открыт, то закрыт нижний транзистор и наоборот. Это означает, что ток через вентиль не протекает ни в состоянии логической единицы, ни в состоянии логического нуля. То есть в состоянии покоя через микросхему протекают только токи утечки транзисторов и микросхема ток практически не потребляет. Потребление микросхем КМОП возрастает только при увеличении скорости переключения логических вентилей. На предельных скоростях работы микросхемы её потребление сравнивается и даже может превосходить потребление микросхем, выполненных по ТТЛ технологии. Итак, первую задачу (потреблять ток в зависимости от требующегося в данный момент быстродействия) решает применение технологии КМОП (например микросхемы серий 1564, 74НС, 74АНС, универсальные процессоры AMD или PENTIUM). Именно поэтому в настоящее время подавляющее большинство микросхем выпускается именно по этой технологии. Вторую задачу (уменьшение стоимости и габаритов) решают несколькими способами. Для жёсткой логики это разработка специализированных БИС. Использование специализированных БИС позволяет уменьшить габариты устройства, но стоимость его снижается только при крупносерийном производстве. Для среднего и малого объёмов производства такое решение неприемлемо. Тем
не менее для крупносерийного производства альтернативе этой технологии нет, так как при этом реализуегся наименьшая стоимость микросхем. Ещё одним решением уменьшения габаритов и стоимости устройства является применение программируемых логических схем (ПЛИС). В этих микросхемах присутствуют как бы два слоя. Один слой - это набор цифровых модулей, способных решить практически любую задачу. Второй слой хранит таблицу связей между модулями первого слоя. Эту таблицу можно программировать, и тем самым менять схему устройства, а значит и решаемую микросхемой задачу. Это направление активно развивается в настоящее время, но оно не входит в рамки рассмотрения данного курса. Третий способ решения поставленной задачи заключается в том, что можно заставить одно очень быстродействующее усгройство последовательно решать различные задачи, изменяя свою структуру во времени. Это микропроцессоры. В микропроцессорах возможен обмен предельного быстродействия на сложность реализуемого устройства. Именно по этой причине стараются максимально увеличить быстродействие микропроцессоров - это позволяет реализовывать все более сложные устройства в одном и том же объеме. Более того, в одном процессоре можно реализовать несколько устройств одновременно. Именно это решение задачи и рассматривается в данном учебном курсе. Управляющим блоком цифровых систем управления подвижными объектами является специализированный вычислитель, построенный на основе микропроцессорных интегральных схем. Микропроцессор - функциональный блок микросхемотехники, выполненный, как правило, на одной СБИС и предназначенный для цифровой обработки информации и управления ходом этой обработки на основе кодов команд программы, считываемых из запоминающих устройств. Номенклатура современных микропроцессорных средств отличается огромным разнообразием функциональных возможностей и сфер использования. Однако в этом разнообразии можно выделить несколько функциональных групп и некоторые общие принципы логического построения и функционирования.
Однокристальный микроконтроллер (МК)нредставляет собой микропроцессорную систему, реализованную на одном кристалле СБИС. Типичная архитектура МК включает в себя собственно процессор, генератор тактовых импульсов (ГТИ), блоки памяти (ОЗУ и ПЗУ), порты ввода-вывода, таймеры, контроллер прерываний. Функциональные возможности этих блоков ниже, чем у соответствующих специализированных БИС из МПК. Основными достоинствами МК являются конструктивное и схемотехническое единство всех блоков, общий электрический интерфейс, удобство программной настройки режимов работы всех подсистем. Благодаря этому микроконтроллеры являются популярным средством для построения встраиваемых цифровых управляющих систем. Сами однокристальные микроконтроллеры и вычислительно- управляющие системы на их основе реализованы в соответствии с Гарвардской архитектурой. МК для задач логического управления - логические процессоры- имеют специальные аппаратные расширения (память с битовой адресацией, порты с индивидуальной настройкой каждой линии) и расширенный набор команд логической обработки данных. В современных разработках широкое применение нашли МК серии К 1816 (аналог Intel MCS-51), а также AVR - и PIC- контроллеры. Существуют также многочисленные расширения стандартного MCS-51 — с повышенным быстродействием, увеличенными объемами памяти и набором функций. Аналоговые процессоры для обработки сигналов -включают в себя, кроме типовых блоков МК, включают в себя многоканальные АЦП и ЦАГІ, блоки формирования управляющих импульсов (например, ШИМ-импульсов). Такой процессор представляет собой интегрированную систему обработки аналоговой информации в цифровом виде. Еще одна разновидность МК - конвейерные сигначьные процессоры, содержащие конвейеры для реализации алгоритмов цифровой фильтрации данных и обработки изображений. Такие алгоритмы состоят из последовательности операций умножения и суммирования. Конвейер представляет собой набор однотипных блоков для выполнения операций умножения-суммирования, включенных последовательно друг за другом. Таким образом, результат выполнения операции в одном блоке автоматически
является входными данными для следующего блока. Применение конвейерной обработки позволяет выдавать на каждом такте работы системы очередной результат вычислений. Примером подобных устройств являются микроконтроллеры Intel MCS-196/296. МП с микропрограммным принципом управления конструктивно выполняют в виде секций БИС малой разрядности, имеющих средства для наращивания разрядности обрабатываемых данных. Для подобных МП в принципе отсутствует понятие системы команд. Действия процессора на тот или иной управляющий код (считанный из памяти код команды) определяются программистом путем настройки специального блока или БИС - блока микропрограммного управления. Таким образом, разработчики системы могут сформировать систему команд, ориентированную на эффективное решение определенного круга задач. Существенным недостатком подобных систем является громоздкость аппаратных модулей на их основе, а также необходимость написания программного обеспечения буквально в машинных кодах, что затрудняет разработку. В настоящее время такие секционированные МП практически вытеснены однокристальными МП и микроконтроллерами. Современная реализация идеи микропрограммного управления представлена программируемыми логическими интегральными схемами (ПЛИС). Основу ПЛИС составляет матрица элементарных логических блоков. За счет изменения связей между блоками можно построить вычислительное устройство произвольной структуры, которое идеально соответствует конкретной задаче. Проектирование структуры ПЛИС выполняется на специальном языке описания аппаратуры (VHDL) или с помощью графических средств с последующей генерацией программы формирования структуры. Как правило, на ПЛИС реализуют нетривиальные алгоритмы (нечеткая логика, эмуляция аппаратуры, адаптивное управление). 1.2 Области применения микроконтроллеров, микропроцессоров и сигнальных процессоров Термин контроллер образовался от английского слова to control - управлять. Эти устройства могут основываться на различных
принципах работы от механических или оптических устройств до электронных аналоговых или цифровых устройств. Механические устройства управления обладают низкой надежностью и высокой стоимостью по сравнению с электронными блоками управления, поэтому в дальнейшем мы такие устройства рассматривать не будем. Электронные аналоговые устройства требуют постоянной регулировки в процессе эксплуатации, что увеличивает стоимость их эксплуатации. Поэтому такие устройства к настоящему времени почти не используются. Наиболее распространенными на сегодняшний день схемами управления являются схемы, построенные на основе цифровых микросхем. В зависимости от стоимости и габаритов устройства, которым требуется управлять, определяются и требования к контроллеру. Если объект управления занимает десятки метров по площади, как, например, автоматические телефонные станции, базовые станции сотовых систем связи или радиорелейные линии связи, то в качестве контроллеров можно использовать универсальные компьютеры. Управление при этом можно осуществлять через встроенные порты компьютера (LPT, COM, USB или ETHERNET). В такие компьютеры при включении питания заносится управляющая программа, которая и превращает универсальный компьютер в контроллер. Использование универсального компьютера в качестве контроллера позволяет в кратчайшие сроки производить разработку новых систем связи, легко их модернизировать (путём простой смены программы) а также использовать готовые массовые (а значит дешёвые) блоки. Если же к контроллеру предъявляются особенные требования, такие, как работа в условиях тряски, расширенном диапазоне температур, воздействия агрессивных сред, то приходится использовать промышленные варианты универсальных компьютеров. Естественно, что эти компьютеры значительно дороже обычных универсальных компьютеров, но всё равно они позволяют экономить время разработки системы, за счёт того, что не нужно вести разработку аппаратуры контроллера. Контроллеры требуются не только для больших систем, но и для малогабаритных устройств таких как радиоприёмники, радиостанции, магнитофоны или сотовые аппараты. В таких
устройствах к контроллерам предъявляются жёсткие требования по стоимости, габаритам и температурному диапазону работы. Этим требованиям не могут удовлетворить даже промышленные варианты универсального компьютера. Приходится вести разработку контроллеров на основе однокристальных ЭВМ, которые в свою очередь получили название микроконтроллеры. Любые устройства, в том числе и устройства связи, радиоавтоматики или аудиовизуальной аппаратуры требуют присутствия в своем составе устройства управления (контроллера). Контроллеры требуются практически во всех предметах и устройствах, которые окружают нас. В качестве примера на рисунке 1.2 приведены узлы автомобиля, в которых применяются микроконтроллеры. •Антирадар Зажигание Управление скоростью -Тормоза Управление У правление светом ПРЕДОТВРАЩЕНИЕ СТОЛКНОВЕНИЙ Кондиционер - Внешние датчики Управление радиоаппаратурой заднего сидения системы оезопасности Датчики системы безопасности АВТОПОДКАЧКА КОЛЁС Активная подвеска Система предотвращения заносов УПРАВЛЕНИЕ СИДЕНИЕМ * - УПРАВЛЕНИЕ ТРАНСМИС СИЕЙ Рисунок 1.2 - Узлы автомобиля, в которых применяются микроконтроллеры. Внешний вид автомобильной и носимой радиостанции, в которых тоже применяются микросхемы микроконтроллеров, показаны на рисунке 1.3 и рисунке 1.4.
Рисунок 1.3 - Малогабаритная радиостанция с применением микроконтроллеров. Рисунок 1.4- Носимая радиостанция с применением микроконтроллеров.
Как выглядит носимая радиостанция внутри, показывает фотография, приведённая на рисунке 1.5. Рисунок 1.5 - Печатная плата приёмопередатчика носимой радиостанции. Наиболее распространёнными в настоящее время являются микроконтроллеры семейства MCS-51. Это семейство поддерживается рядом фирм - производителей микросхем. Не менее распространёнными в мире (но не в СНГ) являются микроконтроллеры фирмы Motorolla. Это такие семейства как НС05, НС07, НС11 и многие другие. Пожалуй, не менее популярными микроконтроллерами являются микроконтроллеры семейства AVR фирмы Atmel. Одно перечисление семейств микроконтроллеров может занять несколько страниц текста, поэтому ограничимся приведёнными семействами восьмиразрядных микроконтроллеров.
13 Причины широкого распространения микропроцессоров Цифровые микросхемы к настоящем)' времени достигли впечатляющего быстродействия при приемлемом токе потребления. Наиболее быстрые из цифровых микросхем обладают скоростью переключения порядка 3..5 нс. (серия микросхем 74ALS). В то же время приходится платить за быстродействие микросхем повышеным током потребления. Исключением являются микросхемы, построенные на основе КМОП технологии (например, микросхемы серий 1564, 74НС, 74АНС). В этих микросхемах потребляемый ток прямо пропорционален скорости переключения логических вентилей в микросхеме. Т.е. микросхема автоматически увеличивает ток потребления, если от нее требуется большее быстродействие, поэтому в настоящее время подавляющее большинство микросхем выпускается именно по этой технологии. Часто цифровые устройства выполняют достаточно сложные задачи. Возникает вопрос - раз микросхемы достигли такого высокого быстродействия, то нельзя ли использовать одну и ту же микросхему многократно? Тогда можно будет обменивать быстродействие микросхем на сложность решаемой задачи. Именно этот обмен и позволяют осуществлять микропроцессоры. В этих микросхемах многократно используется одно и то же устройство - АЛУ (арифметическо-логическое устройство). Поэтому возможен обмен предельного быстродействия микроконтроллера на сложность реализуемого устройства. Именно по этой причине стараются максимально увеличить быстродействие микропроцессоров - это позволяет реализовывать все более сложные устройства в одном и том же объеме. Ещё одной причиной широкого распространения микропроцессоров стало то, что микропроцессор - это универсальная микросхема, которая может выполнять практически любые функции. Универсальность обеспечивает широкий спрос на эта микросхемы, а значит массовость производства. Стоимость же микросхем обратно пропорциональна массовости их производства, то есть микропроцессоры становятся дешёвыми микросхемами и тем самым ещё больше увеличивают спрос.
В наибольшей степени все вышеперечисленные свойства проявляются в однокристальных микроЭВМ или. как их чаще называют по области применения: микроконтроллерах. В микроконтроллерах на одном кристалле объединяются все составные части компьютера: микропроцессор (часто называют ядро микроконтроллера), ОЗУ, ПЗУ, таймеры и порты ввода- вывода. Выводы: - КМОП технология позволяет обменивать скорость работы на потребляемый ток (чем с большей скоростью переключаются логические элементы микросхемы, тем больший ток потребляет микросхема); - микроконтроллеры позволяют реализовывать схему управления практически любой сложности на одной универсальной микросхеме; - микроконтроллеры позволяют обменивать скорость своей работы на сложность проектируемого устройства; - микроконтроллеры позволяют реализовывать аппаратуру с минимальной стоимостью, габаритами и током потребления; - срок разработки аппаратуры на микроконтроллерах минимален; - модернизация аппаратуры заключается в смене управляющей программы.
Лабораторная работа №1 Тема: Освоение лабораторного стенда «ЛСМК-51». Цель работы: Изучить назначение, устройство и принцип действия лабораторного стенда «ЛСМК-51» и ознакомиться с порядком его использования. В результате выполнения работы студент должен: знать: - теоретические основы создания и отладки программноаппаратных комплексов на основе микроконтроллеров; - назначение и области применения различных средств отладки; - устройство и принцип действия лабораторного стенда «ЛСМК-51»; уметь: - использовать стенд «ЛСМК-51» для отладки управляющих программ. Краткие теоретические сведения. Методика создания и отладки программного обеспечения для микроконтроллеров с помощью отладочного стенда «ЛСМК-51» включает в себя следующие этапы: 1) Знакомство с принципом действия и техническими характеристиками отладочного стенда. 2) Знакомство с принципами управления работой стенда из терминальной программы, в частности, загрузкой и запуском отлаживаемых программ. Освоение способов организации обмена информацией между стендом и персональным компьютером. 3) Постановка задачи по автоматическому управлению объектом или процессом (далее просто «объектом»), её формализация. 4) Знакомство с объектом управления, составление алгоритма последовательности подачи управлящих сигналов на него и фиксации его ответной реакции. 5) Написание текста программы управления объектом на «Ассемблере» или языке высокого уровня. В качестве орі^нов управления и индикации для микроконтроллера на этом этапе удобно использовать консоль - клавиатуру и экран монитора ПК.
6) Трансляция текста программы в исполняемый код MCS-51 с помощью одного из кросс-трансляторов. (В данном лабораторном практикуме применяется компилятор Бейсика “BasCom-8051”). 7) Выявление части ошибок в проі-рамме с помощью экранного отладчика и программного симулятора, входящих в состав интегрированной среды разработки «BasCom-8051». 8) Коррекция текста пршраммы с учётом результатов симуляции работы программы. 9) Подключение к разъему стенда периферийного объекта, управление которым следует организовать. 10) Загрузка исполняемого кода программы в память стенда и ее запуск на исполнение с помощью отладочного монитора. 11) Пробный прогон программы и наблюдение за работой периферийного объекта режиме реального времени. 12) Анализ выдаваемых на консоль сообщений и реакции объекта. Выявление ошибок и отклонений в работе отлаживаемой программы. 13) Коррекция текста программы с учётом результатов пробного прогона. Разработка и отладка программы путём повторения п.1.5- п.1.13 продолжается до достижения планируемого результата. При написании достаточно простых программ этап предварительной отладки с помощью кросс-отладчика и программного симулятора (п.1.8.) может быть пропущен. Познакомимся более подробно с некоторыми из вышеупомянутых средств отладки программно-аппаратных комплексов на основе микроконтроллеров. Кросс-отладчики Кросс-отладчики позволяют отлаживать программы, предназначенные для микроконтроллеров, на персональных компьютерах (практически для этого чаще всего используются IBM PC). Отладчик является своеобразным мостом между разработчиком и отладочным средством. Состав и объем информации, проходящей через средства ввода-вывода, доступность ее для восприятия, контроля, и, при необходимости, для коррекции и модификации напрямую зависят от свойств и качества отладчика.
Хороший отладчик позволяет осуществлять: - загрузку отлаживаемой программы в память системы; - вывод на монитор состояния и содержимого всех регистров и памяти, и при необходимости, их модификацию; - управление процессом эмуляции. Более мощные отладчики, обычно их называют высокоуровневыми (High-Level Debuggers), помимо этого, позволяют: - вести символьную отладку, благодаря тому, что отладчик «знает» адреса всех символьных переменных, массивов и структур (за счет использования специальной информации, поставляемой компилятором). При этом пользователь может оперировать более приемлемыми для человека символьными именами, не утруждая себя запоминанием их адресов; - контролировать и анализировать не только дизассемблированный текст, но и исходный текст программы, написанной на языке высокого уровня, и даже с собственными комментариями. Такой огладчик позволяет пользователю одновременно контролировать ход выполнения программы и видеть соответствие между исходным текстом, образом программы в машинных кодах, и состоянием всех ресурсов эмулируемого микроконтроллера. Следует отметить, что высокоуровневый отладчик обеспечивает выполнение всех своих функций только в том случае, если используется кросс-компилятор, поставляющий полную и правильную отладочную информацию (не все компиляторы, особенно их пиратские версии, поставляют такую информацию) и при этом формат ее представления должен быть «знаком» отладчику. Кросс-компилятор, входящий в состав интегрированной среды разработки «BasCom-8051», поставляет отладчику среды «BasCom- 8051» такую информацию. Отладочные мониторы. Принцип работы. Отладочный монитор - специальная программа, загружаемая в память отлаживаемой системы. Она вынуждает процессор пользователя производить, кроме прикладной задачи, еще и отладочные функции:
- загрузку прикладных кодов пользователя в свободную от монитора намять; - установку точек останова; - запуск и останов загруженной программы в реальном времени; - проход программы пользователя по шагам (часть функций трассировщика); - просмотр, редактирование содержимого памяти и управляющих регистров. Программа монитора обязательно должна работать в связке с внешним компьютером или пассивным терминалом, на которых и происходит визуализация и управление процессом отладки. Повторим, что отладочные мониторы используют тот процессор, который уже стоит на плате пользователя. Достоинства и недостатки отладочных мониторов. Достоинством этого подхода являются очень малые затраты при сохранении возможности вести отладку в реальном времени. Главным недостатком является отвлечение ресурсов микроконтроллера на отладочные и связные процедуры, например: монитор занимает некоторый объем памяти, прерывания, последовательный канал. Объем отвлекаемых ресурсов зависит от искусства разработчика монитора. В последнее время появились изделия, которые практически не занимают аппаратных ресурсов процессора, о них рассказано в разделе эмуляторы ПЗУ. Как правило каждая фирма-разработчик семейства микроконтроллеров или программных средств отладки выпускает и вариант отладочного монитора, он обычно поставляется вместе с платами развития. Отладочные модули. Отладочный модуль (ОМ) представляет собой небольшую, как правило, одноплатную микроЭВМ (правильнее, микроконтроллер), построенную на однотипном МК. Однако при отладке приходится учитывать ограничения, связанные с тем, что часть ресурсов отладочного модуля (пространство адресов памяти программ и памяти данных, некоторые линии портов и уровни прерываний) не может быть использована прикладным ПО, так как вынужденно используется резидентной операционной системой (ОС). Резидентная ОС, или Монитор - это программа, обеспечивающая взаимодействие
atu.kzRkJQdWJsaXNoZXIy MTExODQxMg==