Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С - [5]
В настоящее время многие производители полупроводниковых компонентов, такие как Intel, Microchip, Hitachi, NEC, Atmel, Texas Instruments и др., выпускают микроконтроллеры различной сложности. Относительно простые МК находят применение в бытовой технике и игрушках. Наиболее сложные высокопроизводительные МК используются в коммуникационном оборудовании, для управления самолетами и военной техникой. В этой книге мы предлагаем Вам изучить два типа МК: семейства 68HC12 и HCS12 компании Motorola.
Встраиваемые системы на основе МК окружают Вас со всех сторон. Вы не можете прожить без них и часа. Например, Ваш будильник, телефон и карманный компьютер — все это встраиваемые системы на микроконтроллерах. Ваш дом буквально наводнен встраиваемыми системами: кофеварка, телевизор с дистанционным пультом управления, стиральная машина, кухонный комбайн, электрическая духовка и СВЧ печь, холодильник, система охранной сигнализации, музыкальный центр и DVD проигрыватель… Мы перечислили отнюдь не все домашние устройства.
А Ваш автомобиль? Он ежедневно «возит с собой» от 10 до 50 микроконтроллеров. Встроенные МК делают агрегаты Вашего автомобиля более безопасными, экономичными, обеспечивающими легкость управления и комфортабельность движения. Микроконтроллеры используются в системе впрыска топлива и в системе торможения, для управления трансмиссией и рулевой колонкой, в устройствах приборной панели, маршрутного компьютера, центрального замка и аудио системы. Микроконтроллеры нагревают или охлаждают сиденья Вашего автомобиля, поворачивают зеркала, вращают фары, управляют движением дворников и стекол дверей. В некоторых моделях они могут даже измерить давление в шинах, показать маршрут до цели назначения, определить усталость водителя. Неправда ли, Ваше перемещение на автомобиле не было бы привлекательным без всех этих встроенных систем, ставших уже привычными?
А теперь обратимся к тем областям нашего существования, в которых встраиваемые микропроцессорные системы играют ключевую роль. Технические и общественные системы, перечисленные на рис. 1.1, просто не могли бы существовать без разнообразных встраиваемых систем, а наша военная безопасность и система коммуникаций для управления государством основываются на множестве высокопроизводительных встраиваемых систем. На борту орбитальных космических станций и спутников считают и управляют встраиваемые системы. Любой современный станок и измерительный прибор — это тоже встраиваемая система. Большинство сложных медицинских диагностических комплексов использует для обработки результатов встраиваемые системы. Совершенствование узлов современного автомобиля и других транспортных средств также немыслимо без встраиваемых систем. И наконец, бытовая техника и устройства домашнего развлечения с мультимедийными технологиями — все это встраиваемые системы.
Рис. 1.1. Области применения встраиваемых систем
1.2. Особенности встраиваемых систем
Встраиваемые системы существенно отличаются от компьютеров общего применения. В данном параграфе мы обсудим специфические проблемы, которые должны быть решены разработчиком встраиваемой системы на начальном этапе проектирования.
1.2.1. Работа в реальном времени
Когда мы говорим, что встраиваемая система должна работать в реальном масштабе времени, мы подразумеваем, что система должна производить определенные вычисления за строго определенные временные интервалы. Если система не может произвести необходимые вычисления за отведенный временной интервал, то в лучшем случае объект ее управления будет работать с низкими техническими характеристиками, а в худшем случае будет создана аварийная ситуация. Используя термин «вычисления в реальном времени», мы имеем в виду, что интервал времени, предоставляемый для этих вычислений, ограничен. При этом его численное значение определяется конкретной задачей и может существенно различаться для разных систем. Например, система антиблокировки колес автомобиля должна опросить датчики состояния каждого из четырех колес (колесо скользит или катится) и выработать необходимые сигналы для приводов тормозов в течение нескольких миллисекунд. О такой задаче мы говорим, что она исполняется в реальном времени. Другой пример — система GPS навигации автомобиля, которая должна обновлять карту на дисплее в кабине водителя за несколько секунд. Это тоже будет система реального времени. Однако вычислительную систему, которая рассчитывает оптимальные коэффициенты сложного цифрового фильтра в течение трех часов, мы не называем системой реального времени, поскольку время ее исполнения важно, но не критично для пользователя.
Познакомившись с терминологией, давайте обсудим, какой должна быть встраиваемая система для того, чтобы успешно работать в реальном времени. Во–первых, система должна быть разработана таким образом, чтобы необходимый цикл вычислений укладывался в отведенный временной интервал. Для этого необходимо выбрать соответствующую вычислительную производительность микроконтроллера, разработать эффективный по быстродействию алгоритм, разработать схемы интерфейсов с минимально возможными задержками в передаче сигналов. Во–вторых, встраиваемая система должна обладать устойчивостью по отношению к внешним данным. Допустим, для формирования результата система должна получать данные извне. А эти данные не пришли вовремя. Тогда система не может выдать необходимый результат в требуемый момент времени, однако она не должна «зависнуть». Она должна продолжить поставлять результаты в реальном времени, но в ином, возможно сокращенном виде.
Arduino — стандартный микроконтроллер, получивший широкое признание у инженеров, мастеров и преподавателей благодаря своей простоте, невысокой стоимости и большому разнообразию плат расширения. Платы расширения, подключаемые к основной плате Arduino, позволяют выходить в Интернет, управлять роботами и домашней автоматикой.Простые проекты на основе Arduino не вызывают сложностей в реализации. Но, вступив на территорию, не охваченную вводными руководствами, и увеличивая сложность проектов, вы быстро столкнетесь с проблемой нехватки знаний — врагом всех программистов.Эта книга задумана как продолжение бестселлера «Programming Arduino: Getting Started with Sketches».
Эта «книга — об электронных книгах». Скорее всего, в бумажном виде, но об электронных книгах. Возможно наоборот. Это уже электронная книга для тех, кто хочет читать, используя в качестве носителя какое-то устройство. Книга состоит из такого материала, который обогатит ваши знания за короткое время. В ней представлена базовая информация об электронных книгах и более углублённая информация для профессионалов разного уровня.
Современное общество является технологическим – мы со всех сторон окружены машинами. Эти машины готовят нам еду, развлекают нас, помогают преодолевать огромные расстояния, безгранично увеличивают наши возможности познания мира и безмерно усиливают нашу продуктивность.Эта книга не о том, как избавиться от машин. Эта книга о том, как получить максимум пользы от вложения ваших, с таким трудом заработанных, средств в технику, которая помогает решать ваши задачи.Если вы обходитесь без техники, немедленно отложите эту книгу – она не для вас.
Знания — это интеллектуальная недвижимость. После покупки КПК практически каждый пытается настроить его «под себя». Большинство настроек можно сделать штатным способом через менюшки и кнопочки, а остальное можно настроить с помощью специальных программ. Но что делать, если таковой нет? Есть некоторые вещи, сделать которые можно только посредством редактирования системного реестра Windows, где хранится информация о настройках операционной системы и программах. Читайте об этом в статье «Редактируем реестр».
Рассмотрены основы информатики и описаны современные аппаратные средства персонального компьютера. Сформулированы подходы к определению основных понятий в области информатики и раскрыто их содержание. Дана классификация современных аппаратных средств персонального компьютера и приведены их основные характеристики. Все основные положения иллюстрированы примерами, в которых при решении конкретных задач используются соответствующие программные средства.Рекомендуется для подготовки по дисциплине «Информатика».
Очень сложно было разделить все проблемы на разделы (т.к. одна проблема может относиться сразу к нескольким разделам), поэтому советуем просмотреть и другие разделы, если Вы не найдете решение/описание нужной Вам в соответствующем разделе. Надеемся, что этот справочник поможет Вам в трудную минуту. Здесь содержатся описания наиболее частых проблем, возникающих при работе с компьютером, и методы их решения (и даже предотвращения)! Если ни один из этих советов Вам не поможет - обращайтесь к мастеру. Если ваш компьютер еще на гарантии, то сами лучше в системник не лезьте (если Вы, конечно, не "мастер-самоучка"), а просто проверьте все внешние факторы (провода, подключения, разъемы и т.д.)