Электроника, схемотехника, микроконтроллеры
Цель материалов и источников информации в этом разделе – познакомить всех желающих с основами аналоговой и цифровой электроники, схемотехники, Arduino, ПЛИС (CPLD, FPGA), программированием микроконтроллеров.
Основы электроники
В интернете можно найти огромное количество информации для начинающих электронщиков. Однако, к сожалению, не всем этим материалам можно доверять. Зачастую сайты по электронике создаются не для того, чтобы делиться знаниями и информацией, а только ради трафика и рекламы. Есть и проблема так называемых неофитов, недавно открывших для себя мир электроники. Они ещё сами не разобрались в её сути, но уже стремятся делиться своими идеями с другими, благо современные технологии позволяют это делать быстро и легко. Материалы подобных сайтов и блогеров содержат множество ошибок, как в части теории, так и в чертежах принципиальных схем. Нередко бывает, что собранные начинающими электронщиками по этим описаниям электронные устройства, не работают, тем самым отбивая дальнейший интерес к продолжению изучения электроники. Поэтому, в этом разделе мы постарались выложить ссылки на те ресурсы и книги, которые точно окажутся полезными для новичков в мире электроники.
- Сайт «Электроника для всех». Один из самых популярных русскоязычных сайтов для изучающих электронику. Помимо статей по основам электроники, здесь можно найти подробные обучающие материалы по микроконтроллерам семейства AVR, в которых подробно расписаны все мелочи, подводные камни и грабли, на которые часто наступают начинающие (читайте об этом ниже, в разделе «Программирование микроконтроллеров»). Формат сайта не случайно был выбран в виде блога — так автор обеспечивает обратную связь читателям. С этой особенностью сайта связано то, что самые первые материалы для начинающих нужно искать на последних страницах блога.
- Раздел для начинающих электронщиков на сайте РадиоКот. Сайт, где можно найти ответы на самые странные вопросы, которые возникают у людей, только-только взявших в руки паяльник.
- Комикс «Паять просто». Если уж вы решили взять в руки паяльник, то вам просто необходимо изучить рисунки этого замечательного комикса. Хотя, на самом деле, чтобы начать эксперименты с электроникой, совсем не обязательно сразу учиться паять. Можно начать с беспаечной макетной платы, и об этом рассказывается в следующем абзаце.
- Курс практических занятий на макетных платах без пайки. «Первые шаги» – курс по основам цифровой электроники. Структура сайта несколько необычна, он построен в виде форума, но зато все схемы этого проекта многократно проверены и заведомо работоспособны, если, конечно, собраны без ошибок.
- Электроника для начинающих на Хабре. На самом известном ресурсе для русскоговорящих айтишников регулярно публикуются материалы для начинающих электронщиков и радиолюбителей. Ценность этой площадки - не только в тысячах интересных статей, но и в комментариях от сообщества, многие их которых бывают не менее интересны и полезны, чем сама статья.
- Список самых нужных и важных книг для начинающих изучать электронику, вы найдете в разделе «Литература» внизу страницы. В описании книг приведены ссылки на сайты издательств, которые их выпустили в свет. А сами книги можно заказать в библиотеке, либо найти их электронные версии в сети.
Arduino
Платформа Arduino быстро захватила умы самых широких народных масс всех возрастов, и тем самым значительно пополнила ряды «электронщиков». Теперь любой человек, совершенно незнакомый с электроникой и программированием, может быстро, легко и сравнительно недорого воплотить в жизнь свои самые безумные проекты, связанные с созданием электронных устройств. Безусловно, Arduino — замечательный инструмент для быстрого прототипирования и обучения. Но если настанет тот день, когда вы решите, что не готовы дальше мириться с ограничениями этой платформы, то смело переходе к разделу «Программирование микроконтроллеров». А пока - изучите предлагаемые курсы, уроки и идеи проектов с Arduino и действуйте!
- Онлайн-курс МФТИ на Coursera «Строим роботов и другие устройства на Arduino. От светофора до 3D-принтера». Курс состоит из серии практических задач на создание устройств, которые взаимодействуют с физическим миром. Для освоения всей программы потребуется 6 недель, предполагаемая нагрузка – не более 5 часов в неделю.
- Идеи проектов, связанные с электроникой и платформой Arduino. Подробные видеоинструкции от Alex Gyver, одного из самых известных блогеров в российском YouTube по тематике DIY.
Micro:bit
Micro:bit - это компактная электронная плата для обучения основам программирования умных устройств, носимой электроники, мобильных роботов и т.п. На плате размещены кнопки, матричный светодиодный дисплей, акселерометр, магнитометр, сенсоры освещённости и температуры, а также Bluetooth для связи с другими платами micro:bit, смартфоном или планшетом. Может управлять тем устройством, в которое она встроена.
- Пример учебного проекта - «micro:bit и хомяк». По ссылке вы найдете подробный журнал проекта для хомяка по имени Груша (полное имя - Груффала). Пример того, какое домашнее исследование можно провести с помощью micro:bit.
Цифровая электроника, ПЛИС (CPLD, FPGA)
ПЛИС – это сокращение от словосочетания «Программируемая Логическая Интегральная Схема». Слово ПЛИС встречается в русскоязычной документации вместо англоязычных сокращений CPLD и FPGA. Логика работы ПЛИС определяется не на фабрике изготовителем микросхемы, а вами, с помощью специальных средств: программаторов и языков описания аппаратуры типа Verilog или VHDL. На ПЛИС можно реализовать хоть простую электронную схему, состоящую из логических вентилей и триггеров, хоть микроконтроллер, или даже процессор вашей собственной архитектуры. Именно используя ПЛИС, инженеры разрабатывают новые чипы - например, процессоры или аппаратные ускорители нейросетей.
- Зачем цифровая схемотехника программисту. Юрий Панчул, проектировщик цифровых микросхем в Кремниевой долине, написал для русскоязычных изданий несколько десятков статей, популяризирующих изучение цифровой схемотехники. В этой статье рассказывается о лекциях, которые были прочитаны студентам университета Иннополис в рамках курса компьютерной архитектуры.
- Онлайн курс «Как работают создатели умных наночипов». Курс состоит из трех модулей. В первом модуле «От транзистора до микросхемы» подробно разбираются объекты, с которыми работает инженер-электронщик: электрические сигналы, логические элементы и ячейки памяти. В двух последующих мини-курсах - «Логическая сторона цифровой схемотехники» и «Физическая сторона цифровой схемотехники» подробно рассказывается о том, как собственно инженеры строят схемы. Данный материал разработан для школьников 8-11 классов, интересующихся электроникой и программированием.
- Сайт Марсоход посвящён разработке устройств на базе FPGA и CPLD компании Altera для начинающих.
- Цикл статей, посвященных программируемой логике и среде разработки Quartus компании Altera, ориентирован на работу с недорогой и доступной платой CPLD-EPM570 на чипе Altera Max II.
Программирование микроконтроллеров
- Программирование современных микроконтроллеров. Курс лекций от IoT Академии Samsung и компании Unwired Devices (11 видео). Это практический курс по программированию микроконтроллеров на ядре ARM Cortex-M3, который читался в Институте Информационных Технологий Московского Технологического Университета (больше известного, как МИРЭА).
- Курс «Штурмуем STM32». Курс был прочитан студентам Радиотехнического Факультета УрФУ, а также - школьникам СУНЦ УрФУ. От автора: «почему этот курс не про Arduino? Во-первых, их и так много в сети. Во-вторых, копать надо глубже. Иногда это больно, иногда неприятно, но, как известно, «no pain, no gain». Вряд ли современный (на границе технологий) продукт можно выпустить на Arduino. Во всяком случае, пока iPhone делают не на данной платформе».
- AVR. Учебный курс. Учебный курс по микроконтроллерам AVR от легендарного челябинского популяризатора электроники DI HALT'a. Челябинские электронщики настолько суровы, что... Продолжение этой фразы вы сможете написать сами, после изучения материалов этого курса. Ибо курс начинается с ассемблера. Автор считает, что без понимания работы контроллера на уровне машинных инструкций, невозможно научиться писать надежные и быстрые программы. Ну а после ассемблерной части сразу же начинается курс на Си.
Литература
- «Искусство схемотехники», Хоровиц П., Хилл У. Самая известная книга по аналоговой и цифровой схемотехнике, носит неофициальное звание «Библии электроники». Однако для новичков может показаться сложной, поэтому, возможно, стоит попробовать начать изучение основ электроники с популярных книг Р.Свореня и Ю.Ревича, о которых будет рассказано ниже.
- https://dmkpress.com/catalog/electronics/textbooks/978-5-97060-604-9/ «Электричество шаг за шагом».] Автор этой книги - Рудольф Анатольевич Сворень. На его книгах, посвященных изучению электроники, выросло несколько поколений читателей. В сети можно найти электронные копии и других его книг, в первую очередь - мегапопулярной «Электроники шаг за шагом».
- «Изучаем Arduino: инструменты и методы технического волшебства» от Джереми Блума. Пожалуй, лучшая книга по Ардуино как для новичков, так и для опытных пользователей. Удачно сочетает лёгкий для понимания стиль изложения и одновременно глубокое погружение в тему.
- «Цифровая схемотехника и архитектура компьютера», Харрис Д.М,, Харрис С.Л. В этой книге представлен современный подход к разработке цифровых устройств. Авторы начинают с цифровых логических элементов, переходят к разработке комбинационных и последовательностных схем, а затем используют эти базовые блоки, как основу для самого сложного: проектирования настоящего процессора. В тексте приводится множество примеров на языках SystemVerilog и VHDL, иллюстрирующие методы и способы проектирования схем с помощью САПР. Изучив эту книгу, читатели смогут разработать свой собственный микропроцессор и получат полное понимание того, как он работает.