Эта статья предназначена для тех, кто хочет отказаться от проектов на отладочных платах (Arduino, Nucleo, Discovery и другие) и испытать себя в разработке, программировании и отладке собственной печатной платы. У вас на это могут быть свои мотивы: размеры, устройств больше 10, эстетический вид или любые другие. В этой статье я хочу рассказать по пару лайфхаков при разработке таких схем.
Как же происходит разработка устройств в нашем конструкторском бюро. Существует такой негласный алгоритм (программированием занимаются отдельные люди).
Получение технического задания
Разработка принципиальной схемы с основным функционалом
Заказ электронных компонентов
Разводка первого варианта печатной платы
Разработка принципиальной схемы с исправлением ошибок и дополнение ее оставшимся функционалом
Разводка второго варианта печатной платы
Внесение окончательных изменений в принципиальную схему
Разводка окончательного варианта печатной платы
Эти пункты могут добавляться или сокращаться в зависимости от ваших параметров. Я не претендую на истинность в первой инстанции.
После получения технического задания быстренько рисуем принципиальную схему с основным функционалом и параллельно оформляем заказ деталей, потому что пока все это идет… может вечность пройти.
У меня лично была история как при заказе компонента, который был В НАЛИЧИИ его пришлось ждать полгода… Так что этот этап желательно сделать максимально быстро.
За время доставки как раз происходит разработка ПЕРВОГО варианта электронной схемы, ибо нельзя с первого раза сделать красивое и законченное устройство. Будьте готовы: то, что может пойти не так обязательно пойдет не так. Конечно, позже, на опыте у вас все будет получаться с первого раза, но сейчас готовьтесь к пайке навесом. Вот мы и подходим к предмету обсуждения нашей статьи первый вариант печатной платы. От этого прототипа зависит очень многое: сколько времени у вас будет на разработку второго варианта, удобство работы программистам, удобство внесения изменений и тому подобные моменты. И так перейдем к тонким моментам
Изначально в плату вы включаете только основной функционал, ибо нужно как можно скорее разработать и отдать на производство, но потом приходится что-то допаивать навесом разные модули типа дисплея или каких-то датчиков. Для этого выведите отельные PLS коннекторы под различные интерфейсы типа UART, I2C, SPI и другие. Не обязательно как-то заморачиваться с коннектором или расположением. Делайте как вам удобно просто чтобы было если это необходимо быстро подключить модуль с таким интерфейсом. И в целом не стоит оставлять ножки микроконтроллера без места, где к ним можно комфортно припаяться.
Частенько в процессе работы приходится менять местами подключаемые выводы микроконтроллера. Для удобного решения этих проблем заранее закладывайте кучу перемычек вокруг микросхемы (примерно, как показано на рисунке).
![](https://habrastorage.org/getpro/habr/upload_files/78f/d74/db8/78fd74db87e4339eee017aec1ed1be1e.png)
В принципе припоя и проводов всегда в избытке так что не обязательно использовать резисторы с нулевым сопротивлением. Что интересно этот лайфхак частично перекрывает предыдущий. Помните! Не оставляйте ни один вывод без внимания! В начале вы не представляете, какие выводы вы будете использовать, а припаиваться к ножкам контроллера совершенно не надежно.
Так же хорошо бы упростить разработку ПО для программистов. Часто им нужно получать обратную связь от программируемого устройства. К примеру, выполняется какая-то функция в программе или нет. Для этого я обычно добавляю три светодиода.
![](https://habrastorage.org/getpro/habr/upload_files/b15/eb2/d0c/b15eb2d0c3631b2f8d2d50bcbb4de8ae.jpg)
Во-первых, для того чтобы зажечь светодиод вам необходима одна строчка кода. Это гораздо удобнее чем выводить сообщение об ошибке на дисплей. Его на этом этапе еще может и не быть. Светодиод основа, если хотите «Hello World!» из мира микроконтроллеров.
Во-вторых, для схемотехника не составляет труда добавить светодиод в схему. 2 минуты отрисовать схему. 5 минут развести на плате.
В-третьих, три светодиода позволяют указать или 3 ошибки одновременно или 8 по одной.
Про три ошибки это понятно. Каждой ошибке присвоен конкретный светодиод. А про 8 ошибок расскажу подробнее. Ошибку можно закодировать комбинацией светодиодов смотри табличку ниже.
![](https://habrastorage.org/getpro/habr/upload_files/ccc/465/614/ccc465614b74f3ca28f21e987a700281.png)
P.S.
На этом пока все. Кому-то эти лайфхаки могут показаться очевидными, но это не так. Когда еще что-то вспомню опишу в новой статейке. Если у вас есть свои истории, грабли или дополнения буду рад увидеть в комментариях ваши мысли. До встречи.