Вот еще кое-какие рекомендации
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено undefined 30 сентября 2003 г. 19:02
В ответ на: спасибо за ответ! перечисленные требования к разводке я давно принимаю обязательными к исполнению ! отправлено LEXA 30 сентября 2003 г. 17:05

Во-первых разводка.
- Если у ПИКа несколько ног земли / питания то все они должны быть соединены по кратчайшему пути. Земля - обязательно без переходных отверстий.
- Непосредственно под кристаллом дОлжно быть земляному полигону.
- любая соседняя пара ног питания должна быть зашунтирована SMD керамикой не далее чем в 3 мм от ног.
- земля на кандюки кварца (если есть) должна идти от ближайшей земляной ноги ПИКа индивидуально и не иметь ответвлений на другие [импульсные] потребители / источники. Корпус кварца также припаивать к земле. А лучше вообще без кварца - только Internal RC.
- Земля на RC-цепочку сброса - также по кратчайшему пути от ног питания ПИКа. Кандюк на сбросе обязателен независимо от наличия или отсутствия супервизора. Кстати последние обычно не ставлю, поскольку в действительно плохой шумовой обстановке часто дают ложные сбросы. Эту проблему частично решает кандюк непосредственно на питании супервизора и его кратчайшая разводка к ногам ПИКа. Впрочем, встроенный супервизор ПИка, ИМХО, просто великолепен.

Во-вторых питание. Полностью линейные источники крайне неприятны поскольку не в состоянии хорошо подавить шумы первичного источника. По этой причине вся прецизионная измерительная техника промышленного назаначения или устройства работающие в тяжелой шумовой обстановке оснащаются исключительно _ОБРАТНОХОДОВЫМИ_ импульсными преобразователями от первичной сети.

В третьих, только однократки. Никаких флешей, особенно если топологические нормы кристалла 0,7 мкм и мельче. Избегайте кристаллов с малыми топологическими нормами.

В четвертых - структура программы. Здесь правила уже тяжело формулировать, они слишком индивидуальны. Вот самые простые, но не единственно верные:
- Пишите программы в стиле "одного большого цикла", где вся логика построена на переменных. Зачем? Одна точка с WDT, улететь по сбою в "неправильное" место и не вернуться гораздо труднее. Можно вставить единый контроль состояния системы и реинициализации в этот цикл.
- Как можно меньше call. Макросы, инклюды - рулез форева пока места хватает. Никаких WDT в теле call.
- Как можно реже пользовать прерывания. Если все же пришлось - обязательно вставить блокировку сброса WDT если долго нет прерываний, вставить реинициализацию всего что можно в основной цикл и т.п.
- Корректный перезапуск. Аккуратно контролировать источник перезапуска, делать выводы по возможности. Будьте здесь осторожны - если ошибиться в логике, легко получить обратный эффект - система не восстановится даже по сбросу...
- По возможности мониторить и сохранять лог аварийных событий для анализа - позволит выявить слабые места программы.

Перечисленные методы позволили располагать газоанализаторы прямо в промышленных озонаторных установках (кто не знает - это что-то вроде шокера на несколько кВт), располагать ПИКи в 10 сантиметрах от цепей 5кВ 100кГц (там даже Альтера 7000-я сбивалась регулярно) без всяких экранировок и гальваноразвязок, делать устройства устойчивые к разряду шокера на на земляную заливку на плате и т.п.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru