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

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

• Методы размещения монтажа на многослойной печатаной плате: Так как ваше изделие наиболее вероятно будет смонтировано на многослойной плате, важно понять, как расположить монтаж на плате, чтобы уменьшить помехи. Если используется многослойная плата, крайние слои, должны состоять из дорожек источника питания и земли. Дорожки, проводящие сигналы, должны быть проведены на промежуточных уровнях, расположенных между между уровнями источника питания и уровнем заземления. Линии сигнала на смежных уровнях должны быть направленный перпендикулярно друг к другу. Неиспользуемое пространство (промежутки) на печатной плате должно быть покрыты заземленной металлизацией. В дополнение к этим методам, дорожки, передающие сигналы таймеров должны быть сгруппированы вблизи друг от друга. Следует избегать резких поворотов дорожек (под углом в 90°). Вместо этого, необходимо использовать плавные изменения направления. Должны быть удалены короткие ответвления от основных дорожек платы.

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

6.4. Защитное программирование

В предыдущем разделе мы обсуждали метод «проб и ошибок» при проектировании, позволяющий снизить влияние помех. В этом разделе мы исследуем эффективные программные методы, чтобы снизить чувствительность к помехам. Эта информация адаптирована из статей по применению (Application Notes) фирмы Motorola/Freescale Semiconductor. Точная ссылка приведена в разделе «Что еще прочитать» в конце этой главы. 

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

• Опрос: В этой методике входной вывод опрашивается в течение некоторого периода времени, чтобы гарантировать, что зафиксирован входной сигнал, а не сигнал помехи. Ранее мы обсуждали противодребезговые методы переключения. Как было упомянуто, при одном из таких методов должен контролироваться входной сигнал, чтобы убедиться, что он не изменяется в заданном временном интервале.

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

• Неиспользуемая память: микросхема B32 содержит 32 Кб флэш-памяти, для хранения программы. Было бы идеально записывать в эту память программы объемом точно в 32 Кб. Как эффективно использовать свободное пространство памяти? Хороший программный прием состоит в том, чтобы поместить несколько команд программного прерывания (SWI) на свободное пространство. Следовательно, если процессор неправильно закончит программу в этом пространстве, будет выдана команда программного прерывания. Это обеспечивает устранение сбоев в программе.

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

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

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