Читаем Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С полностью

2. Разработайте алгоритм и блок-схему программы для аппаратного подключения переключателей и светодиодов рис. 5.11. Зеленый светодиод на выходе PC0 должен светиться, если нажата кнопка на входе PB0. На остальных выводах порта PC0 должны гореть красные светодиоды. Если нажата кнопка на входе PB1, должны светиться зеленые светодиоды на выходах PC0 и PC1. И так далее, для всех кнопок, заканчивая PB7, при нажатии которой должны загореться 8 зеленых светодиодов.

3. Измените текст программы параграфа 5.8.2, разрешив доступ по комбинации из шести правильных символов.

Глава 6

ДОБРО ПОЖАЛОВАТЬ В РЕАЛЬНЫЙ МИР!

ПОСЛЕ ИЗУЧЕНИЯ ГЛАВЫ ВЫ СМОЖЕТЕ:

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

• Изложить правила обращения с устройствами на базе КМОП и разработать рекомендации.

• Определить источники и внутренних и внешних помех для микроконтроллерной системы.

• Перечислить основные организации, ответственные за обеспечение директив и руководств по электромагнитной совместимости (ЭМС).

• Рассказать о методах проектирования, позволяющих минимизировать чувствительность к помехам.

• Применить программные методы защиты, чтобы минимизировать чувствительность к помехам.

• Описать методы обнаружения помех.

• Применить методы управления питанием, позволяющие снизить мощность, потребляемую микроконтроллерной системой.

• Понять изменения, определяемые выбором батарейного источника питания для микропроцессорной системы.

• Определить основные свойства супервизоров для управления микропроцессорами.

• Определить и реализовать меры энергосбережения.

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

6.1. Ужасные истории об ошибках проектирования

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

6.1.1. Случай квадратичного генератора

Прежде, чем обсудить первый случай, приведем некоторую основную информацию о восстановлении сигнала. Полезная методика создания аналогового сигнала заданной формы, состоит в том, чтобы разделить сигнал на ряд аналоговых данных. Аналоговые значения в отдельных точках преобразуются затем в двоичные коды от $00 до $FF. При этом минимальный сигнал в 0 В соответствует числу $00, а максимальный сигнал, например, в 5 В соответствует числу $FF. Аналоговые данные, расположенные между этими двумя экстремальными значениями преобразуются по линейному закону в 8-разрядный двоичный код. Не правда ли эта методика что-то вам напоминает? Конечно, это процесс аналого-цифрового преобразования (АЦП), который мы уже обсуждали в главе 4.

Чтобы восстановить аналоговый сигнал, отдельные двоичные коды последовательно пересылаются на цифро-аналоговый преобразователь (ЦАП). Перед тем, как продолжить рассмотрение, проведем короткий обзор основных концепций для ЦАП.

Цифро-аналоговый преобразователь. Цифро-аналоговый преобразователь (ЦАП) преобразует входной многоразрядный двоичный код в соответствующий аналоговый выходной сигнал (см. рис. 6.1). Мы не будем обсуждать различные методы преобразования, применяемые в ЦАП. Мы просто представим ЦАП как «черный ящик» и опишем его функции с помощью блок-схемы. Аналоговый выходной сигнал создается суммированием взвешенных двоичных входных сигналов, как показано на рисунке.

Рис.6.1. Цифро-аналоговый преобразователь

Цифро-аналоговый преобразователь (ЦАП) преобразует многоразрядный двоичный входной код в соответствующий аналоговый выходной сигнал. Аналоговый выходной сигнал создается суммированием взвешенных двоичных входных сигналов. Символ UMAX соответствует максимальному напряжению


Например, когда на входе ЦАП формируется код $CA, старший двоичный бит умножается на половину значения UMAX. Следующий по старшинству бит умножается на четвертую часть UMAX и так далее. Все взвешенные биты суммируются, давая в результате аналоговое значение.

Перейти на страницу:

Похожие книги

C# 4.0: полное руководство
C# 4.0: полное руководство

В этом полном руководстве по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все основные средства языка: типы данных, операторы, управляющие операторы, классы, интерфейсы, методы, делегаты, индексаторы, события, указатели, обобщения, коллекции, основные библиотеки классов, средства многопоточного программирования и директивы препроцессора. Подробно описаны новые возможности C#, в том числе PLINQ, библиотека TPL, динамический тип данных, а также именованные и необязательные аргументы. Это справочное пособие снабжено массой полезных советов авторитетного автора и сотнями примеров программ с комментариями, благодаря которым они становятся понятными любому читателю независимо от уровня его подготовки. Книга рассчитана на широкий круг читателей, интересующихся программированием на C#.Введите сюда краткую аннотацию

Герберт Шилдт

Программирование, программы, базы данных
Программирование. Принципы и практика использования C++ Исправленное издание
Программирование. Принципы и практика использования C++ Исправленное издание

Специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по C++. Книга написана Бьярне Страуструпом — автором языка программирования C++ — и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный -ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка «из первых рук».

Бьёрн Страуструп , Ирина Сергеевна Козлова , Бьерн Страуструп , Валерий Федорович Альмухаметов

Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT