Самоделки своими руками на микроконтроллере / Хабр
Всем привет.Очередная самоделка сделанная своими руками на микроконтроллере. Как-то на днях между мной и знакомым зашел разговор о птицах. Как выяснилось из разговора, он занимается разведением различных певчих птиц, при этом он ловит диких птиц, с последующим одомашниванием. Особой хитрости в устройствах для поимки птиц нет. Используют клетки как с механическими срабатывающими устройствами, так и с примитивными дерганиями за веревку. Также используют для приманки как непосредственно саму птицу, посаженную в клетку, так и воспроизводят пение нужной птицы при помощи какого-то проигрывателя. У меня сразу созрел план реализации данного устройства на микроконтроллере. Вот и решил поделиться результатом своего творения.
Сразу встал вопрос, какую клетку применить. Поскольку у меня ничего подходящего не было, то нужно было приобретать или изготовить клетку самому. Делать клетку мне не хотелось, больше хотелось сосредоточиться на электронике.
Потратив немного времени, я придумал схему. Написание программы для микроконтроллера также не заняло много времени – буквально полчаса, и мое творение уже работало.
Принцип закрывания дверцы клетки весьма прост. Дверка клетки подпирается специальным упором, сделанным из медной проволоки. К упору крепится капроновая нить нужной длины. Если потянуть за нить, то упор соскальзывает, и дверка клетки под собственным весом закрывается. Но это в ручном режиме, а я хотел реализовать автоматический процесс без участия кого-либо.
Для управления механизмом закрывания дверцы клетки был применен сервопривод. Но в процессе работы он создавал шум. Шум мог спугнуть птицу. Поэтому сервопривод я заменил на коллекторный двигатель, взятый из радиоуправляемой машинки. Он работал тихо и идеально подходил, тем более что управлять коллекторным двигателем не составляло сложностей.
Для определения, находится ли уже птица в клетке, я использовал недорогой датчик движения. Сам датчик движения уже является законченным девайсом, и паять ничего не нужно. Но у данного датчика угол срабатывания весьма большой, а мне нужно, чтобы он реагировал только во внутренней области клетки. Для ограничения угла срабатывания я поместил датчик в цоколь, когда-то служившей эконом-лампы. Из картона вырезал своего рода заглушку с отверстием посередине для датчика. Пошаманив с расстоянием данной заглушки относительно датчика, настроил оптимальный угол для срабатывания датчика.
В качестве зазывалы для птиц я решил применить звуковой модуль WTV020M01 с записанным на микроSD карте памяти пением чижа и щегла. Именно их я и собирался ловить. Поскольку я использовал один звуковой файл, то и управлять звуковым модулем я решил простим способом, без использования протокола обмена между звуковым модулем и микроконтроллером.
При подаче на девятую ножку звукового модуля низкого сигнала, модуль начинал воспроизводить. Как только звук воспроизводился на пятнадцатой ноге звукового модуля, устанавливается низкий уровень. Благодаря этому микроконтроллер отслеживал воспроизведение звука.
Поскольку я реализовал паузу между циклами воспроизведения звука, то для остановки воспроизведения звука программа подает низкий уровень на первую ножку звукового модуля (reset). Звуковой модуль является законченным устройством со своим усилителем для звука, и, по большому счету, в дополнительном усилителе звука он не нуждается. Но мне данного усиления звука показалось мало, и в качестве усилителя звука я применил микросхему TDA2822M. В режиме воспроизведения звука потребляет 120 миллиампер. Учитывая, что поимка птицы займет какое-то время, в качестве автономной батареи питания я применил не совсем новый аккумулятор от бесперебойника (всё равно валялся без дела).
Принцип электронного птицелова прост, и схема состоит в основном из готовых модулей.
Программа и схема — atmel-programme.clan.su/Levushka.zip
Работу данного устройства можно посмотреть на видео.
МАКЕТ ДЛЯ СБОРКИ СХЕМ НА МИКРОКОНТРОЛЛЕРАХ
Всем привет! Недавно начал осваивать программирование микроконтроллеров AVR, решил купить себе набор для отладки схем на МК в Dip корпусах. В данный набор входит макетная плата, с блоком питания и набором проводов. С таким набором сборка будет быстрее. Да и вообще, с цанговой макетной платой, можно составлять и доводить до ума электрические схемы без пайки, в процессе отладки устройства, что намного упрощает и ускоряет процесс конструирования любого изделия.
Макетная плата состоит из 3 частей, которые скрепляются между собой, это два ряда участков проводников с питанием, которые расположены по бокам, и могут отсоединяться, и средней части с отверстиями для крепления электрических компонентов, где собирается основная часть устройства.
Участки проводников питания, расположены вдоль корпуса, а дорожки в средней части платы перпендикулярно им. Снизу к корпусу платы, приклеен двухсторонний скотч, так что при желании, плату можно приклеить в любом удобном для вас месте.
Также в комплекте с макетной платой, я заказал блок питания, специально для сборки макетов устройств на плате. Особенность его в том, что благодаря своим ножкам, он прекрасно подключается к плате сверху, его пины вставляются в ряды шин питания, и блок питания отлично фиксируется.
Одновременно обеспечивается подача питания, на шины, предназначенные для питания схемы, по бокам платы. Эти проводники выделены, синим цветом (минус), и красным (плюс). Блок питания можно запитать, как от USB порта компьютера, так и от зарядного устройства смартфона или планшета с выходом USB. Также БП для макетной платы можно запитать и от блока питания с круглым разъёмом, выдающим напряжение 6.5 — 12 вольт.
Определить полярность на круглом разъеме, можно прозвонив контакты на массу, мультиметром в режиме звуковой прозвонки. Напряжение блок выдаёт стабилизированное, как 5 вольт, так и 3.3 вольта, нужное нам для питания микроконтроллеров, и периферии. Переключается напряжение при помощи перемычек, (джамперов, аналогичных применяемым в компьютерных комплектующих) можно выбрать, 5 вольт или 3,3 вольта.
На одну шину питания, можно подать 5 вольт, для питания собственно МК, а на вторую, если потребуется 3.3, что требуется для запитывания, например, дисплеев, карт памяти и других внешних устройств. Такое решение позволяет избежать сборки дополнительного стабилизатора, и экономит время и место на плате. На блоке питания есть кнопка включения, после нажатия, загорается светодиод индикации, и собственно подается питание на шины питания.
Величины тока выдаваемого блоком питания, хватает для питания большинства устройств на МК, по крайней мере, их цифровой части. Если же не хватит, то можно подключать внешний блок питания, но мощность потребляемая устройством должна быть в разумных пределах, так как пластмасса макетной платы, при прохождении больших токов может нагреваться, в результате произойдет оплавление, и вывод детали перестанет надежно фиксироваться.
Восстановить такую неисправность вряд — ли получится.Проводами, которые были в комплекте вместе с платой, удобно пользоваться в работе, намного удобнее, чем кусочками проводов, нарезанными из той же витой пары. Главный минус их, это относительно высокая цена. Правда, бывали случаи, когда контакт в проводках был плохой, производство Китай, сами понимаете. Но это единичные случаи, в таком случае нужно просто пошевелить провод, если схема заработает, так как должна, провод заменяем, отбраковываем, и больше не используем.
Отверстия в плате сделаны таким образом, что большинство деталей вставляется в неё без проблем. Например, микроконтроллер в Dip корпусе, очень хорошо туда встаёт, а при помощи проводков, которые вставляются в отверстия на макетной плате, и обеспечивают необходимый нам контакт, мы можем буквально в течении пятнадцати минут – получаса собрать макет устройства. Вкратце поясню, для тех, кто не имел ранее дел с цанговыми макетными платами: когда мы вставляем два провода в отверстия макетной платы, относящихся к одной группе, мы обеспечиваем между ними электрический контакт.
Внутри платы идут гребенки контактов, которые соединяют определенные группы отверстий. На основной части платы они разбиты по 5 штук, на дополнительных шинах питания, они иногда идут через всю плату, а иногда только до середины платы позволяя таким образом сделать 4 независимых шины питания. Это бывает нужно, когда, например, цифровая часть питается у нас напряжением 5 вольт, а силовая часть, к примеру, от 12 вольт.
При этом, разумеется, ничего паять не нужно, и изменения в схему устройства вносятся очень легко. Главное ничего не перепутать при сборке, для этого нужно ориентироваться по буквенным и цифровым обозначениям на плате. Каждое отверстие на плате, имеет свою букву и свою цифру, которые не повторяются, что может быть полезно при сборке макетов сложных устройств, с многочисленными соединениями.
Если кто-то заинтересовался в приобретении такой платы, на фото выше можно видеть размеры этого БП, он устанавливается в любую макетную плату стандартного размера с шинами питания по бокам платы. Ниже приведена информация с Али экспресс об этом блоке питания:
Для того чтобы заказать такой блок питания отдельно, достаточно набрать на сайте Али экспресс в поиске “Power supply Bread board Arduino”. Стоимость одинаковых лотов сильно различается по цене, реально немного поискав найти данный блок питания по смешной цене всего 1.19 доллара. Позволить такой блок питания, даже с учетом роста курса доллара, думаю, может себе любой человек, занимающийся сборкой устройств на микроконтроллерах. Автор статьи — Ermak.
Originally posted 2019-02-28 20:18:30. Republished by Blog Post Promoter
Лучшие эл схемы на микроконтроллерах сделай сам. Автосхемы, схемы для авто, своими руками. Частотомер III от DANYK
Принцип закрывания дверцы клетки весьма прост. Дверка клетки подпирается специальным упором, сделанным из медной проволоки. К упору крепится капроновая нить нужной длины. Если потянуть за нить, то упор соскальзывает, и дверка клетки под собственным весом закрывается. Но это в ручном режиме, а я хотел реализовать автоматический процесс без участия кого-либо.
Для управления механизмом закрывания дверцы клетки был применен сервопривод. Но в процессе работы он создавал шум. Шум мог спугнуть птицу. Поэтому сервопривод я заменил на коллекторный двигатель, взятый из радиоуправляемой машинки. Он работал тихо и идеально подходил, тем более что управлять коллекторным двигателем не составляло сложностей.
Для определения, находится ли уже птица в клетке, я использовал недорогой датчик движения. Сам датчик движения уже является законченным девайсом, и паять ничего не нужно. Но у данного датчика угол срабатывания весьма большой, а мне нужно, чтобы он реагировал только во внутренней области клетки. Для ограничения угла срабатывания я поместил датчик в цоколь, когда-то служившей эконом-лампы. Из картона вырезал своего рода заглушку с отверстием посередине для датчика. Пошаманив с расстоянием данной заглушки относительно датчика, настроил оптимальный угол для срабатывания датчика.
В качестве зазывалы для птиц я решил применить звуковой модуль WTV020M01 с записанным на микроSD карте памяти пением чижа и щегла. Именно их я и собирался ловить. Поскольку я использовал один звуковой файл, то и управлять звуковым модулем я решил простим способом, без использования протокола обмена между звуковым модулем и микроконтроллером.
При подаче на девятую ножку звукового модуля низкого сигнала, модуль начинал воспроизводить. Как только звук воспроизводился на пятнадцатой ноге звукового модуля, устанавливается низкий уровень. Благодаря этому микроконтроллер отслеживал воспроизведение звука.
Поскольку я реализовал паузу между циклами воспроизведения звука, то для остановки воспроизведения звука программа подает низкий уровень на первую ножку звукового модуля (reset). Звуковой модуль является законченным устройством со своим усилителем для звука, и, по большому счету, в дополнительном усилителе звука он не нуждается. Но мне данного усиления звука показалось мало, и в качестве усилителя звука я применил микросхему TDA2822M. В режиме воспроизведения звука потребляет 120 миллиампер. Учитывая, что поимка птицы займет какое-то время, в качестве автономной батареи питания я применил не совсем новый аккумулятор от бесперебойника (всё равно валялся без дела).
Принцип электронного птицелова прост, и схема состоит в основном из готовых модулей.
Программа и схема –
Теперь у меня на столе лежит два одинаковых программатора. А всё для того, чтобы попробовать новую прошивку. Эти близняшки буду шить друг друга. Все опыты проводятся под MS Windows XP SP3 .
Цель – увеличение скорости работы и расширение совместимости программатора.
Популярная среда разработки Arduino IDE привлекает большим количеством готовых библиотек и интересных проектов, которые можно найти на просторах Сети.
Некоторое время назад оказались в моем распоряжении несколько микроконтроллеров ATMEL ATMega163 и ATMega163L. Микросхемы были взяты из отслуживших свой срок девайсов. Данный контроллер очень похож на ATMega16, и фактически является его ранней версией.
Привет читателям Датагора! Мне удалось собрать вольтметр минимальных размеров с посегментной разверткой индикатора при довольно высокой функциональности, с автоматическим определением типа индикатора и выбором режимов.
Прочитав статьи Edward Ned’а, я собрал DIP-версию и проверил ее в работе. Действительно вольтметр работал, ток через вывод микросхемы к индикатору не превышал 16 миллиампер в импульсе, так что работа микросхемы без резисторов, ограничивающих токи сегментов, вполне допустима и не вызывает перегрузок элементов.
Не понравилось слишком частое обновление показаний на дисплее и предложенная шкала «999». Хотелось подправить программу, но исходных кодов автор не выкладывает.
В это же мне потребовались вольтметр и амперметр для небольшого блока питания. Можно было собрать на совмещенный вариант, а можно было собрать два миниатюрных вольтметра, причем габариты двух вольтметров получались меньше совмещенного варианта.
Свой выбор я остановил на микросхеме и написал исходный код для посегментной развертки индикатора.
В процессе написания кода возникла идея программируемого переключения шкал и положения запятой, что и удалось реализовать.
Механический энкодер – вещь удобная в использовании, но он имеет некоторые досадные недостатки. В частности, контакты со временем изнашиваются и приходят в негодность, появляется дребезг. Оптические энкодеры гораздо надежнее, но они дороже, многие из них боятся пыли, и они редко встречаются в таком виде, в котором их удобно было бы использовать в радиотехнике.
Короче, когда я узнал о том, что шаговый двигатель можно использовать как энкодер, эта идея мне очень понравилась.
Практически вечный энкодер! Замучить его невозможно: соберешь раз и можешь энкодить всю жизнь.
Предварительный усилитель-коммутатор с цифровым управлением. Применяем с программированием через оболочку Arduino, электронные потенциометры от Microchip, графический TFT.
Разрабатывать и собирать это устройство в мои планы не входило. Ну вот просто никак! У меня уже есть два предварительных усилителя. Оба меня вполне устраивают.
Но, как обычно происходит у меня, стечение обстоятельств или цепь неких событий, и вот нарисовалась задача на ближайшее время.
Здравствуйте, уважаемые читатели ! Хочу представить вам « » – проект подающего робота для настольного тенниса, который будет полезен новичкам и любителям при отработке приёма различного типа подач в любую зону стола, поможет рассчитать тайминг и силу приёма мяча.
А ещё можно просто привыкнуть к новой накладке или ракетке, и хорошенько простучать её.
Приветствую читателей ! Есть у меня пожилой компьютер, которому уже исполнилось лет десять. Параметры у него соответствующие: «пенёк» 3,0 ГГц, пара Гб ОЗУ и древняя материнская плата EliteGroup 915-й серии.
И задумал я куда-нибудь старичка пристроить (подарить, продать), т. к. выбрасывать жалко. Но мешала задуманному одна неприятность: у материнки не срабатывало включение от кнопки питания, и что бы я ни делал, начиная от проверки проводов и заканчивая прозвонкой транзисторов на плате, проблему найти так и не смог. Отдавать в ремонт спецам – ремонт окажется дороже всего компа.
Думал я, думал и нашёл способ запустить моего бедолагу. Выдернул батарею BIOS-а, от чего комп испугался и сразу стартанул при следующем появлении питания! А дальше – почти в каждом BIOS-е есть запуск ПК от любой кнопки клавиатуры или кнопки POWER на клавиатуре. Казалось бы, проблема решена. Ан нет, есть нюансы. С USB-клавиатур запуск не срабатывал. Плюс не хотелось пугать нового хозяина, компьютер должен стартовать от привычной кнопки питания на корпусе.
Бывает идешь мимо припаркованных машин, и замечаешь краем глаза, что кто то уже давно, судя по тусклому свечению ламп, забыл свет выключить. Кто то и сам так попадал. Хорошо когда есть штатный сигнализатор не выключенного света, а когда нету поможет вот такая поделка: Незабывайка умеет пищать, когда не выключен свет и умеет пропикивать втыкание задней передачи.
Схема цифрового индикатора уровня топлива обладает высокой степенью повторяемости, даже если опыт работы с микроконтроллерами незначителен, поэтому разобраться в тонкостях процесса сборки и настройки не вызывает проблем. Программатор Громова – это простейший программатор, который необходим для программирования avr микроконтроллера. Программатор Горомова хорошо подходит как для внутрисхемного, так и для стандартного схемного программирования. Ниже приведена схема контроля индикатора топлива.
Плавное включение и выключение светодиодов в любом режиме (дверь открыта, и плафон включен). Так же авто выключение через пять минут. И минимальное потребление тока в режиме ожидания.
Вариант 1 – Коммутация по минусу. (с применением N-канальных транзисторов) 1) “коммутация по минусу”, т.е такой вариант при котором один питающий провод лампы соединен с +12В аккумулятора (источника питания), а второй провод коммутирует ток через лампу тем самым включает ее. В данном варианте будет подаваться минус. Для таких схем нужно применять N-канальные полевые транзисторы в качестве выходных ключей.
Сам модем небольшого размера, недорог, работает без проблем, четко и быстро и вообще нареканий нет к нему. Единственный минус для меня был, это необходимость его включать и выключать кнопкой. Если его не выключать, то модем работал от встроенного аккумулятора, который в итоге садился и модем снова было нужно включать.
Принцип работы прост: привращении крутилки регулируется громкость, при нажатии – выключение-включение звука. Нужно для кар писи на винде или андройде
Изначально в Lifan Smily (да и не только) режим работы заднего дворника – единственный, и называется он «всегда махать». Особенно негативно воспринимается такой режим в наступивший сезон дождей, когда на заднем стекле собираются капли, но в недостаточном для одного прохода дворника количестве. Так, приходится либо слушать скрип резины по стеклу, либо изображать робота и периодически включать-выключать дворник.
Немного доработал схему реле времени задержки включения освещения салона для автомобиля Форд (схема разрабатывалась для вполне конкретного автомобиля, как замена штатного реле Ford 85GG-13C718-AA, но была успешно установлена в отечественную “классику”).
Уже не первый раз проскакивают такие поделки. Но почему-то люди жмуться на прошивки. Хотя в большинстве своём они основаны на проекте elmchan “Simple SD Audio Player with an 8-pin IC”. Исходниник не открывают аргументируя, что пришлось исправлять проект, что в у меня качество лучше… и т.д. Короче взяли open source проект, собрали, и выдаёте за своё.
Итак. Микроконтроллер Attiny 13- так сказать сердце данного устройства. С его прошивкой долго мучился, никак не мог прошить.Ни 5ю проводками через LPT, ни прогромматором Громова. Компьютер просто не видит контроллер и все.
В связи с нововведениями в ПДД, народ стал думать о реализации дневных ходовых огней. Один из возможных путей это включение ламп дальнего света на часть мощности, об этом и есть данная статья.
Это устройство позволит ближнему свету автоматически включиться при начале движения и регулирует напряжение на лампах, ближнего света, в зависимости от скорости с которой вы едите. Так же, это послужит более безопасному движению и продлит срок службы ламп.
Представляю вторую версию двухканального циклического таймера. Были добавлены новые функции и изменилась принципиальная схема. Циклический таймер позволяет включать и выключать нагрузку, а также выдерживать паузу на заданные интервалы времени в циклическом режиме. Каждый из выходов таймера имеет 2 режима работы – “Логический” и “ШИМ”. Если выбран логический режим устройство позволяет управлять с помощью контактов реле освещением, отоплением, вентиляцией и другими электроприборами. Нагрузкой могут выступать любые электрические приборы мощность нагрузки которых не превышает максимального тока реле. Тип выхода “ШИМ” позволяет например подключить через силовой транзистор двигатель постоянного тока, при этом есть возможность установить скважность ШИМ, чтобы двигатель вращался с определенной скоростью.
Часы собранные на микроконтроллере ATtiny2313 и светодиодной матрице показывают время в 6-ти различных режимах.
Светодиодная матрица 8*8 управляется методом мультиплексирования. Токоограничивающие резисторы исключены из схемы, чтобы не испортить дизайн, и, поскольку отдельные светодиоды управляются не постоянно, они не будут повреждены.
Для управления используется только одна кнопка, длительное нажатие кнопки(нажатие и удержание) для поворота меню и обычное нажатие кнопки для выбора меню.
Это хобби-проект, потому точность хода часов зависит лишь от калибровки внутреннего генератора контроллера. Я не использовал кварц в этом проекте, так как он занимал бы два нужных мне вывода ATtiny2313. Кварц может быть использован для повышения точности в альтернативном проекте (печатной плате).
На этот раз я представлю простой малогабаритный частотомер с диапазоном измерения от 1 до 500 МГц и разрешением 100 Гц.
В настоящее время, независимо от производителя, почти все микроконтроллеры имеют так называемые счетные входы, которые специально предназначены для подсчета внешних импульсов. Используя этот вход, относительно легко спроектировать частотомер.
Однако этот счетчый вход также имеет два свойства, которые не позволяют напрямую использовать частотомер для удовлетворения более серьезных потребностей. Одна из них заключается в том, что на практике в большинстве случаев мы измеряем сигнал с амплитудой в несколько сотен мВ, который не может перемещать счетчик микроконтроллера. В зависимости от типа, для правильной работы входа требуется сигнал не менее 1-2 В. Другое заключается в том, что максимальная измеримая частота на входе микроконтроллера составляет всего несколько МГц, это зависит от архитектуры счетчика, а также от тактовой частоты процессора.
Это устройство позволяет контролировать температуру воды в чайнике, имеет функцию поддержания температуры воды на определенном уровне, а также включение принудительного кипячения воды.
В основе прибора микроконтроллер ATmega8, который тактируется от кварцевого резонатора частотой 8МГц. Датчик температуры – аналоговый LM35. Семисегментный индикатор с общим анодом.
Эта декоративная звезда состоит из 50 специальных светодиодов RGB, которые контролируются ATtiny44A . Все светодиоды непрерывно изменяют цвет и яркость в случайном порядке. Также есть несколько разновидностей эффектов, которые также активируются случайно. Три потенциометра могут изменять интенсивность основных цветов. Положение потенциометра индицируется светодиодами при нажатии кнопки, а изменение цвета и скорость эффекта можно переключать в три этапа. Этот проект был полностью построен на компонентах SMD из-за специальной формы печатной платы. Несмотря на простую схему, структура платы довольно сложная и вряд ли подойдет для новичков.
В этой статье описывается универсальный трехфазный преобразователь частоты на микроконтроллере(МК) ATmega 88/168/328P . ATmega берет на себя полный контроль над элементами управления, ЖК-дисплеем и генерацией трех фаз. Предполагалось, что проект будет работать на готовых платах, таких как Arduino 2009 или Uno, но это не было реализовано. В отличие от других решений, синусоида не вычисляется здесь, а выводится из таблицы. Это экономит ресурсы, объем памяти и позволяет МК обрабатывать и отслеживать все элементы управления. Расчеты с плавающей точкой в программе не производятся.
Частота и амплитуда выходных сигналов настраиваются с помощью 3 кнопок и могут быть сохранены в EEPROM памяти МК. Аналогичным образом обеспечивается внешнее управление через 2 аналоговых входа. Направление вращения двигателя определяется перемычкой или переключателем.
Регулируемая характеристика V/f позволяет адаптироваться ко многим моторам и другим потребителям. Также был задействован интегрированный ПИД-регулятор для аналоговых входов, параметры ПИД-регулятора могут быть сохранены в EEPROM. Время паузы между переключениями ключей (Dead-Time) можно изменить и сохранить.
Этот частотомер с AVR микроконтроллером позволяет измерять частоту от 0,45 Гц до 10 МГц и период от 0,1 до 2,2 мкс в 7-ми автоматически выбранных диапазонах. Данные отображаются на семиразрядном светодиодном дисплее. В основе проекта микроконтроллер Atmel AVR ATmega88/88A/88P/88PA, программу для загрузки вы можете найти ниже. Настройка битов конфигурации приведена на рисунке 2 .
Принцип измерения отличается от предыдущих двух частотомеров. Простой способ подсчета импульсов через 1 секунду, используемый в двух предыдущих частотомерах(частотомер I, частотомер II), не позволяет измерять доли Герц. Вот почему я выбрал другой принцип измерения для своего нового частотомера III. Этот метод намного сложнее, но позволяет измерять частоту с разрешением до 0,000 001 Гц.
Это очень простой частотомер на микроконтроллере AVR. Он позволяет измерять частоты до 10 МГц в 2-х автоматически выбранных диапазонах. Он основан на предыдущем проекте частотомера I , но имеет 6 разрядов индикатора вместо 4-х. Нижний диапазон измерения имеет разрешение 1 Гц и работает до 1 МГц. Более высокий диапазон имеет разрешение 10 Гц и работает до 10 МГц. Для отображения измеренной частоты используется 6-разрядный светодиодный дисплей. Прибор построен на основе микроконтроллера Atmel AVR ATtiny2313A или ATTiny2313 . Настройку битов конфигурации вы можете найти ниже.
Микроконтроллер тактируется от кварцевого резонатора частотой 20 МГц (максимально допустимая тактовая частота). Точность измерения определяется точностью этого кристалла, а также конденсаторов C1 и C2. Минимальная длина полупериода измеряемого сигнала должна быть больше периода частоты кварцевого генератора (ограничение архитектуры AVR). Таким образом, при 50% рабочем цикле можно измерять частоты до 10 МГц.
Поделки с микроконтроллерами – вопрос, как никогда актуальный и интересный. Ведь мы живем в 21 веке, эпохе новых технологий, роботов и машин. На сегодняшний день каждый второй, начиная с малого возраста, умеет пользоваться интернетом и различного рода гаджетами, без которых порою и вовсе сложно обойтись в повседневной жизни.
Поэтому в этой статье мы будем затрагивать, в частности, вопросы пользования микроконтроллерами, а также непосредственного применения их с целью облегчения миссий, каждодневно возникающих перед всеми нами. Давайте разберемся, в чем ценность этого прибора, и как просто использовать его на практике.
Микроконтроллер − это чип, целью которого является управление электрическими приборами. Классический контроллер совмещает в одном кристалле, как работу процессора, так и удаленных приборов, и включает в себя оперативное запоминающее устройство. В целом, это монокристальный персональный компьютер, который может осуществлять сравнительно обыкновенные задания.
Разница между микропроцессором и микроконтроллером заключается в наличии встроенных в микросхему процессора приборов «пуск-завершение», таймеров и иных удаленных конструкций. Применение в нынешнем контроллере довольно сильного вычисляющего аппарата с обширными способностями, выстроенного на моносхеме, взамен единого комплекта, существенно уменьшает масштабы, потребление и цену созданных на его основе приборов.
Из этого следует, что применить такое устройство можно в технике для вычисления, такой, как калькулятор, материнка, контроллеры компакт-дисков. Используют их также в электробытовых аппаратах – это и микроволновки, и стиральные машины, и множество других. Также микроконроллеры широко применяются в индустриальной механике, начиная от микрореле и заканчивая методиками регулирования станков.
Микроконроллеры AVR
Ознакомимся с более распространенным и основательно устоявшимся в современном мире техники контроллером, таким как AVR. В его состав входят высокоскоростной RISC-микропроцессор, 2 вида затратной по энергии памяти (Flash-кэш проектов и кэш сведений EEPROM), эксплуатационная кэш по типу RAM, порты ввода/вывода и разнообразные удаленные сопряженные структуры.
- рабочая температура составляет от -55 до +125 градусов Цельсия;
- температура хранения составляет от -60 до +150 градусов;
- наибольшая напряженность на выводе RESET, в соответствии GND: максимально 13 В;
- максимальное напряжение питания: 6.0 В;
- наибольший электроток линии ввода/вывода: 40 мА;
- максимальный ток по линии питания VCC и GND: 200 мА.
Возможности микроконтроллера AVR
Абсолютно все без исключения микроконтроллеры рода Mega обладают свойством самостоятельного кодирования, способностью менять составляющие своей памяти драйвера без посторонней помощи. Данная отличительная черта дает возможность формировать с их помощью весьма пластичные концепции, и их метод деятельности меняется лично микроконтроллером в связи с той либо иной картиной, обусловленной мероприятиями извне или изнутри.
Обещанное количество оборотов переписи кэша у микроконтроллеров AVR второго поколения равен 11 тысячам оборотов, когда стандартное количество оборотов равно 100 тысячам.
Конфигурация черт строения вводных и выводных портов у AVR заключается в следующем: целью физиологического выхода имеется три бита регулирования, а никак не два, как у известных разрядных контроллеров (Intel, Microchip, Motorola и т. д.). Это свойство позволяет исключить потребность обладать дубликатом компонентов порта в памяти с целью защиты, а также ускоряет энергоэффективность микроконтроллера в комплексе с наружными приборами, а именно, при сопутствующих электрических неполадках снаружи.
Всем микроконтроллерам AVR свойственна многоярусная техника пресечения. Она как бы обрывает стандартное течение русификатора для достижения цели, находящейся в приоритете и обусловленной определенными событиями. Существует подпрограмма преобразования запрашивания на приостановление для определенного случая, и расположена она в памяти проекта.
Когда возникает проблема, запускающая остановку, микроконтроллер производит сохранение составных счетчика регулировок, останавливает осуществление генеральным процессором данной программы и приступает к совершению подпрограммы обрабатывания остановки. По окончании совершения, под шефствующей программы приостановления, происходит возобновление заранее сохраненного счетчика команд, и процессор продолжает совершать незаконченный проект.
Поделки на базе микроконтроллера AVR
Поделки своими руками на микроконтроллерах AVR становятся популярнее за счет своей простоты и низких энергетических затрат. Что они собой представляют и как, пользуясь своими руками и умом, сделать такие, смотрим ниже.
“Направлятор”
Такое приспособление проектировалось, как небольшой ассистент в качестве помощника тем, кто предпочитает гулять по лесу, а также натуралистам. Несмотря на то, что у большинства телефонных аппаратов есть навигатор, для их работы необходимо интернет-подключение, а в местах, оторванных от города, это проблема, и проблема с подзарядкой в лесу также не решена. В таком случае иметь при себе такое устройство будет вполне целесообразно. Сущность аппарата состоит в том, что он определяет, в какую сторону следует идти, и дистанцию до нужного местоположения.
Построение схемы осуществляется на основе микроконтроллера AVR с тактированием от наружного кварцевого резонатора на 11,0598 МГц. За работу с GPS отвечает NEO-6M от U-blox. Это, хоть и устаревший, но широко известный и бюджетный модуль с довольно четкой способностью к установлению местонахождения. Сведения фокусируются на экране от Nokia 5670. Также в модели присутствуют измеритель магнитных волн HMC5883L и акселерометр ADXL335.
Беспроводная система оповещения с датчиком движения
Полезное устройство, включающее в себя прибор перемещения и способность отдавать, согласно радиоканалу, знак о его срабатывании. Конструкция является подвижной и заряжается с помощью аккумулятора или батареек. Для его изготовления необходимо иметь несколько радиомодулей HC-12, а также датчик движения hc-SR501.
Прибор перемещения HC-SR501 функционирует при напряжении питания от 4,5 до 20 вольт. И для оптимальной работы от LI-Ion аккумулятора следует обогнуть предохранительный светодиод на входе питания и сомкнуть доступ и вывод линейного стабилизатора 7133 (2-я и 3-я ножки). По окончанию проведения этих процедур прибор приступает к постоянной работе при напряжении от 3 до 6 вольт.
Внимание: при работе в комплексе с радиомодулем HC-12 датчик временами ложно срабатывал. Во избежание этого необходимо снизить мощность передатчика в 2 раза (команда AT+P4). Датчик работает на масле, и одного заряженного аккумулятора, емкостью 700мА/ч, хватит свыше, чем на год.
Минитерминал
Приспособление проявило себя замечательным ассистентом. Плата с микроконтроллером AVR нужна, как фундамент для изготовления аппарата. Из-за того, что экран объединён с контроллером непосредственно, то питание должно быть не более 3,3 вольт, так как при более высоких числах могут возникнуть неполадки в устройстве.
Вам следует взять модуль преобразователя на LM2577, а основой может стать Li-Ion батарея емкостью 2500мА/ч. Выйдет дельная комплектация, отдающая постоянно 3,3 вольта во всём трудовом интервале напряжений. С целью зарядки применяйте модуль на микросхеме TP4056, который считается бюджетным и достаточно качественным. Для того чтобы иметь возможность подсоединить минитерминал к 5-ти вольтовым механизмам без опаски сжечь экран, необходимо использовать порты UART.
Основные аспекты программирования микроконтроллера AVR
Кодирование микроконтоллеров зачастую производят в стиле ассемблера или СИ, однако, можно пользоваться и другими языками Форта или Бейсика. Таким образом, чтобы по факту начать исследование по программированию контроллера, следует быть оснащенным следующим материальным набором, включающим в себя: микроконтроллер, в количестве три штуки – к высоковостребованным и эффективным относят – ATmega8A-PU, ATtiny2313A-PU и ATtiny13A- PU.
Чтобы провести программу в микроконтроллер, нужен программатор: лучшим считают программатор USBASP, который дает напряжение в 5 Вольт, используемое в будущем. С целью зрительной оценки и заключений итогов деятельности проекта нужны ресурсы отражения данных − это светодиоды, светодиодный индуктор и экран.
Чтобы исследовать процедуры коммуникации микроконтроллера с иными приборами, нужно числовое приспособление температуры DS18B20 и, показывающие правильное время, часы DS1307. Также важно иметь транзисторы, резисторы, кварцевые резонаторы, конденсаторы, кнопки.
С целью установки систем потребуется образцовая плата для монтажа. Чтобы соорудить конструкцию на микроконтроллере, следует воспользоваться макетной платой для сборки без пайки и комплектом перемычек к ней: образцовая плата МВ102 и соединительные перемычки к макетной плате нескольких видов – эластичные и жесткие, а также П-образной формы. Кодируют микроконтроллеры, применяя программатор USBASP.
Простейшее устройство на базе микроконтроллера AVR. Пример
Итак, ознакомившись с тем, что собой представляют микроконтроллеры AVR, и с системой их программирования, рассмотрим простейшее устройство, базисом для которого служит данный контроллер. Приведем такой пример, как драйвер низковольтных электродвигателей. Это приспособление дает возможность в одно и то же время распоряжаться двумя слабыми электрическими двигателями непрерывного тока.
Предельно возможный электроток, коим возможно загрузить программу, равен 2 А на канал, а наибольшая мощность моторов составляет 20 Вт. На плате заметна пара двухклеммных колодок с целью подсоединения электромоторов и трехклеммная колодка для подачи усиленного напряжения.
Устройство выглядит, как печатная плата размером 43 х 43 мм, а на ней сооружена минисхемка радиатора, высота которого 24 миллиметра, а масса – 25 грамм. С целью манипулирования нагрузкой, плата драйвера содержит около шести входов.
Заключение
В заключение можно сказать, что микроконтроллер AVR является полезным и ценным средством, особенно, если дело касается любителей мастерить. И, правильно использовав их, придерживаясь правил и рекомендаций по программированию, можно с легкостью обзавестись полезной вещью не только в быту, но и в профессиональной деятельности и просто в повседневной жизни.
На микроконтроллере » Автосхемы, схемы для авто, своими руками
Бывает идешь мимо припаркованных машин, и замечаешь краем глаза, что кто то уже давно, судя по тусклому свечению ламп, забыл свет выключить. Кто то и сам так попадал. Хорошо когда есть штатный сигнализатор не выключенного света, а когда нету поможет вот такая поделка: Незабывайка умеет пищать, когда не выключен свет и умеет пропикивать втыкание задней передачи.
Схема цифрового индикатора уровня топлива обладает высокой степенью повторяемости, даже если опыт работы с микроконтроллерами незначителен, поэтому разобраться в тонкостях процесса сборки и настройки не вызывает проблем. Программатор Громова – это простейший программатор, который необходим для программирования avr микроконтроллера. Программатор Горомова хорошо подходит как для внутрисхемного, так и для стандартного схемного программирования. Ниже приведена схема контроля индикатора топлива.
Плавное включение и выключение светодиодов в любом режиме (дверь открыта, и плафон включен). Так же авто выключение через пять минут. И минимальное потребление тока в режиме ожидания.
Вариант 1 — Коммутация по минусу. (с применением N-канальных транзисторов) 1) “коммутация по минусу”, т.е такой вариант при котором один питающий провод лампы соединен с +12В аккумулятора (источника питания), а второй провод коммутирует ток через лампу тем самым включает ее. В данном варианте будет подаваться минус. Для таких схем нужно применять N-канальные полевые транзисторы в качестве выходных ключей.
Сам модем небольшого размера, недорог, работает без проблем, четко и быстро и вообще нареканий нет к нему. Единственный минус для меня был, это необходимость его включать и выключать кнопкой. Если его не выключать, то модем работал от встроенного аккумулятора, который в итоге садился и модем снова было нужно включать.
Принцип работы прост: привращении крутилки регулируется громкость, при нажатии — выключение-включение звука. Нужно для кар писи на винде или андройде
Изначально в Lifan Smily (да и не только) режим работы заднего дворника — единственный, и называется он «всегда махать». Особенно негативно воспринимается такой режим в наступивший сезон дождей, когда на заднем стекле собираются капли, но в недостаточном для одного прохода дворника количестве. Так, приходится либо слушать скрип резины по стеклу, либо изображать робота и периодически включать-выключать дворник.
Немного доработал схему реле времени задержки включения освещения салона для автомобиля Форд (схема разрабатывалась для вполне конкретного автомобиля, как замена штатного реле Ford 85GG-13C718-AA, но была успешно установлена в отечественную “классику”).
Уже не первый раз проскакивают такие поделки. Но почему-то люди жмуться на прошивки. Хотя в большинстве своём они основаны на проекте elmchan “Simple SD Audio Player with an 8-pin IC”. Исходниник не открывают аргументируя, что пришлось исправлять проект, что в у меня качество лучше… и т.д. Короче взяли open source проект, собрали, и выдаёте за своё.
Итак. Микроконтроллер Attiny 13- так сказать сердце данного устройства. С его прошивкой долго мучился, никак не мог прошить.Ни 5ю проводками через LPT, ни прогромматором Громова. Компьютер просто не видит контроллер и все.
В связи с нововведениями в ПДД, народ стал думать о реализации дневных ходовых огней. Один из возможных путей это включение ламп дальнего света на часть мощности, об этом и есть данная статья.
Это устройство позволит ближнему свету автоматически включиться при начале движения и регулирует напряжение на лампах, ближнего света, в зависимости от скорости с которой вы едите. Так же, это послужит более безопасному движению и продлит срок службы ламп.
Собрал реле таймера для выключения муфты кондиционера при открытии заслонки. Таймер срабатывает, если заслонка слишком сильно открылась, при возврате таймер делает задержку и выключается.
Моргающий центральный стоп-сигнал с настройкой микроконтроллера. Возможно регулировать частоту моргания, длительность до перехода в постоянное свечение и скважность вспышек моргания, вплоть до стробоскопа. Сделал замер выходной мощности. Держит ток нагрузки в 3.5 ампера, это примерно до 50-ти ватт подключаемой нагрузки.
Всем привет вот решил сделать еще один стробоскопчик. Cтробоскоп имеет 6 эффектов, в режиме габаритов можно поморгать стробами. Переключение эффектов стробоскопов осуществляется кнопкой SB1. При переключении воспроизводится звуковой сигнал, номер эффекта- количество звуковых сигналов.
Новостная лента
На сайте представлены примеры программирования, которые будут полезны как для опытного разработчика схем на микроконтроллерах, так и для новичка. Особо рассматривается программирование микроконтроллеров для начинающих пользователей. Программные примеры программирования разбиты на различные разделы. Основную массу составляют примеры программирования микроконтроллеров avr и микроконтроллеров microchip. Пользователю предлагается познакомиться с различными примерами программирования и различными средами программирования: MicroLab, AVRStudio, MikroC, FloweCode. Представлены схемы на микроконтроллерах ведущих производителей: PIC и AVR. Рассматривается огромное количество схем для начинающих разработчиков. Если Вы начинающий радиолюбитель, то для Вас мы приготовили раздел микроконтроллеры для начинающих. Современные микроконтроллеры относятся к классу микропроцессорных устройств. В основе принципа действия таких элементов лежит исполнение последовательного потока команд, называемого программой. Микроконтроллер получает программные команды в виде отдельных машинных кодов. Известно, что для создания и отладки программ, машинные коды подходят плохо, так как трудно воспринимаются человеком. Этот факт привел к появлению различных языков программирования и огромного количества различных компиляторов. В основе языков программирования микроконтроллеров лежат классические языки для компьютеров. Единственным отличием становится ориентированность на работу со встроенными периферийными устройствами. Архитектура микроконтроллеров требует, например, наличия битово-ориентированных команд. Последние выполняют работу с отдельными линиями портов ввода/вывода или флагами регистров. Подобные команды отсутствуют в большинстве крупных архитектур. Например, ядро ARM, активно применяемое в микроконтроллерах, не содержит битовых команд, вследствие чего разработчикам пришлось создавать специальные методы битового доступа.
Примеры программирования микроконтроллеров будут представлены на хорошо всем известном языке Си. А перед тем как постигать азы программирования микроконтроллеров и схемотехнику устройств на микроконтроллерах, авторам предлагается ещё раз вспомнить основы микропроцессорной техники, основы электроники, полупроводниковую электронику, аналоговую и цифровую схемотехнику, а так же азы аналогового и цифрового представления сигнала. Для тех, кому хочется получить новые знания в области современного программирования, можно будет познакомиться с графическим языком программирования LabView. Выбор языка программирования зависит от множества факторов. В первую очередь, типо решаемых задач и необходимым качеством кода. Если Вы ведёте разработку малых по объёму и несложных программ, то можно использовать практически любой язык. Для компактного кода подойдет Ассемблер, а если ставятся серьезные задачи, то альтернативы С/С++ практически нет. Также необходимо учитывать доступность компилятора. В итоге самым универсальным решением можно назвать связку Ассемблера и C/C++. Для простого освоения языков, можно воспользоваться примерами программ для микроконтроллера. Использование примеров программирования упростит и ускорит процесс освоения программирования микроконтроллеров. Схемы на микроконтроллерах позволят начинающим разработчикам освоить тонкости проектирования, моделирования и программирования микроконтроллеров. |
Микроконтроллеры AVR для начинающих – 1 « схемопедия
Микроконтроллеры (далее МК) прочно вошли в нашу жизнь, на просторах интернета можно встретить очень много интересных схем, которые исполнены на МК. Чего только нельзя собрать на МК: различные индикаторы, вольтметры, приборы для дома (устройства защиты, коммутации, термометры…), металлоискатели, разные игрушки, роботы и т.д. перечислять можно очень долго. Первую схему на микроконтроллере я увидел лет 5-6 назад в журнале радио, и практически сразу же перелистнул страницу, подумав про себя “все равно не смогу собрать”. Действительно, в то время МК для меня были чем то очень сложным и непонятым устройством, я не представлял как они работают, как их прошивать, и что делать с ними в случае неправильной прошивки. Но около года назад, я впервые собрал свою первую схему на МК, это была схема цифрового вольтметра на 7 сегментных индикаторах, и микроконтроллере ATmega8. Так получилось, что микроконтроллер я купил случайно, когда стоял в отделе радиодеталей, парень передо мной покупал МК, и я тоже решил купить, и попробовать собрать что-нибудь. В своих статьях я расскажу вам про микроконтроллеры AVR фирмы ATMEL, научу вас работать с ними, рассмотрим программы для прошивки, изготовим простой и надежный программатор, рассмотрим процесс прошивки и самое главное проблемы, которые могут возникнуть и не только у новичков.
Основные параметры некоторых микроконтроллеров семейства AVR:
Микроконтроллер | Память FLASH | Память ОЗУ | Память EEPROM | Порты ввода/вывода | U питания | Частота |
ATmega48 | 4 | 512 | 256 | 23 | 2,7-5,5 | 0-10-20 |
ATmega48V | 4 | 512 | 256 | 23 | 1,8-4,8-5,5 | 0-4-10 |
ATmega8515 | 8 | 512 | 512 | 35 | 4,5-5,5 | 0-16 |
ATmega8515L | 8 | 512 | 512 | 35 | 2,7-5,5 | 0-8 |
ATmega8535 | 8 | 512 | 512 | 32 | 4,5-5,5 | 0-16 |
ATmega8535L | 8 | 512 | 512 | 32 | 2,7-5,5 | 0-8 |
ATmega8 | 8 | 1K | 512 | 23 | 4,5-5,5 | 0-16 |
ATmega8L | 8 | 1K | 512 | 23 | 2,7-5,5 | 0-8 |
ATmega88 | 8 | 1K | 512 | 23 | 2,7-5,5 | 0-10-20 |
ATmega88V | 8 | 1K | 512 | 23 | 4,5-5,5 | 0-4-10 |
ATmega16 | 16 | 1K | 512 | 32 | 4,5-5,5 | 0-16 |
ATmega16L | 16 | 1K | 512 | 32 | 2,7-5,5 | 0-8 |
ATmega32 | 32 | 2K | 1K | 32 | 4,0-5,5 | 0-16 |
ATmega32L | 32 | 2K | 1K | 32 | 2,7-5,5 | 0-8 |
Дополнительные параметры МК AVR mega:
Рабочая температура: -55…+125*С
Температура хранения: -65…+150*С
Напряжение на выводе RESET относительно GND: max 13В
Максимальное напряжение питания: 6.0В
Максимальный ток линии ввода/вывода: 40мА
Максимальный ток по линии питания VCC и GND: 200мА
Расположение выводов моделей ATmega 8X
Расположение выводов моделей ATmega48x, 88x, 168x
Расположение выводов у моделей ATmega8515x
Расположение выводов у моделей ATmega8535x
Расположение выводов у моделей ATmega16, 32x
Расположение выводов у моделей ATtiny2313
В конце статьи прикреплён архив с даташитами на некоторые микроконтроллеры
Установочные FUSE биты MK AVR
BODEN | BODLEVEL | BOOTRST | BOOTSZ0 | BOOTSZ1 | CKSEL0 | CKSEL1 | SPIEN |
CKSEL2 | CKSEL3 | EESAVE | FSTRT | INCAP | RCEN | RSTDISBL | SUT0 |
SUT1 |
Запомните, запрограммированный фьюз – это 0, не запрограммированный – 1. Осторожно стоит относиться к выставлению фьюзов, ошибочно запрограммированный фьюз может заблокировать микроконтроллер. Если вы не уверены какой именно фьюз нужно запрограммировать, лучше на первый раз прошейте МК без фьюзов.
Самыми популярными микроконтроллерами у радиолюбителей являются ATmega8, затем идут ATmega48, 16, 32, ATtiny2313 и другие. Микроконтроллеры продаются в TQFP корпусах и DIP, новичкам рекомендую покупать в DIP. Если купите TQFP, будет проблематичнее их прошить, придется купить или изготовить переходник и паять плату т.к. у них ножки располагаются очень близко друг от друга. Советую микроконтроллеры в DIP корпусах, ставить на специальные панельки, это удобно и практично, не придется выпаивать МК если приспичит перепрошить, или использовать его для другой конструкции.
Почти все современные МК имеют возможность внутрисхемного программирования ISP, т.е. если ваш микроконтроллер запаян на плату, то для того чтобы сменить прошивку нам не придется выпаивать его с платы.
Для программирования используется 6 выводов:
RESET – Вход МК
VCC – Плюс питания, 3-5В, зависит от МК
GND – Общий провод, минус питания.
MOSI – Вход МК (информационный сигнал в МК)
MISO – Выход МК (информационный сигнал из МК)
SCK – Вход МК (тактовый сигнал в МК)
Иногда еще используют вывода XTAL 1 и XTAL2, на эти вывода цепляется кварц, если МК будет работать от внешнего генератора, в ATmega 64 и 128 вывода MOSI и MISO не применяются для ISP программирования, вместо них вывода MOSI подключают к ножке PE0, a MISO к PE1. При соединении микроконтроллера с программатором, соединяющие провода должны быть как можно короче, а кабель идущий от программатора на порт LPT так-же не должен быть слишком длинным.
В маркировке микроконтроллера могут присутствовать непонятные буквы с цифрами, например Atmega 8L 16PU, 8 16AU, 8A PU и пр. Буква L означает, что МК работает от более низкого напряжения, чем МК без буквы L, обычно это 2.7В. Цифры после дефиса или пробела 16PU или 8AU говорят о внутренней частоте генератора, который есть в МК. Если фьюзы выставлены на работу от внешнего кварца, кварц должен быть установлен на частоту, не превышающей максимальную по даташиту, это 20МГц для ATmega48/88/168, и 16МГц для остальных атмег.
Первые цифры в названии микроконтроллера обозначают объем FLASH ПЗУ в килобайтах, например ATtiny15 – 1 Кб, ATtiny26 – 2 Кб, AT90S4414 – 4 Кб, Atmega8535 – 8 Кб, ATmega162 – 16Кб, ATmega32 – 32 Кб, ATmega6450 – 64Кб, Atmega128 – 128Кб.
Иногда встречаются схемы, где применены микроконтроллеры с названиями типа AT90S… это старые модели микроконтроллеров, некоторые из них можно заменить на современные, например:
AT90S4433 – ATmega8
AT90S8515 – ATmega8515
AT90S8535 – ATmega8535
AT90S2313 – ATtiny2313
ATmega163 – ATmega16
ATmega161 – ATmega162
ATmega323 – ATmega32
ATmega103 – ATmega64/128
ATmega 8 имеет несколько выводов питания, цифровое – VCC, GND и аналоговое – AVCC, GND. В стандартном включении обе пары выводов соединяют параллельно, т.е. вместе. Микроконтроллеры AVR не любят повышенного напряжения, если питание выше 6 вольт, то они могут выйти из строя. Я обычно применяю маломощный стабилизатор напряжения на 5 вольт, КР142ЕН5 или 78L05. Если напряжение питания слишком низкое, то МК не прошьется, программа будет ругаться и выдавать ошибки (к примеру -24 в PonyProg).
На этом закончим, пока можете выбрать в интернете понравившуюся схему и изучить ее, можете заодно сходить и купить нужный микроконтроллер. В следующих частях статьи мы будем собирать простой и надежный программатор, познакомимся с программами для прошивания и попробуем прошить МК.
Даташит ATmega8
Даташит ATmega16
Даташит ATmega32
Даташит ATmega48/88/168
Даташит ATmega128
Даташит ATmega8515
Даташит ATmega8535
Даташит ATtiny2313
Автор: Романов А.С (г. Чебоксары)
Курс «Современная схемотехника: микроконтроллеры»
Актуальность | Идёт набор |
---|---|
Стоимость | 19 000 руб |
Продолжительность | 36 часов |
Группа | от 8 до 10 человек |
Начало занятий | По мере формирования группы |
Основной задачей курса является изучение основных принципов программирования для построения современных технических систем с использованием микроконтроллеров.
Обращаем внимание, что ввиду специфики обучения по данному курсу сборные группы не обучаются. Слушатели курса должны быть работниками одной организации или одной отрасли.
В процессе изучения дисциплины слушатели получают обширные сведения об устройстве микроконтроллеров, изучаются принципы построения схем, работа с различными периферийными устройствами, такими как устройства ввода/вывода информации (различные светодиодные индикаторы, жидкокристаллический дисплей, динамик, матричная клавиатура, ползунковый потенциометр, механический инкрементный энкодер), различные датчики подключаемые по последовательным протоколам (таким как I2C и SPI), работа с приводами (двигатель постоянного тока, униполярный шаговый двигатель и сервомашинки). Заканчивается курс созданием системы управления с пропорционально дифференциальным регулятором для не устойчивого объекта, роль которого играет магнитный подвес. Особое внимание уделяется продуктам фирмы Atmel, а именно микроконтроллерам семейства AVR. Рассматриваются типовые схемы включения и управления.
Основное содержание дисциплины базируется на изучении средств разработки CodeVisionAVR. Алгоритмы реализуются с помощью языка Си и отрабатываются на лабораторном стенде, основанном на микроконтроллере Atmel ATmega128A.
Лекционный курс насыщен иллюстративным материалом, каждое занятие сопровождается показом презентации, которая позволяет слушателю легче воспринимать сложный материал.
Категория слушателей – студенты, профильные специалисты, ИТР
Форма обучения – с отрывом от работы
Учебный план
№ п/п | Наименование разделов | Всего часов | В том числе | |||
---|---|---|---|---|---|---|
Лекции | Практические и лабораторные занятия | Самостоятельное изучение | Проверка знаний | |||
1 |
Архитектура однокристальных микроконтроллеров. |
4 |
4 |
|
|
|
2 |
Знакомство со средой разработки. |
4 |
|
4 |
|
|
3 |
Разработка схемы подключения и программного обеспечения для микроконтроллера для работы с устройствами вывода. |
4 |
|
4 |
|
|
4 |
Изучение таймеров/счётчиков и системы прерываний. |
2 |
1 |
|
|
1 |
5 |
Разработка схемы подключения и программного обеспечения для микроконтроллера для работы с устройствами ввода. |
4 |
|
4 |
|
|
6 |
Изучение принципов работы последовательных интерфейсов. |
2 |
1 |
|
|
1 |
7 |
Разработка схемы подключения и программного обеспечения для микроконтроллера для работы с датчиками. |
6 |
|
6 |
|
|
8 |
Разработка схемы подключения и программного обеспечения для микроконтроллера для управления двигателями. |
6 |
|
6 |
|
|
9 |
Разработка схемы подключения и программного обеспечения для микроконтроллера для управления неустойчивыми объектами. |
4 |
|
3 |
|
1 |
|
Итого: |
36 |
6 |
27 |
|
3 |
|
Итоговая аттестация |
зачёт |
Контактная информация
Запись на курс
Рабочий лист принципов микроконтроллера
– цифровые схемы
Учащийся создает схему микроконтроллера, которая включает светодиод один раз на каждые пять срабатываний входного переключателя. Схема проста: микроконтроллер использует условный цикл для увеличения переменной при каждом нажатии переключателя:
Листинг псевдокода Объявить Pin0 как выход
Объявить Pin1 как вход
Объявить X как целочисленную переменную
ПЕТЛЯ
, ПОКА Pin1 ВЫСОКИЙ
Добавить 1 к X (X = X 1)
КОНЕЦ
Если X равно 5, установите Pin0 HIGH и установите X на 0
ELSE набор Pin0 LOW
ENDIF
КОНЕЦ
К сожалению, программа не выполняется так, как планировалось.Вместо того, чтобы загораться один раз каждые пять срабатываний переключателя, он, кажется, загорается случайным образом при отпускании переключателя. Иногда светодиод включается после первого нажатия переключателя, а в других случаях требуется более пяти нажатий переключателя, чтобы он включился.
После тщательного анализа ученику приходит в голову, что проблема заключается в цикле WHILE. Поскольку микроконтроллер намного быстрее, чем человеческая рука, этот цикл выполняется много раз при нажатии переключателя, а не только один раз, что означает, что переменная X считает от 0 до 5 много раз для каждого срабатывания переключателя.Таким образом, только случайно после выхода из цикла WHILE X будет равно пяти.
Студенту нужно, чтобы значение переключателя увеличивалось на 1 только при переключении из выключенного состояния во включенное состояние: на положительном фронте входного импульса. Проблема в том, как это сделать с помощью программирования.
Другой ученик, столкнувшись с той же проблемой, решил решить ее таким образом, и это сработало отлично:
Листинг псевдокода Объявить Pin0 как выход
Объявить Pin1 как вход
Объявить Switch как логическую (0 или 1) переменную
Объявить Last_Switch как логическую (0 или 1) переменную
Объявить X как целочисленную переменную
ПЕТЛЯ
Установить Last_Switch равным Switch
Установите переключатель равным контакту 1
IF Switch = 1 и Last_Switch = 0 ТО добавьте 1 к X (X = X 1)
ELSE ничего не делать с X
ENDIF
Если X равно 5, установите Pin0 HIGH и установите X на 0
ELSE набор Pin0 LOW
ENDIF
КОНЕЦ
Объясните, как эта программа успешно увеличивает X только при каждом переходе кнопочного переключателя из положения во включенное состояние, в то время как другая программа быстро увеличивает X в течение всего времени нажатия кнопочного переключателя.
Микроконтроллеры– это здорово, но не отказывайтесь от традиционной электроники
Микроконтроллеры
великолепны, особенно те, что представлены сегодня на рынке. Они позволяют легко управлять устройствами и собирать информацию от других с помощью простых программ и схем. Однако не каждому приложению он нужен, но часто они используются в проекте без надобности. Например, микросхемы часто используются для выполнения таких простых задач, как мигание светодиода. Хотя это может быть хорошо для микроконтроллера, но это излишне.Это синоним использования настольной пилы, чтобы отрезать кусок бумаги, когда стандартные ножницы отлично справятся с этой задачей.
Многие новички в изучении микроконтроллеров упускают из виду основы электроники и не понимают, что могут достичь той же цели, используя обычные методы. Используя обычную электронику, а не микро, вы можете использовать еще несколько резисторов и конденсаторов, но ваш проект, вероятно, в конечном итоге обойдется вам дешевле. Кроме того, вам не нужно будет писать программу, и вы узнаете немного больше об основах электроники.
Я покажу вам два примера схем, которые не используют микроконтроллер, но часто построены с ним. Я также кратко объясню некоторую логику и теорию этих схем. Надеюсь, вы сможете использовать их в том виде, в каком они есть, или, по крайней мере, они дадут вам идеи для развития. Эти примеры могут заменить микроконтроллер в простом проекте, но также могут быть полезны для снятия нагрузки с вашего микроконтроллера в большом проекте.
Много маленьких огней
В каждом проекте должно быть несколько – если не много – мигающих светодиодов.Мигание светодиода – это, вероятно, первое, что вы сделали, когда научились пользоваться микроконтроллером. К счастью, без него тоже легко обойтись. Давайте посмотрим, как поочередно мигать двумя светодиодами, используя всего несколько компонентов.
Вьетнамки и RC-схемы
Есть много разных способов сделать это, но один из самых простых – использовать так называемый триггер. Триггеры регулярно используются почти во всех цифровых интегральных схемах, включая микроконтроллеры.Триггер принимает состояние выхода из одной логической схемы и подает его на вход другой. Затем этот выход подается на вход первой схемы. Таким образом, выход каждой логической схемы зависит от предыдущего состояния другой. Есть много разных типов шлепанцев. Поиск в Интернете легко найдет много информации о различных типах и о том, как они используются.
Помимо триггера, вам нужен способ его запуска, например, с помощью RC-цепи. Сами по себе конденсаторы имеют ограниченное применение и хороши для таких вещей, как фильтрация напряжения переменного тока (и шокирование ваших друзей), но – при использовании в сочетании с резистором – они становятся очень полезными.Соедините эти два устройства вместе, и вы сможете создать RC-цепь.
RC-цепи бывают двух типов: интеграторы и дифференциаторы. Когда напряжение подается на RC-цепь, конденсатор «наполняется» энергией. Затем, когда напряжение снимается, резистор «разряжает» конденсатор. Время, необходимое для «заполнения» и «слива» конденсатора, может быть измерено в секундах и называется постоянной времени RC. Изменение номиналов конденсатора или резистора позволяет регулировать постоянную времени RC.Настоящая разница между интегратором и дифференциатором заключается в том, как ведет себя выходной сигнал. Эти различия показаны на рис. 1 .
РИСУНОК 1. Различия между интегратором и дифференциатором.
Используя триггер и RC-схему, вы можете создать базовую схему, которая будет попеременно мигать двумя светодиодами. Я использовал тип RS (RESET – SET), потому что это самый простой триггер и он идеально подходит для моих нужд. Я использовал RC-схему дифференциатора, потому что она имеет лучший выход для запуска цифровых логических схем.Если вы добавите несколько светодиодов и больше резисторов, у вас будет схема, которая будет попеременно мигать двумя светодиодами. Эта схема показана на рис. 2 .
РИСУНОК 2. Триггер, попеременно мигающий двумя светодиодами.
NAND ворота
Логические схемы, которые я использовал для создания триггера RS, являются вентилями NAND. Вы можете узнать больше о вентилях NAND, а также о многих других основах цифровой электроники здесь . На данный момент, однако, достаточно понять, что выход логического элемента И-НЕ становится высоким только тогда, когда его два входа имеют низкий уровень.Итак, когда вы впервые подаете питание на схему (, рис. 2, ), один из двух вентилей NAND (в зависимости от того, какой из них быстрее) установит высокий уровень на выходе.
Это подает питание на дифференциатор, подключенный к выходу первого логического элемента И-НЕ. Это отправит цифровую «1» на оба входа другого логического элемента И-НЕ, тем самым сделав его выход низким (выключив второй светодиод). Первый светодиод будет гореть до тех пор, пока выходное напряжение дифференциатора не упадет почти до нуля. В это время на выходе второго логического элемента И-НЕ будет высокий уровень (включение второго светодиода), тем самым отправив выходы первого элемента И-НЕ на низкий уровень (выключение первого светодиода).Этот процесс будет продолжаться до тех пор, пока подается питание и ничего в цепи не разрывается.
Использование схемы
Чтобы настроить время мигания светодиодов, вы можете поэкспериментировать с разными значениями для двух конденсаторов. Более высокие значения увеличивают задержку, а более низкие значения уменьшают задержку. Если вы хотите, чтобы оба светодиода горели равное время, используйте одинаковые значения для обоих конденсаторов. Попробуйте разные значения и посмотрите, какие результаты они дают. Вы также можете попробовать использовать разные значения для своих резисторов, чтобы увидеть, какие эффекты они могут иметь.
Создание такой схемы с микроконтроллером вряд ли потребует каких-либо внешних компонентов, но вам придется отказаться от двух выходных контактов микроконтроллера. В большом проекте два контакта могут быть довольно дорогостоящими, и, даже если вам может понадобиться несколько дополнительных деталей, эта схема сэкономит эти два контакта. Если все, что вам нужно, это попеременно мигать светодиодами (например, на знаке железнодорожного переезда для вашей модели железнодорожного пути), то эта схема идеально подходит для вас и, вероятно, будет стоить вам всего пару долларов.Кроме того, вы не будете переводить микроконтроллер в спящий режим.
Реле температуры
Получение показаний температуры – обычное дело для любого любителя электроники. Допустим, у вас есть проект, в котором вы хотите, чтобы звуковой сигнал срабатывал, если температура в морозильной камере превысила определенную температуру, или вы можете узнать, станет ли что-то слишком горячим (например, внутри ящика). Это легко сделать с помощью микроконтроллера, но вы также можете сделать то же самое с некоторыми обычными электронными деталями.
Датчик температуры
Первое, что вам нужно для считывания конкретной температуры, – это датчик температуры. Температурные датчики обычно могут считывать диапазон от -50 ° F до более 300 ° F. Большинство из них дает выходное напряжение, линейно пропорциональное температуре зонда. Эти датчики уже откалиброваны и имеют гарантированную точность. Некоторые читают температуру в градусах Фаренгейта, а другие – в градусах Цельсия. Я решил поэкспериментировать с LM34DZ. Он может работать при напряжении питания от 5 до 30 вольт и измерять температуру от 32 ° F до 212 ° F.Каждая степень изменения изменяет выходную мощность на 10 мВ.
Компаратор
LM34 будет выдавать определенное напряжение для каждого градуса температуры. Для определения определенного напряжения от LM34 вам понадобится компаратор. Я использовал счетверенный компаратор LM339, потому что он очень распространен и у меня был один, но вы можете использовать любой из многих, имеющихся сегодня на рынке. На самом деле LM339 имеет четыре встроенных компаратора, так что вы можете делать с ним какие-нибудь причудливые вещи, если хотите, но я использовал только один из компараторов для своей схемы.
Компаратор имеет два входа и один выход. Один из входов задается как опорное напряжение, а другой вход – это напряжение, которое вы хотите сравнить с опорным напряжением. Если входное напряжение достигает опорного напряжения, он устанавливает высокий уровень на выходе. Например, предположим, что вы хотите знать, когда определенный вход достигает шести вольт или более.
В этом случае вы должны установить свой компаратор в неинвертирующий режим, а опорное напряжение – на шесть вольт. Затем, когда ваш вход достигнет шести вольт или более, компаратор установит на выходе высокий уровень.Теперь вы можете прочитать этот вывод и запустить другую цепь, например, сигнализацию, светодиод и т. Д.
Собираем вместе
Вы можете соединить эти два устройства, и у вас будет действительно отличный переключатель температуры. Полный коммутатор показан на рис. 3 , рис. 3 . Его очень просто построить и легко использовать.
РИСУНОК 3. Цепь реле температуры.
После подачи питания на схему вы можете узнать, какое напряжение на выходе (вывод 2) LM34.Для этого можно использовать вольтметр. Подключите положительный щуп от вольтметра к контакту 2 LM34, а отрицательный щуп заземлите. Это даст вам выходное напряжение, соответствующее комнатной температуре, и станет хорошей точкой отсчета для определения того, каким будет напряжение для данной температуры. На LM34 изменение температуры на каждый градус изменяет выходное напряжение на 10 мВ. Используйте это соотношение для определения необходимого вам эталонного напряжения на основе желаемой эталонной температуры.
Теперь вы можете отрегулировать потенциометр так, чтобы опорное напряжение на выводе 4 LM339 было равно желаемому опорному напряжению (которое соответствует определенной температуре). Если вам нужна более высокая точность регулировки напряжения, вы можете использовать потенциометр с более высоким значением. Вы можете прекратить регулировку опорного напряжения, как только прочтете желаемый уровень. Если опорное напряжение не будет изменяться, вы можете заменить потенциометр подходящими постоянными резисторами.
Пример
Вот пример того, как это сделать.Допустим, вы хотите знать, когда он достигает 100 ° снаружи. Первым делом нужно прочитать вывод LM34 при комнатной температуре. Допустим, ваш вольтметр показывает 2,34 вольт при температуре 72 °. Теперь представьте разницу между двумя температурами, которая составляет 28 °. Умножьте это число на 0,01 (изменение 10 мВ для каждой степени изменения), и вы получите 0,28. Затем добавьте это число к 2,34, и вы получите 2,62. Это то, на что должно быть установлено ваше опорное напряжение. Регулируйте потенциометр, пока на выходе не будет 2.62 вольта, а затем остановитесь. Ваш переключатель температуры готов к работе.
Пробуем
После калибровки переключателя температуры на определенную температуру вы можете проверить его, нагревая LM34 феном. Вы можете подключить светодиод к выходу (Vout). Как только температура достигнет указанного значения, ваш светодиод должен загореться и оставаться включенным до тех пор, пока температура снова не упадет.
Так же, как и мигающие светодиоды, эту схему легко построить без микроконтроллера.Вы можете использовать его как есть или изменить для любых целей. Вы также можете многое узнать о том, как работают компараторы. По крайней мере, это подстегнет другие идеи о том, как заставить компараторы работать на вас.
Просто как пирог
Эти два примера схем могут использоваться как автономные схемы или вместе с другими. Они могут полностью заменить использование микроконтроллера или, по крайней мере, значительно снизить нагрузку на ваш проект, основанный на микроконтроллере.Показанные здесь примеры – это лишь небольшой образец того, что доступно любителям электроники; это всего лишь пара идей и, конечно же, много других.
Мой совет любому, кто только начинает заниматься микроконтроллерами и электроникой, – взять макет, несколько основных электронных компонентов (возьмите одну или две сумки) и начните экспериментировать.
Для начала прочтите Nuts & Volts и возьмите пару книг по основам электроники. Некоторые из лучших, которые я нашел для начинающих, – это книги Форреста Мима.Мой старый и побитый, но когда я экспериментирую, он всегда рядом. Как я уже сказал в начале статьи – микроконтроллеры – это здорово! Постарайтесь не использовать их как костыль, а вместо этого используйте обычную электронику, которая существует уже много лет.
Удачного строительства проекта! NV
Об авторе
С тех пор, как мне было около 10 лет, я интересовался электроникой. Я пошел в школу, чтобы стать инженером-электронщиком, но вместо этого решил сохранить интерес к электронике в качестве хобби, поэтому я занялся компьютерным программированием.В настоящее время я веб-разработчик, и мне нравится то, что я делаю. Мое любимое электронное устройство – микроконтроллер, потому что он связан с двумя моими увлечениями (электроникой и программированием).
Как разработать схему микроконтроллера
Схема, необходимая для встроенного микроконтроллера, может показаться немного сложной. Только лист данных и технические ссылки могут занимать несколько сотен страниц для продвинутых микроконтроллеров.
Перед тем, как приступить к проектированию схемы, неплохо было бы нарисовать блок-схему, показывающую все основные части проекта, включая все периферийные устройства, которые будут взаимодействовать с микроконтроллером.
Микроконтроллер ARM Cortex-M
В этой статье основное внимание будет уделено рассмотрению схемотехники включения микроконтроллера ARM Cortex-M. Архитектура микроконтроллера ARM Cortex-M предлагается несколькими производителями микросхем в различных версиях.
ARM Cortex-M – это 32-битная архитектура, которая особенно подходит для ресурсоемких задач по сравнению с тем, что доступно для типичных 8-битных микроконтроллеров. 32-разрядный микроконтроллер также полезен, если у вас есть приложение, которое требует большего адресного пространства памяти или которому требуется простой путь миграции для будущих расширений.
Мы будем обсуждать линейку микроконтроллеров ARM Cortex-M от ST Microelectronics под названием STM32, или, более конкретно, мы сосредоточимся на серии STM32F4.
Однако серия STM32 огромна и также включает линейку STM32L со сверхнизким энергопотреблением, а также версии с более высокой и более низкой производительностью по сравнению с STM32F4. Версия с наивысшей производительностью – STM32F7, которая может выполнять более 1 миллиарда инструкций в секунду. На другом конце спектра производительности STM32L0 выполняет всего 26 миллионов инструкций в секунду.
См. Принципиальную схему ниже на рисунке 1, показывающую схему STM32F4, на которую мы будем ссылаться в этой статье.
Рисунок 1. Щелкните, чтобы просмотреть увеличенное изображение.Конструкция блока питания
Питание вашей схемы – один из наиболее важных аспектов проектирования оборудования, и вам не следует слишком поздно ждать в процессе проектирования, чтобы определить схему питания и заземления.
Ток, используемый микроконтроллером, определяется несколькими факторами, такими как рабочее напряжение, тактовая частота и нагрузки на выводах ввода / вывода.
Каждый вывод VDD источника питания на микроконтроллере должен иметь керамические конденсаторы емкостью 1 мкФ и 100 нФ (например, см. C7 и C8 на рисунке 1), размещенные как можно ближе, чтобы обеспечить развязку источника питания. Дополнительный керамический конденсатор емкостью 4,7 мкФ (C1 на рис. 1) следует разместить рядом с ИС на дорожке главной цепи, питающей VDD.
Микроконтроллерыс аналого-цифровым преобразователем (АЦП) также обычно имеют отдельные выводы питания (VDDA) и заземления (VSSA) только для аналоговых сигналов. Эти штифты должны быть особенно чистыми от шума.
Вывод VDDA должен иметь керамические конденсаторы емкостью 1 мкФ и 10 нФ (C10 и C11 на рис. 1), размещенные как можно ближе к выводу VDDA. В большинстве случаев я считаю хорошей идеей также включить индуктор (L1 на рисунке 1) на вывод VDDA, чтобы сформировать LC-фильтр нижних частот, обеспечивающий еще более чистое аналоговое напряжение питания.
Если напряжение питания выше максимального входного напряжения для микроконтроллера, то обычно требуется линейный стабилизатор напряжения с малым падением напряжения. Например, TPS795xx от Texas Instruments отличается особенно низким уровнем шума и может потреблять до 500 мА.
Если ваше напряжение питания значительно выше, чем требуемое напряжение микроконтроллера, то понижающий импульсный стабилизатор – лучший выбор. Линейные регуляторы тратят слишком много энергии, когда их входное напряжение значительно выше, чем их регулируемое выходное напряжение.
Тем не менее, как правило, лучше всего подрегулировать выходное напряжение импульсного стабилизатора с помощью линейного регулятора. Это связано с тем, что линейный регулятор производит гораздо более чистое напряжение питания с меньшим шумом.
Часы
STM32F4 может работать от внутренних или внешних системных часов.Системные часы при включении питания – это внутренние часы (16 МГц), и после инициализации системы можно выбрать другой внешний источник синхронизации в программном обеспечении.
Контакты синхронизации на STM32F4 могут управлять внешним кристаллом от 4 до 26 МГц (см. X1 на рисунке 1), или можно использовать независимый источник синхронизации до 50 МГц.
При установке кристалла следует строго придерживаться рекомендаций по компоновке, приведенных в техническом описании. В общем, следы должны быть короткими, а емкость нагрузки на кристалле должна быть такой же, как рекомендовано производителем кристалла.
GPIO
Контакты ввода / вывода общего назначения (GPIO) на микроконтроллерах являются программируемыми и могут быть настроены программно как вход или выход.
Например, S1 на рисунке 1 – это кнопка, подключенная к GPIO, запрограммированному как вход. В STM32 есть внутренние подтягивающие резисторы, поэтому для этой кнопки нет необходимости во внешнем подтягивающем резисторе. Показан пример выхода GPIO, управляющего светодиодом.
Большинство контактов GPIO имеют альтернативные функции, и различные периферийные устройства на кристалле получают доступ к внешнему миру через эти многофункциональные контакты.
Не все внутренние функции доступны для каждого вывода GPIO, и разрешено определенное сопоставление, поэтому при выборе конкретных выводов обращайтесь к таблице данных.
Контакты GPIO могут использоваться для управления различными нагрузками, и большинство контактов могут потреблять или отдавать до 25 мА. Тем не менее, как правило, рекомендуется предоставить какой-либо тип внешней схемы привода, чтобы снять нагрузку с привода. Например, посмотрите, как MN1 управляет светодиодом на рисунке 1.
STM32 действительно имеет максимально допустимый ток, указанный для каждого вывода отдельно, а также ограничения на общий ток для всех выводов GPIO, суммированных вместе.
Подключение периферийных устройств
STM32 обеспечивает последовательное соединение через различные интерфейсы, включая UART, I2C, SPI и USB.
В качестве примера на рисунке 1 датчик температуры (U2 – LM75BDP) подключен к микроконтроллеру через шину I2C. На шине I2C требуются два подтягивающих резистора (R2 и R3), поскольку устройства, подключающиеся к шине, имеют драйверы с открытым стоком.
Для низкоскоростных приложений, таких как большинство датчиков, я обычно предпочитаю последовательный протокол I2C, потому что он использует только две линии для связи.Кроме того, в отличие от SPI, который требует отдельной строки выбора микросхемы для каждого периферийного устройства, I2C использует уникальные адреса. Это означает, что для подключения нескольких периферийных устройств можно использовать только две линии.
Шина SPI на Рисунке 1 подключена к 9-осевому датчику движения MPU-9250 (U3) от Invensense. MPU-9250 включает в себя 3-осевой акселерометр, 3-осевой гироскоп и 3-осевой магнитометр.
Разъем для программирования
STM32F4 предлагает два интерфейса внутрисистемного программирования (ISP): Serial-Wire-Debug (SWD) и JTAG.Более дешевые версии STM32 предлагают только интерфейс SWD. SWD и JTAG – два наиболее распространенных интерфейса программирования, используемых для микроконтроллеров.
Заключение
В этой статье мы обсудили схемотехнику микроконтроллера. В частности, мы рассмотрели схему STM32F4, которая может считывать кнопки ввода, управлять светодиодом и связываться с датчиком температуры I2C, а также датчиком движения SPI. Дополнительные сведения о создании нового электронного продукта см. В моем полном руководстве по разработке нового электронного продукта.
Как создать собственную плату микроконтроллера STM32
В этом пошаговом руководстве вы узнаете, как разработать свою собственную плату микроконтроллера на основе популярного микроконтроллера STM32 от ST Microelectronics.
Опубликовано Джон Тил
Я разделю весь процесс проектирования на три основных этапа:
ШАГ 1 – Проектирование системы
ШАГ 2 – Проектирование схемотехники
ШАГ 3 – Проектирование компоновки печатной платы
Шаг 1 – Система / Эскизный проект
При разработке новой схемы первым шагом является проектирование системы высокого уровня (которое я также называю предварительным проектом).Прежде чем вдаваться в подробности проектирования полной принципиальной схемы, всегда лучше сначала сосредоточиться на общей картине всей системы.
Проектирование системы состоит в основном из двух этапов: создание блок-схемы и выбор всех критических компонентов (микрочипов, датчиков, дисплеев и т. Д.). Системный дизайн рассматривает каждую функцию как черный ящик
В технике черный ящик – это объект, который можно рассматривать с точки зрения его входов и выходов, но без каких-либо сведений о его внутренней работе.При проектировании системного уровня основное внимание уделяется взаимодействию и функциональности более высокого уровня.
Для более глубокого обучения ознакомьтесь с моим курсом проектирования печатных плат, который включает более 3 часов видео, в котором я проектирую более сложную плату STM32.
Блок-схема
Ниже приведена блок-схема, с которой мы будем работать в этой серии руководств. Как я уже упоминал, в этом первом руководстве мы сосредоточимся только на самом микроконтроллере.В будущих уроках мы расширим дизайн, чтобы включить все функции, показанные на этой блок-схеме.
Блок-схема должна включать блок для каждой основной функции, взаимосвязи между различными блоками, заданные протоколы связи и любые известные уровни напряжения (входное напряжение питания, напряжение батареи и т. Д.).
Позже, когда все компоненты были выбраны и требуемые напряжения питания известны, я хотел бы добавить напряжения питания к блок-схеме.Включая напряжение питания для каждого функционального блока, он позволяет легко определить все напряжения питания, которые вам понадобятся, а также любые переключатели уровня.
В большинстве случаев, когда два электронных компонента обмениваются данными, им необходимо использовать одно и то же напряжение питания. Если они питаются от разных напряжений, вам обычно потребуется добавить переключатель уровня.
Блок-схема системного уровня. Блоки желтого цвета включены в это начальное руководство.
Теперь, когда у нас есть блок-схема, мы можем лучше понять необходимые требования к микроконтроллеру.Пока вы не наметили все, что будет подключаться к микроконтроллеру, невозможно выбрать подходящий микроконтроллер.
Выбрать микроконтроллер
При выборе микроконтроллера (или любого другого электронного компонента) мне нравится использовать веб-сайт дистрибьютора электроники, такой как Newark.com. Это позволяет легко сравнивать различные варианты на основе различных спецификаций, цен и наличия. Это также простой способ быстро получить доступ к таблице данных компонента.
Если вы регулярно читаете этот блог, то знаете, что я большой поклонник микроконтроллеров ARM Cortex-M. Микроконтроллеры Arm Cortex-M – самая популярная линейка микроконтроллеров, используемых в коммерческих электронных продуктах. Они используются в десятках миллиардов устройств.
Микроконтроллерыот Microchip (включая Atmel) могут доминировать на рынке производителей, но Arm доминирует на рынке коммерческих продуктов.
Arm не производит чипы напрямую.Вместо этого они разрабатывают архитектуры процессоров, которые затем лицензируются и производятся другими производителями микросхем, включая ST, NXP, Microchip, Texas Instruments, Silicon Labs, Cypress и Nordic.
ARM Cortex-M – это 32-разрядная архитектура, которая является фантастическим выбором для более ресурсоемких задач по сравнению с тем, что доступно для более старых 8-разрядных микроконтроллеров, таких как ядра 8051, PIC и AVR.
МикроконтроллерыArm бывают разных уровней производительности, включая Cortex-M0, M0 +, M1, M3, M4 и M7.Некоторые версии доступны с блоком с плавающей запятой (FPU) и обозначены буквой F в номере модели, например Cortex-M4F.
Одним из самых больших преимуществ процессоров Arm Cortex-M является их низкая цена при требуемом уровне производительности. Фактически, даже если для вашего приложения достаточно 8-битного микроконтроллера, вы все равно должны рассмотреть 32-битный микроконтроллер Cortex-M.
Существуют микроконтроллеры Cortex-M по ценам, очень сопоставимым с некоторыми из старых 8-битных чипов.Основание вашего дизайна на 32-битном микроконтроллере дает вам больше возможностей для роста, если вы захотите добавить дополнительные функции в будущем.
STM32 от ST Microelectronics – моя любимая линейка микроконтроллеров ARM Cortex-M.
Хотя многие производители микросхем предлагают микроконтроллеры Cortex-M, мне больше всего нравится серия STM32 от ST Microelectronics. Линия микроконтроллеров STM32 довольно обширна и предлагает практически любые функции и уровень производительности, которые вам когда-либо понадобятся.Линия STM32 может быть разбита на несколько подсерий, как показано в Таблице 1 ниже.
Серия STM32 | Cortex-Mx | Макс. Частота (МГц) | Производительность (DMIPS) |
F0 | M0 | 48 | 38 |
F1 | M3 | 72 | 61 |
F3 | M4 | 72 | 90 |
F2 | M3 | 120 | 150 |
F4 | М4 | 180 | 225 |
F7 | M7 | 216 | 462 |
H7 | M7 | 400 | 856 |
L0 | M0 | 32 | 26 |
L1 | M3 | 32 | 33 |
L4 | М4 | 80 | 100 |
L4 + | M4 | 120 | 150 |
Таблица 1: Сравнение различных вариантов микроконтроллера STM32
Подсерия STM32F – это их стандартная линейка микроконтроллеров (в отличие от подсерии STM32L, которая специально ориентирована на более низкое энергопотребление).STM32F0 имеет самую низкую цену, но также и самую низкую производительность. На шаг впереди идут подсерии F1, за которыми следуют F3, F2, F4, F7 и, наконец, H7.
Для этого урока я выбрал STM32F042K6T7, который поставляется в 32-выводном корпусе с выводами LQFP. Я выбрал свинцовый пакет в первую очередь потому, что он упрощает процесс отладки, потому что у вас есть легкий доступ к контактам микроконтроллера. В то время как в безвыводном корпусе, таком как QFN, контакты скрыты под корпусом, что делает доступ невозможным без контрольных точек.
Пакет с выводами также позволяет легко заменить микроконтроллер в случае его повреждения. Наконец, безвыводные корпуса стоят дороже, чтобы припаять их к печатной плате, поэтому они увеличивают затраты как на прототипирование, так и на производство.
Я выбрал STM32F042, потому что он предлагает умеренную производительность, хорошее количество контактов GPIO и различные последовательные протоколы, включая UART, I2C, SPI и USB. Это микроконтроллер STM32 довольно начального уровня, всего с 32 контактами, но с большим набором функций.Более продвинутые версии поставляются с 216 контактами, что было бы довольно сложно для вводного руководства.
В этом первом видео мы не будем использовать большинство из этих функций, но мы воспользуемся ими в следующих видеороликах этой серии.
Шаг 2 – Разработка принципиальной схемы
Принципиальная электрическая схема для этого первого руководства, показывающая микроконтроллер STM32, линейный регулятор, разъем USB и разъем для программирования.
Теперь, когда мы выбрали микроконтроллер, пришло время разработать принципиальную электрическую схему.Для этих руководств я буду использовать инструмент проектирования печатных плат под названием DipTrace.
Доступны десятки инструментов для печатных плат, но когда дело доходит до простоты использования, цены и производительности, я считаю, что DipTrace трудно превзойти, особенно для стартапов и производителей.
Если у вас нет пакета проектирования печатной платы, вы можете рассмотреть возможность загрузки бесплатной версии DipTrace, чтобы вы могли внимательно следить за этим руководством. Они также предлагают бесплатную пробную версию своей полной версии. Лучший способ чему-то научиться – это всегда делать это на самом деле.
Для этого начального руководства достаточно бесплатной версии DipTrace, но для большинства проектов вам потребуется перейти на платную версию.
Тем не менее, это руководство будет сосредоточено на процессе разработки специальной платы микроконтроллера, а не на том, как использовать какой-либо конкретный инструмент проектирования печатных плат. Таким образом, независимо от того, какое программное обеспечение для печатных плат вы в конечном итоге используете, вы все равно найдете эти руководства столь же полезными.
Первым шагом в разработке схемы является размещение всех ключевых компонентов.Для этой первоначальной конструкции это включает микросхему микроконтроллера, регулятор напряжения, разъем microUSB и разъем для программирования.
Для более сложных проектов обычно имеет смысл сначала полностью спроектировать каждую подсхему, а затем объединить их все вместе. В зависимости от сложности конструкции (и личных предпочтений) вы также можете разместить каждую подсхему на отдельном листе. Это предотвращает превращение схемы в огромное, подавляющее чудовище на одном листе.
Конденсаторы
Затем мы разместим все различные конденсаторы.По большей части вы можете думать о конденсаторах как о крошечных перезаряжаемых батареях, которые удерживают электрический заряд и помогают стабилизировать напряжение в линии питания.
Начнем с размещения конденсатора 4,7 мкФ на входном контакте линейного регулятора. Это входное напряжение 5 В постоянного тока, поступающее от внешнего зарядного устройства USB. Это напряжение подается в линейный регулятор TLV70233, который понижает напряжение до 3,3 В, поскольку на микроконтроллер может подаваться только максимум 3,6 В.
Другой 4.Конденсатор емкостью 7 мкФ ставится на выходе стабилизатора как можно ближе к выводу. Этот конденсатор служит для накопления заряда для питания переходных нагрузок и стабилизирует внутренний контур обратной связи регулятора. Без выходного конденсатора большинство регуляторов начнут колебаться.
ПРИМЕЧАНИЕ: Обязательно загрузите бесплатное руководство в формате PDF 15 шагов для разработки нового электронного оборудования .
Разделительные конденсаторы должны быть размещены как можно ближе к выводам питания микроконтроллера (VDD).Всегда лучше обратиться к таблице данных микроконтроллера, чтобы получить рекомендации по разделению конденсаторов.
В таблице данных для STM32F042 рекомендуется разместить конденсатор емкостью 4,7 мкФ и 100 нФ рядом с каждым из двух выводов VDD (выводы входного питания). Также рекомендуется разместить развязывающие конденсаторы емкостью 1 мкФ и 10 нФ рядом с выводом VDDA.
Вывод VDDA предназначен для питания внутреннего аналого-цифрового преобразователя (АЦП) и должен быть особенно чистым и стабильным. Мы не используем АЦП в этом первом руководстве, но мы будем использовать его в будущем.
Обратите внимание, что вы обычно видите два размера конденсатора, указанные вместе для целей развязки. Например, конденсаторы 4,7 мкФ и 100 нФ.
Более крупный 4,7 мкФ может хранить больше заряда, что помогает стабилизировать напряжение, когда требуются большие скачки тока нагрузки. Конденсатор меньшего размера служит в основном для фильтрации любых высокочастотных шумов.
Распиновка микроконтроллера
Хотя STM32F042 предлагает широкий спектр функций, таких как интерфейсы связи UART, I2C, SPI и USB, вы не найдете ни одной из этих функций, обозначенных на распиновке микроконтроллера.Это связано с тем, что большинство микроконтроллеров назначают различные функции каждому выводу, чтобы уменьшить количество требуемых выводов.
Распиновка микроконтроллера STM32F042 в 32-выводном выводном корпусе LQFP.
Например, на STM32F042 вывод 9 помечен как PA3, что означает, что это вывод GPIO. При запуске эта функция автоматически назначается этому контакту. Но есть и альтернативные функции, которые можно указать в программе прошивки.
Контакт 9 может быть запрограммирован для выполнения следующих функций: входной контакт приема для последовательной связи UART, вход в аналого-цифровой преобразователь (АЦП), выход таймера или контакт ввода / вывода для контроллера емкостного сенсорного датчика. .
См. Таблицу определения выводов в таблице данных микроконтроллера (стр. 33 для STM32F042), в которой показаны все различные функции, доступные для каждого вывода. Всегда проверяйте, чтобы две функции, необходимые для вашего продукта, не перекрывались на одних и тех же контактах.
Часы
Всем микроконтроллерам для синхронизации требуются часы. Эти часы – просто точный генератор. Микроконтроллеры выполняют запрограммированные команды последовательно с каждым тактом часов.
Самым простым вариантом, если он доступен на выбранном микроконтроллере, является использование внутренних часов.Эти внутренние часы известны как часы RC-генератора, потому что они используют временные характеристики резистора и конденсатора.
Основным недостатком RC-генератора является точность. Резисторы и конденсаторы (особенно встроенные в микрочип) значительно различаются от блока к блоку, что приводит к изменению частоты генератора. Температура также существенно влияет на точность.
RC-генератор подходит для простых приложений, но если ваше приложение требует точной синхронизации, этого будет недостаточно.В этом начальном руководстве мы собираемся использовать внутренние часы RC, чтобы упростить задачу. В будущих уроках мы улучшим конструкцию, добавив гораздо более точный внешний кварцевый генератор.
Разъем для программирования
Программирование STM32 выполняется с помощью одного из двух протоколов: JTAG или Serial Wire Debug (SWD). Более продвинутые версии STM32 (STM32F1 и выше) предлагают интерфейсы программирования как JTAG, так и SWD. Подсерия STM32F0 предлагает только более простой интерфейс программирования SWD, поэтому мы сосредоточимся на этом в этом руководстве.
Интерфейс SWD требует всего 5 контактов. Это SWDIO (ввод / вывод данных), SWCLK (тактовый сигнал), NRST (сигнал сброса), VDD (напряжение питания) и заземление.
К сожалению, программатор ST-LINK, который вы будете использовать для программирования STM32, использует 20-контактный разъем JTAG (с функцией SWD). Этот разъем довольно большой и не подходит для небольших плат.
Вместо этого вы можете использовать плату адаптера с 20 контактов на 10 контактов, такую как эта от Adafruit, чтобы вы могли использовать на плате 10-контактный разъем меньшего размера.
В этом руководстве мы будем использовать 10-контактный разъем. Если это все еще слишком велико для вашего проекта, вы всегда можете использовать 5-контактный разъем и перемычки от 20-контактного выхода программатора для подключения только 5 линий, необходимых для программирования SWD.
Мощность
Последняя часть схемы, которую мы рассмотрим, – это силовая часть. Микроконтроллер STM32 может питаться напряжением питания от 2,0 до 3,6 В. Если у вас нет источника переменного тока, вам понадобится встроенный стабилизатор, обеспечивающий соответствующее напряжение питания.
Для этой конструкции мы будем питать плату от внешнего зарядного устройства USB, которое выдает 5 В постоянного тока. Затем это напряжение подается на линейный регулятор напряжения (TLV70233 от Texas Instruments), который понижает его до стабильного 3,3 В.
Для STM32 требуется максимум 24 мА при условии, что ни один из выводов GPIO не потребляет ток (каждый вывод GPIO может подавать до 25 мА). Абсолютный максимальный ток, который когда-либо потребуется для STM32, составляет 120 мА, при условии, что различные выводы GPIO используют ток.
TLV70233 рассчитан на ток до 300 мА, что должно быть более чем достаточно для этой первоначальной конструкции. В будущих руководствах, по мере добавления дополнительных функций, нам может потребоваться пересмотреть это, чтобы убедиться, что регулятор может обрабатывать требуемый ток системы.
Проверка правил электрооборудования
Последним этапом разработки принципиальной принципиальной схемы является выполнение этапа проверки, называемого «Проверка электрических правил» (ERC). На этом этапе проверки проверяются такие ошибки, как короткое замыкание между цепями, цепи только с одним контактом, наложенные контакты и несоединенные контакты.
Вы также можете установить различные ошибки типа вывода. Например, если выходной контакт подключен к другому выходу, вы получите сообщение об ошибке. Или, если выходной контакт подключен к линии питания, вы получите ошибку. DipTrace использует цветную матрицу сетки, которая позволяет вам определить, какие типы контактов будут выдавать вам ошибки или предупреждения.
Шаг 3 – Дизайн макета печатной платы (PCB)
После того, как схематический дизайн закончен, пора спроектировать печатную плату.Начните со вставки всех компонентов в компоновку печатной платы. В DipTrace вы можете использовать функцию «Преобразовать в печатную плату» в схеме, чтобы автоматически создать печатную плату со всеми вставленными компонентами.
Размещение компонентов
Несмотря на то, что все компоненты были вставлены, ваша задача – точно определить, где каждый компонент размещается на печатной плате.
Большинство пакетов программного обеспечения для проектирования печатных плат включают функцию автоматического размещения компонентов с целью минимизации длины трассировки.Но я никогда им не пользуюсь, и почти необходимо вручную размещать компоненты в наилучшем расположении.
Для нашей начальной обучающей схемы размещение компонентов довольно просто. Разместите разъем microUSB рядом с линейным регулятором так, чтобы его выход был как можно ближе к контактам входного питания (VDD) на микроконтроллере. Наконец, разместите разъем для программирования в любом удобном месте.
Размещение критических компонентов в этой первоначальной конструкции: микроконтроллер (U1), регулятор (U2), разъем micro USB (J1) и разъем для программирования (JTAG-1).
После того, как все компоненты сердечника правильно размещены, следующим шагом будет размещение всех пассивных компонентов (резисторов, конденсаторов и катушек индуктивности). В этой первоначальной конструкции единственными пассивными компонентами являются конденсаторы.
Один из ключевых аспектов проектирования электроники, который вам необходимо изучить, – это концепция паразитов. Паразиты – это пассивные компоненты (резисторы, конденсаторы и катушки индуктивности), которые вы намеренно не добавляете в свою схему. Но, тем не менее, они есть и влияют на производительность.
Например, хотя дорожка сигнала предназначена для идеального короткого замыкания, на самом деле она имеет некоторое конечное сопротивление, емкость и индуктивность, которые становятся все более значимыми по мере увеличения длины дорожки и количества изгибов и переходных отверстий.
Размещение всех критических компонентов (U1, U2, J1 и JTAG-1) и пассивных компонентов (конденсаторов).
Таким образом, это означает, что если источник напряжения расположен далеко от нагрузки, которой в данном случае является микроконтроллер STM32, по сути, между нагрузкой и источником есть резистор (без учета емкости и индуктивности).
Если микроконтроллеру внезапно требуется быстрый всплеск тока, это вызовет падение напряжения на этом резисторе трассировки.
Таким образом, даже если выходное напряжение регулятора напряжения может быть идеальным 3,30 В, напряжение на выводе микроконтроллера будет ниже во время этого скачка тока. Для решения этой проблемы используются развязывающие конденсаторы.
Помните, конденсаторы похожи на маленькие батарейки, в которых хранится электрический заряд. Размещение их прямо у контактов питания микроконтроллера позволяет им обеспечивать любые быстрые переходные токи, необходимые микроконтроллеру.
После исчезновения переходной нагрузки конденсаторы перезаряжаются источником питания, поэтому они готовы к следующему переходному увеличению тока нагрузки.
Стек слоев печатной платы
Печатная плата состоит из слоев, уложенных друг на друга. Проводящие слои разделены изоляционными слоями. Минимальное количество проводящих слоев – два. Это означает, что верхний и нижний уровни могут использоваться для маршрутизации сигналов, и эти два слоя разделены внутренним изолирующим слоем.
Для простоты этого урока мы начнем с двухслойной доски. Но по мере увеличения сложности схемы вам придется добавлять дополнительные слои.
Количество проводящих слоев всегда четное, поэтому вы можете получить плату с 2,4,6,8,10,12 проводящими слоями. Для большинства дизайнов потребуется 4-6 слоев, а для более сложных проектов может потребоваться 8 или более слоев.
Маршрут
После того, как все компоненты были правильно размещены, самое время выполнить необходимую трассировку.Есть два варианта маршрутизации: ручной и автоматический.
Для автоматической маршрутизации в DipTrace вы просто выбираете Route -> Run Autorouter , и программное обеспечение автоматически выполнит всю маршрутизацию.
К сожалению, автоматические маршрутизаторы в целом выполняют ужасную работу, и почти во всех случаях вам придется вручную выполнять всю маршрутизацию. В этом уроке мы будем выполнять всю маршрутизацию вручную.
Разводка печатной платы (черные дорожки на верхнем слое, серые дорожки на нижнем слое)
При трассировке на печатной плате вы хотите минимизировать длину каждой трассы, насколько это возможно.Вы также хотите минимизировать количество переходных отверстий и избегать любых изгибов на 90 градусов на дорожках. Эти рекомендации особенно важны для трасс с высокой мощностью и высокоскоростных сигналов.
A через – это отверстие между слоями с проводящим материалом, которое позволяет соединять вместе две дорожки на разных слоях. Большинство переходных отверстий известны как переходные отверстия от до , что означает переходные туннели через все слои платы.
Сквозные переходные отверстия – самый простой тип в изготовлении, поскольку их можно просверлить после сборки всего набора слоев печатной платы.
Via # 1 – это классический сквозной переход, via # 2 – слепой переход, а via # 3 – скрытый переход.
Переходные отверстия, которые туннелируют только через подмножество слоев, называются скрытыми и глухими переходными отверстиями. Слепые переходные отверстия соединяют внешний слой с внутренним слоем (так что один конец скрыт внутри стека печатной платы). Скрытые переходные отверстия соединяют два внутренних слоя и полностью скрыты на собранной печатной плате.
Глухие и скрытые переходные отверстия позволяют упаковать конструкцию более плотно. Это потому, что они не занимают места на слоях, которые их не используют.С другой стороны, сквозные переходные отверстия занимают место на всех слоях.
Однако имейте в виду, что глухие и скрытые переходные отверстия резко увеличивают стоимость прототипа вашей платы. В большинстве случаев вам следует ограничиться использованием только сквозных переходных отверстий. Только исключительно сложные конструкции, которые должны умещаться в исключительно маленьком пространстве, вероятно, когда-либо потребуют этих более сложных типов переходных отверстий.
При прокладке любых силовых линий с высоким током необходимо убедиться, что ширина трассы способна пропускать необходимый ток.Если вы пропустите слишком большой ток через дорожку печатной платы, она перегреется и расплавится, что приведет к неисправности платы.
Для определения необходимой ширины дорожки мне нравится использовать калькулятор ширины дорожки печатной платы. Чтобы определить требуемую ширину дорожки, вам нужно сначала узнать толщину дорожки для вашего конкретного процесса печатной платы.
Производители печатных платпозволяют вам выбирать различную толщину проводящего слоя, обычно измеряемую в унциях на квадратный фут ( 2 унций / фут), но также измеряемую в миллиметрах (мил – одна тысячная дюйма) или миллиметрах.
Обычная толщина проводящего слоя составляет 1 унцию / фут 2 . В этом уроке я сделал линии электропитания шириной 10 мил. Использование калькулятора, связанного с приведенным выше, показывает, что дорожка размером 1 унция / фут 2 шириной 10 мил фактически может пропускать почти 900 мА тока.
Очевидно, это намного больше, чем нам нужно, и я мог бы легко сузить линии снабжения. В первом уроке я показал, что абсолютный максимальный ток, требуемый STM32F042, составляет 120 мА.Возможно, удивительно, что для работы в 120 мА нам нужна только ширина дорожки 0,635 мил!
Минимальная ширина следа, допустимая для большинства процессов, составляет 4-6 мил. Следы минимальной ширины могут быть легко использованы для линий подачи в этой конструкции. При этом, чем шире кривая, тем меньше сопротивление и стабильнее напряжение питания на каждом компоненте.
Если пространство не очень ограничено, всегда следует чрезмерно проектировать трассы источника питания. Фактически, во многих случаях вам понадобится разводка источника питания на отдельном уровне, чтобы вы могли максимизировать ширину разводки.
Наконец, в калькуляторе вы заметите, что требования к внутренним и внешним слоям различаются. Для этого простого двухслойного дизайна оба слоя являются внешними, поэтому нам нужно использовать « Results for External Layers in Air ».
Внутренние слои могут пропускать гораздо меньший ток, потому что они не получают охлаждающего эффекта при контакте с воздухом, поэтому следы будут перегреваться при гораздо меньшем токе.
Завершенный макет печатной платы (PCB) для этого начального руководства.
Проверка
После того, как весь маршрут завершен, самое время выполнить проверки, чтобы убедиться, что все правильно. Здесь действительно хорошо работает автоматизация, и любой инструмент для проектирования печатных плат предлагает функции автоматической проверки.
Существует два основных типа проверки: проверка правил проектирования (DRC) и схематическое сравнение.
DRC проверяет соблюдение всех правил проектирования печатных плат. Сюда входят такие правила, как минимально допустимая ширина дорожек, минимальный допустимый интервал между дорожками, минимальный интервал между дорожкой и краем платы и т. Д.
Чтобы запустить проверку DRC, необходимо сначала получить все правила проектирования для конкретного процесса печатной платы, который вы будете использовать.
Каждый процесс прототипирования печатной платы имеет несколько разные правила, поэтому вы должны иметь правильные правила, прежде чем продолжить. Вы можете получить правила проектирования для вашего конкретного процесса у поставщика прототипа печатной платы.
В DipTrace вы определяете правила проектирования, выбирая Проверка-> Правила проектирования . После того, как все правила были правильно определены, вы можете запустить DRC, выбрав Verification-> Check Design Rules.
После того, как вы убедились, что компоновка вашей печатной платы соответствует всем правилам проектирования, пришло время проверить, соответствует ли конструкция вашей печатной платы вашей принципиальной схеме. Для этого в DipTrace вы просто выбираете Verification-> Compare to Schematic .
В будущих уроках я покажу вам различные типы ошибок DRC и сравнения схем, а также способы их исправления.
Создание герберов
После того, как вы убедились, что проект соответствует правилам проектирования и соответствует схематической диаграмме, пора заказывать прототипы печатной платы.
Для этого вам необходимо преобразовать проект компоновки печатной платы (который в настоящее время хранится в собственном файловом формате) в файловый формат промышленного стандарта, известный как Gerber.
Формат Gerber выводит каждый слой проекта печатной платы в виде отдельного файла. Сгенерированные слои – это гораздо больше, чем просто проводящие слои вашей платы. Некоторые из этих слоев включают:
1) Слои шелка – Включает текст и обозначения компонентов.
2) Сборочные слои – Аналогично шелковым слоям, но с особыми инструкциями по сборке.
3) Слои паяльной маски – обозначает зеленый цвет на печатной плате, закрывающий все проводники, к которым вы не хотите паять. Это предотвращает случайное замыкание во время пайки.
4) Слои паяльной пасты – Используется для точного размещения паяльной пасты в местах пайки.
Вам также необходимо будет сгенерировать так называемый файл Pick-and-Place , который включает координаты и ориентацию для всех компонентов.Этот файл используется производителями автоматических машин для размещения компонентов.
Наконец, вам нужно вывести файл сверления, который обеспечивает точное расположение и размер любых отверстий, таких как переходные и монтажные отверстия.
Когда у вас есть Gerbers, файл Pick-and-Place и файл сверления, вы можете отправить эти файлы в любой магазин прототипов или изготовителя для производства вашей платы.
Сводка
В этом руководстве вы узнали, как разработать блок-схему на уровне системы, выбрать все критические компоненты, спроектировать полную принципиальную принципиальную схему, спроектировать макет печатной платы (PCB) и заказать прототипы готовой печатной платы микроконтроллера. дизайн.
В этом учебном пособии сама схема целенаправленно оставлена довольно простой, чтобы не перегружать вас сложностью схемы. При этом микроконтроллер без каких-либо дополнительных функций не очень полезен.
Наконец, не забудьте загрузить бесплатный PDF-файл : Ultimate Guide по разработке и продаже нового электронного оборудования . Вы также будете получать мой еженедельный информационный бюллетень, в котором я делюсь премиальным контентом, недоступным в моем блоге.Другой контент, который может вам понравиться:
100+ Идеи мини-проектов на основе микроконтроллеров для студентов инженерных специальностей
Ранее мы уже публиковали различные идеи проектов, такие как Embedded Systems Projects , топовые проекты микроконтроллеров PIC и т. Д.Идеи всех этих проектов собраны из разных источников и опубликованы здесь специально для студентов последних курсов инженерных специальностей.
Благодаря множеству впечатляющих характеристик микроконтроллеров любой студент-инженер любит работать над проектами, основанными на микроконтроллерах. Итак, на этой странице мы собираемся опубликовать список мини-проектов на базе микроконтроллера. Эти мини-проекты на базе микроконтроллеров очень полезны студентам инженерных специальностей II и III курсов.
Связанное сообщение: Projects on Electronics
Вы можете оставлять свои комментарии, отзывы, мнения и любые новые идеи проектов, посетив нашу страницу контактов.
Список мини-проектов на основе микроконтроллеров:- 2-значный счетчик вверх-вниз: Главный принцип этой схемы – увеличивать значения на семи сегментных дисплеях нажатием кнопки. Эта схема в основном может использоваться в табло.
- 5-канальная ИК-система дистанционного управления с использованием микроконтроллера : Цель данной статьи – разработать и продемонстрировать простую 5-канальную систему дистанционного управления для управления пятью нагрузками. Эта схема работает по принципу ИК-связи.
- 8-канальная схема зуммера викторины с использованием микроконтроллера : Мы построили схему с использованием микроконтроллера, который сканирует ввод с кнопок и отображает соответствующее число на устройстве отображения.
- Автоматический контроль яркости уличного освещения: Это простая схема, которая автоматически регулирует яркость уличного освещения, разработанная с использованием микроконтроллера и светодиодов.
- Автоматический контроллер железнодорожных ворот с высокоскоростной системой оповещения : Основная цель этого проекта состоит в том, чтобы правильно эксплуатировать и контролировать беспилотные железнодорожные ворота, чтобы избежать аварий на беспилотном железнодорожном переезде.
- Двунаправленный счетчик посетителей с использованием 8051 : Эта схема двунаправленного счетчика посетителей полезна для подсчета количества людей, входящих или выходящих из комнаты, и отображения его на экране.
- Схема биполярного драйвера светодиода : Эта схема драйвера биполярного светодиода очень полезна в местах, где требуется мигание света, например, при мигании маяка. Эта схема может использоваться в основном для индикации.
- Калькулятор логической алгебры : Этот калькулятор логической алгебры представляет собой интересный проект, который более полезен в нашей реальной жизни, поскольку он работает как портативный калькулятор для упрощения логических выражений на лету.В нашей схеме мы используем методы упрощения логической алгебры, такие как алгоритм Куайна-Маккласки, чтобы упростить логическое выражение и отобразить результат на дисплее.
- Термометр со шкалой Цельсия с использованием AT89C51 : Эта схема термометра со шкалой Цельсия разработана с использованием at89c51 и lm35. Эта схема работает по принципу аналого-цифрового преобразования. Его можно использовать дома, в мобильных местах, например, в автомобилях, чтобы отслеживать температуру.
- Цифровой тахометр с микроконтроллером 8051 : Здесь мы разработали простой бесконтактный тахометр с микроконтроллером, который может измерять скорость с точностью до 1 об / сек.
- Система сигналов трафика на основе плотности с использованием микроконтроллера : В этой системе мы используем ИК-датчики для измерения плотности трафика. Нам нужно установить по одному ИК-датчику на каждую дорогу; эти датчики всегда определяют движение на этой конкретной дороге. Все эти датчики подключены к микроконтроллеру. На основе этих датчиков контроллер определяет трафик и контролирует систему движения.
- Цифровой датчик температуры: Основным принципом этой схемы является отображение цифрового значения температуры.Они в основном используются в экологических приложениях.
- Цифровой вольтметр с микроконтроллером 8051 : Это простая схема цифрового вольтметра, разработанная с использованием микроконтроллера 8051. Эта схема измеряет входное напряжение от 0 В до 5 В. Здесь входное напряжение должно быть постоянным, чтобы получить точный вывод на ЖК-дисплее.
- Схема системы домашней автоматизации на основе DTMF : Это простая и очень полезная схема в нашей реальной жизни, называемая системой бытовой техники, управляемой DTMF.Это помогает управлять бытовой техникой с помощью технологии DTMF.
- Сопряжение ЖК-дисплея 16×2 с 8051 : Это простая принципиальная схема, которая помогает описать сопряжение ЖК-модуля 16×2 с микроконтроллером семейства 8051 AT89C51.
- Сопряжение ЖК-дисплея 16X2 с микроконтроллером AVR : Это схема, которая помогает сопрягать ЖК-дисплей 16X2 с микроконтроллером AVR. Atmega16 принадлежит к семейству микроконтроллеров AVR.
- Сопряжение ЖК-дисплея 16X2 с микроконтроллером PIC : Это схема, которая помогает сопрягать ЖК-дисплей 16×2 с микроконтроллером PIC18F4550, который принадлежит к семейству PIC18F.
- Подключение 7-сегментного дисплея к 8051 : В этой статье описывается, как подключить семь сегментов к микроконтроллеру AT89C51. Эта система отображает цифры от 0 до 9 непрерывно с заранее заданной задержкой.
- Двигатель постоянного тока, взаимодействующий с микроконтроллером 8051 : Вот простая, но очень полезная схема в нашей реальной жизни, называемая взаимодействием двигателя постоянного тока с микроконтроллером 8051. В нем описывается, как управлять двигателем постоянного тока с помощью контроллера AT89C51.
- Взаимодействие GPS с микроконтроллером 8051 : В этом взаимодействии GPS со схемой 8051 модуль GPS вычисляет положение, считывая сигналы, которые передаются со спутников.
- Измеритель LC с таймером 555 : Это простая схема измерителя LC, разработанная с использованием таймера 555 и микроконтроллера 8051. Он в основном используется для измерения реактивного элемента, такого как конденсатор или катушка индуктивности.
- 3X3X3 LED Cube: Это простая схема светодиодного куба, разработанная без использования микроконтроллера. Он основан на принципе управления светодиодами с помощью тактовых импульсов.
- Взаимодействие светодиодов с 8051 : Основной принцип этой схемы заключается в подключении светодиодов к микроконтроллеру семейства 8051.Обычно используемые светодиоды имеют падение напряжения 1,7 В и ток 10 мА, чтобы светиться на полную мощность. Это подается через выходной контакт микроконтроллера.
- Схема следования по линии с использованием микроконтроллера ATMega8: Этот робот-последователь линии представляет собой базовый робот, который следует по определенному пути, обозначенному линией определенной ширины.
- Система дверного замка на основе пароля с использованием микроконтроллера 8051 : Эта система демонстрирует систему дверного замка на основе пароля, в которой после ввода правильного кода или пароля дверь открывается, и заинтересованному лицу разрешается доступ в охраняемую зону.Через какое-то время дверь закроется. Прочтите этот пост полностью, чтобы получить дополнительную информацию.
- Управление скоростью двигателя постоянного тока на основе ШИМ с использованием микроконтроллера : Вот простая схема управления скоростью двигателя постоянного тока, разработанная с использованием микроконтроллера AVR. Здесь мы используем метод, называемый ШИМ (широтно-импульсная модуляция), для управления скоростью двигателя постоянного тока.
- Как связать часы реального времени с PIC18F : получить представление о RTC, схеме выводов микроконтроллера PIC и о том, как взаимодействовать RTC с PIC18F.RTC – это интегральная схема, которая отслеживает текущее время.
- Система посещаемости на основе RFID: Эта простая система посещаемости на основе RFID разработана с использованием микроконтроллера ATmega8 и в основном используется в учебных заведениях, отраслях и т. Д., Где требуется аутентификация.
- Схема дистанционного управления через РЧ без микроконтроллера : Здесь мы использовали модули RF434 МГц для беспроводного дистанционного управления. С помощью этого пульта дистанционного управления мы можем управлять приборами в пределах 100 метров.Он используется для приложений дистанционного управления, таких как охранная сигнализация, сигнализация двери автомобиля, звонок, системы безопасности и т. Д. конкретный угол шага. Микросхема ULN2003 используется для управления шаговым двигателем, поскольку контроллер не может обеспечить ток, необходимый двигателю.
- Уличные фонари, которые загораются при обнаружении движения транспортного средства: В этой статье описывается схема, которая включает уличные фонари при обнаружении движения транспортного средства и остается выключенной по прошествии определенного времени.Эта система управляет уличным освещением с помощью резистора, зависимого от освещенности, и датчика PIR.
- Солнечная панель, отслеживающая солнечные лучи: В этой статье описывается схема, которая вращает солнечную панель. Эта солнечная панель слежения за солнцем состоит из двух LDR, солнечной панели, шагового двигателя и микроконтроллера ATMEGA8.
- Вентилятор постоянного тока с регулируемой температурой с использованием микроконтроллера : Основной принцип схемы – включение вентилятора, подключенного к двигателю постоянного тока, когда температура превышает пороговое значение.Это можно использовать в домашних условиях и в процессоре для уменьшения нагрева.
- Ультразвуковой дальномер с использованием 8051 : Эта схема объясняет вам, как измерить расстояние с помощью микроконтроллера 8051. Эта ультразвуковая система дальномера измеряет расстояние до 2,5 метров с точностью до 1 см.
- Контроллер уровня воды с использованием микроконтроллера 8051 : Здесь мы проектируем схему, которая используется для автоматического определения и контроля уровня воды в верхнем резервуаре с использованием микроконтроллера 8051.Он используется в промышленности для автоматического контроля уровня жидкости.
- Индикатор уровня воды : В этом проекте индикатора уровня воды используется простой механизм, который помогает определять и указывать уровень воды в верхнем резервуаре или любом другом резервуаре для воды. Его можно использовать в отелях, фабриках, жилых домах, коммерческих комплексах, канализации и т. Д.
- Задержка с использованием таймеров 8051: Создание временных задержек в электронных схемах является основным, но очень важным требованием как для цифровых, так и для логических систем.Точные временные задержки важны во многих схемах. Задержки могут быть сгенерированы с использованием ФАПЧ, но в этом проекте используется 8051 для генерации точных временных задержек.
- Велосипедный фонарь с 3 светодиодами с использованием PIC10F200: Здесь разработан многофункциональный светильник для велосипедов с 3 светодиодами высокой яркости. Для управления освещением используется микроконтроллер PIC10F200. Это недорогой и высокопроизводительный микроконтроллер. PIC10F200 также требует небольшого блока питания и может работать при 2 В. Следовательно, для питания устройства будет достаточно двух батареек AA.
- Система управления скоростью потолочного вентилятора на основе температуры (двигатель 230 В переменного тока): Потолочные вентиляторы имеют ручной регулятор, т.е. скорость можно регулировать вручную. В этом проекте спроектировано автоматическое регулирование скорости вращения потолочного вентилятора в зависимости от температуры на основе микроконтроллера. Датчик температуры используется для измерения температуры. Кроме того, ЖК-дисплей используется для отображения текущей температуры, а также скорости вращения вентилятора.
- Вентилятор с регулируемой температурой (двигатель постоянного тока на основе ШИМ): Управление скоростью двигателя постоянного тока (вентилятора) с помощью микроконтроллера.Используется датчик температуры, и скорость двигателя постоянного тока изменяется в зависимости от температуры. Микроконтроллер генерирует сигнал ШИМ в зависимости от температуры.
- Simple Toll Plaza: В этом проекте разработана простая система автоматического удержания платы за проезд на основе микроконтроллера. В системе используются технологии RFID и GSM. Считыватель RFID на площади обнаруживает метку RFID пользователя и автоматически вычитает требуемую сумму, а модуль GSM отправляет уведомление пользователю.
- Мониторинг автомобильного аккумулятора и система оповещения о низком напряжении в режиме реального времени: Аккумулятор – важное устройство в автомобильной промышленности. Целью этого проекта является разработка системы мониторинга батареи в реальном времени с системой оповещения о низком напряжении. Он использует микроконтроллер и имеет встроенные схемы измерения напряжения и температуры. Эту систему можно использовать в ИБП, гибридных транспортных средствах, обычных электромобилях и т. Д.
- Система охранной сигнализации в реальном времени с использованием ИК-датчика: Пассивные инфракрасные датчики (ИК-датчики) могут использоваться в системах безопасности и предотвращать кражи со взломом.Здесь разработана система охранной сигнализации на базе микроконтроллера. Датчик PIR является основным модулем вместе с некоторыми другими датчиками, такими как акустические и магнитные датчики. Связь осуществляется через РЧ-канал, а на принимающей стороне установлена сигнализация.
- Color Sensing Robot: Это проект на основе MATLAB, включающий концепции обработки изображений и робототехники. Камера используется в качестве датчика изображения для захвата цветного объекта. В зависимости от положения цветного объекта в роботе будет соответствующее движение.В этом проекте использовался микроконтроллер NXP.
- Система продажи автобусных билетов на основе RFID: Основная проблема ручной системы продажи билетов – это формирование очередей. Система продажи билетов на основе RFID обеспечивает простой способ покупки билетов. RFID может использоваться для идентификации пассажира и на основе GPS; Стоимость проезда автоматически списывается в зависимости от расстояния.
- Автоматическая система звонка в колледж с использованием AT89S52: В этом проекте разработана недорогая и простая в реализации система автоматического звонка в колледж / школу.Микроконтроллер Atmel AT89S52 используется с дисплеем и реле, поэтому отображается время и срабатывает звонок. Эту систему можно использовать в академических учреждениях и избежать ручного вмешательства.
- Коммутация электрических устройств, контролируемых мобильным телефоном (DTMF): Здесь разработана простая система домашней автоматизации на основе мобильного телефона. Требуются микроконтроллер, мобильный телефон, декодер DTMF и несколько реле. Представленный здесь проект может работать с четырьмя электрическими устройствами.
- Система оповещения о дорожном движении на базе приемопередатчика RF для автомобилей: Это система оповещения о дорожном движении на базе микроконтроллера. Радиочастотный передатчик на светофоре передает состояние сигнальных огней. Приемник в автомобиле обнаружит эти сигналы и отобразит их на ЖК-дисплее. В случае, если транспортное средство находится слишком близко к другому транспортному средству или объекту, система предотвращения столкновений предупреждает пользователя.
- Автоматическое отключение водяного насоса с другим временным интервалом: Это инновационное решение для управления двигателем на небольшой срок.Если двигатель должен работать в течение определенного времени, а затем автоматически отключаться, то этот проект очень полезен. Используются четыре переключателя, поэтому можно запрограммировать четыре разных временных интервала.
- Автоматизация общественных садов на основе микроконтроллеров: Важной задачей на сельскохозяйственных полях и садах является своевременный полив сельскохозяйственных культур и растений. Целью этого проекта является реализация автоматизации садовых и сельскохозяйственных полей на основе микроконтроллеров. Время программируется в микроконтроллере, и соответствующие электромагнитные клапаны открываются или закрываются соответственно.
- Цифровая система защиты от перенапряжения на основе микроконтроллера для промышленных нагрузок: Промышленные предприятия работают с высокими напряжениями и мощностями. Даже в этом случае внезапное перенапряжение может нанести катастрофический ущерб всей системе. Цель этого проекта – обеспечить защиту промышленных нагрузок от перенапряжения. Он основан на микроконтроллере AVR и может быть применен к любой системе высокой мощности, напряжения и тока, такой как подстанции.
- Система навигации для инвалидных колясок на основе голоса для людей с ограниченными физическими возможностями: Инвалидная коляска с голосовым управлением разработана в этом проекте для помощи людям с ограниченными физическими возможностями.ИК-датчики используются для правильного передвижения. В соответствии с инструкциями, передаваемыми через голосовое управление, кресло-коляска перемещается в указанное место по заранее заданному пути. Он также имеет систему обнаружения препятствий.
- Регистратор данных на основе микроконтроллера: Система сбора данных (также называемая регистратором данных) представляет собой автономную систему записи данных. В этом проекте разработан регистратор данных температуры с использованием микроконтроллера. Данные с датчика температуры анализируются микроконтроллером и передаются на ПК по каналу RS232.
- Роботизированное управление с использованием метода следования по линии: Целью этого проекта является создание роботизированной системы управления, следящей за линией на земле. Робот состоит из автомобиля с бортовым визуальным датчиком, позволяющим видеть намеченный путь. Микроконтроллер используется для установления пути на основе полученных захваченных изображений с камеры. Заимствованная обработка изображений делает полученные решения более точными.
- Система мониторинга и контроля уровня воды на основе микроконтроллера: Здесь разработана система мониторинга и контроля уровня воды на базе микроконтроллера 8051.Несколько датчиков уровня воды помещается в верхний резервуар или другой резервуар для воды. Датчики размещаются таким образом, чтобы показывать четверть, половину, три четверти и полный уровень в резервуаре. Когда бак полон, реле выключает мотор.
- Машина для голосования на базе ЖК-дисплея: В этой статье описывается машина для голосования на базе микроконтроллера с ЖК-дисплеем. Он состоит из блока для голосования, блока управления, блока индикации и блока питания. В качестве основного управляющего устройства используется микроконтроллер Atmega16.Результаты могут отображаться на ЖК-дисплее.
- Робот пожаротушения: Пожарные изо всех сил стараются бороться и тушить пожар, когда это необходимо. Но раннее обнаружение пожара на бытовом уровне может предотвратить серьезные несчастные случаи. Этот робот может обнаруживать и тушить огонь. Такие роботы могут помочь даже пожарным. Его можно заставить работать в автономном режиме или в ручном режиме.
- Система автоматического открывания дверей с датчиком движения: Целью этого проекта является создание системы автоматического открывания дверей, основанной на обнаружении движения.Это система на основе микроконтроллера, которая использует датчики PIR (пассивные инфракрасные) для обнаружения движения. Они используются в аэропортах, торговых комплексах, больницах и во всех крупных коммерческих центрах.
- Проблесковый маячок с использованием микроконтроллера: Аварийные маяки полезны в системах сигнализации, системах предупреждения, а также в системах предупреждения. В этом проекте разработан маяк-мигалка на базе микроконтроллера. Он использует микроконтроллер на базе Arduino.
- Цифровой календарь Использование 8051: Календарь – это устройство, которое помогает отдельным лицам, компаниям и т. Д.на всех уровнях, чтобы сохранить время, дату, месяц и год. Здесь разработан электронный календарь на базе микроконтроллера. Он состоит из пяти модулей, а именно источника питания, интерфейса 8051, цифровых часов, данных, месяца и года, выбора набора и дня.
- Цифровой таймер обратного отсчета с использованием микроконтроллера: Таймер обратного отсчета – важное устройство отсчета времени, которое используется для отсчета времени, на экзаменах, а также на спортивных мероприятиях. В этом проекте разработан таймер обратного отсчета на базе микроконтроллера. Он использует семь сегментных дисплеев для отображения времени обратного отсчета.
- Система контроля скорости на основе RF для транспортных средств: Безопасность дорожного движения в таких важных местах, как школы, холмы, шоссе и скоростные дороги, очень важна. В этом проекте предлагается система контроля скорости для транспортных средств в местах, упомянутых выше. Это система на основе микроконтроллера с радиочастотной связью. Это простой, недорогой и надежный проект для безопасности водителей и населения.
- Внедрение системы управления автомобилем с использованием протокола CAN: CAN – важный протокол в автомобильной промышленности.Целью этого проекта является внедрение системы управления транспортным средством на основе протокола CAN. С помощью этой системы возможно цифровое управление транспортным средством. В нем используется процессор ARM и интегрированы различные датчики и элементы управления, такие как контроль скорости двигателя, температура, препятствие для ИК-излучения, давление, топливо, вибрация и т. Д.
- Система мониторинга трансформатора на основе микроконтроллера: трансформаторы – очень важные электрические устройства в распределении энергии и конверсия. Следовательно, мониторинг различных параметров трансформатора, таких как напряжение, ток и температура, является важной задачей.В этом проекте разработана система удаленного мониторинга трансформатора на базе микроконтроллера. Беспроводная передача данных основана на протоколе ZigBee.
- Цифровой секундомер на базе микроконтроллера: Время, прошедшее между двумя событиями, можно точно измерить с помощью секундомера. Они отличаются от обычных часов и очень точны. Целью проекта является создание цифрового секундомера на базе микроконтроллера с ЖК-дисплеем. Для получения более точных результатов можно использовать кварцевый генератор.
- Управление серводвигателем с использованием микроконтроллера PIC: Серводвигатели используются в качестве альтернативы шаговым двигателям, где требуется высокоточное управление. В этом проекте разработано управление серводвигателем на базе микроконтроллера PIC. Графический интерфейс на основе MATLAB используется для управления углом поворота двигателя на основе ползунков графического интерфейса.
- Часы реального времени с использованием микроконтроллера: В этом проекте часы реального времени реализованы с использованием микроконтроллера. Часы реального времени – очень полезная система поддержания времени, которая работает даже при отсутствии питания.Часы реального времени используются в различных электронных устройствах, цифровых камерах, мобильных телефонах, больницах и т. Д. Используется микроконтроллер AT89C55 с протоколом I2C.
- Радиочастотная система детского мониторинга и сигнализации в реальном времени: Безопасность ребенка имеет первостепенное значение для каждого родителя. Целью этого проекта является внедрение системы мониторинга и отслеживания детей, которая подходит для наблюдения за многими детьми, а также для определения того, как далеко дети находятся от своих родителей. Микроконтроллер PIC – это главный блок управления, который интегрирован с радиопередатчиками, модулем GPS и сигнализацией.
- Цифровой буквенно-цифровой дисплей с прокруткой сообщений на основе микроконтроллера: Дисплей с прокруткой – очень полезный способ отображения сообщений (как коротких, так и длинных) в общественных местах, таких как автобусы и железнодорожные станции. Разработана система отображения прокручиваемых сообщений на базе микроконтроллера. Он также использует фотоэлектрические элементы для питания устройства с помощью солнечной энергии. Используется светодиодный точечно-матричный дисплей. Система может быть очень эффективной и полезной, поскольку использует солнечную энергию вместе с резервной батареей.
- Цифровой буквенно-цифровой дисплей с прокруткой сообщений на основе микроконтроллера: Дисплей с прокруткой – очень полезный способ отображения сообщений (как коротких, так и длинных) в общественных местах, таких как автобусы и железнодорожные станции. Разработана система отображения прокручиваемых сообщений на базе микроконтроллера. Он также использует фотоэлектрические элементы для питания устройства с помощью солнечной энергии. Используется светодиодный точечно-матричный дисплей. Система может быть очень эффективной и полезной, поскольку использует солнечную энергию вместе с резервной батареей.
- Управление трехфазным асинхронным двигателем на основе микроконтроллера с использованием метода ШИМ: Асинхронные двигатели используются в различных промышленных и бытовых приложениях. Скорость асинхронного двигателя можно регулировать с помощью различных методов, например, самый простой из них – регулировка частоты статора. Управление асинхронным двигателем на основе микроконтроллера очень полезно в химической, цементной и текстильной промышленности, где может быть достигнута желаемая скорость. Используется микроконтроллер PIC, который генерирует необходимые сигналы PWM.Он использует FM-сигналы для беспроводной связи.
- Усовершенствованная система автоматического управления улицами города на основе микроконтроллера: Целью этого проекта является внедрение системы автоматического управления улицами города на основе микроконтроллера. Для автоматизации используются микроконтроллер PIC, датчик LDR, фотоэлектрический датчик и набор реле. При обнаружении движения или отсутствия света реле автоматически включаются или выключаются, что, в свою очередь, включает или выключает уличные фонари.
- Система контроля уровня жидкости: Контроль уровня жидкости играет важную роль в автомобилестроении и таких отраслях, как газ, нефть или даже вода. Целью данного проекта является внедрение системы контроля уровня жидкости на базе микроконтроллера с использованием ультразвукового датчика. В систему также интегрирован модуль GSM, что позволяет осуществлять беспроводной мониторинг.
- Система входа гаражных ворот на основе RFID: Целью этого проекта является внедрение технологии RFID в систему открывания гаражных ворот.Микроконтроллер PIC используется в качестве основного модуля и интегрирован со считывателем RFID. Когда RFID-метка, которую пользователь несет или прикрепляет к машине, приближается к воротам гаража, микроконтроллер срабатывает для автоматического открытия двери.
- Безопасная гаражная система с использованием метода распознавания номерных знаков: Есть много автоматических систем гаражных ворот. В большинстве из них используются любые методы беспроводной связи, но без какой-либо защиты. Система безопасных гаражных ворот реализована с помощью технологии распознавания автомобильных номеров.Камера используется для захвата изображения номерного знака, а микроконтроллер выполняет обработку изображения для преобразования изображения в текст. Доступ к воротам гаража будет предоставлен только авторизованным номерам.
- Интеллектуальная система управления уличным освещением с высокой мощностью: Здесь разработана интеллектуальная система управления уличным освещением на основе микроконтроллера. Он состоит из микроконтроллера PIC, набора резисторов обнаружения света, датчиков температуры, датчиков влажности и датчиков движения. В качестве основного источника освещения используется матрица светодиодов.Это очень полезная система, поскольку она снижает ненужное потребление электроэнергии.
- Промышленная система сортировки на основе определения цвета / металла: Промышленная автоматизация погрузочно-разгрузочных работ поможет ускорить процесс перемещения товаров. Здесь разрабатывается промышленная система сортировки на базе микроконтроллера, основанная на цветном восприятии и обнаружении металлов. Система имеет ИК-датчик положения, датчик цвета и датчик приближения к металлу. На основе значений этих датчиков микроконтроллер запускает движения манипулятора и конвейерной ленты.
- Автоматизация сортировки объектов с использованием промышленного робота и обработки изображений на основе MATLAB: Целью этого проекта является реализация автоматизации механизма сортировки объектов с использованием роботизированного манипулятора промышленного уровня и техники обработки изображений. В процессор на базе ARM7 встроена камера для захвата изображений, ИК-датчик, ПК через интерфейс RS232, роботизированная рука и конвейерный механизм. ЖК-дисплей используется для отображения количества объектов.
- Энергоэффективная интеллектуальная система уличного освещения с использованием ZigBee и датчиков: Энергоэффективность и энергосбережение становятся все более важными.Целью этого проекта является внедрение энергоэффективной интеллектуальной системы управления уличным освещением. Микроконтроллер ATmega16 используется вместе с беспроводной сенсорной сетью, которая включает датчик Холла, датчик PIR и LDR. Связь на основе ZigBee может быть установлена со станцией удаленного управления, и данные могут контролироваться.
- Промышленная система контроля и управления температурой: Промышленная автоматизация через Ethernet обеспечивает более быстрые и точные результаты, поскольку Ethernet поддерживает скорость передачи данных в диапазоне от 100 Мбит / с до нескольких Гбит / с.Этот проект обеспечивает промышленную систему контроля и управления температурой с использованием соединения Ethernet. Микроконтроллер интегрирован с датчиком температуры, а также с драйвером Ethernet. LabVIEW используется для виртуальных инструментов.
- Система контроля температуры на основе микроконтроллера с регистратором данных в реальном времени: В этой системе реализована система контроля температуры на основе микроконтроллера AVR с регистратором данных температуры в реальном времени. Датчик температуры встроен в микроконтроллер, и в зависимости от температуры микроконтроллер запускает блок контроля температуры, такой как охлаждающий вентилятор и т. Д.Механизм регистрации данных работает через кабель RS232, подключенный к ПК, и микроконтроллер регистрирует данные.
- GPS-спидометр с системой оповещения о превышении скорости: Спидометр является важной частью автомобилей, поскольку он сообщает различные параметры, связанные со скоростью, такие как обороты, скорость и т.д. В этом проекте реализован спидометр на основе GPS. К микроконтроллеру подключается модуль GPS и модем GSM. Скорость рассчитывается с использованием технологии GPS, а информация отправляется в орган власти по технологии GSM.
- Система мониторинга автобусов и информации о пассажирах в реальном времени: Общественный транспорт является важным средством передвижения в большинстве стран. Автобусы – одна из наиболее часто используемых систем общественного транспорта. Целью этого проекта является внедрение системы мониторинга автобусов и информирования пассажиров в режиме реального времени. В шине размещена передающая система, в которой есть микроконтроллер и модуль GPS. Он передает данные GPS в принимающую систему, расположенную в автобусном отсеке или на терминале.
- Декодер сигналов ИК-пульта дистанционного управления на основе микроконтроллера для домашнего применения: ИК-пульты дистанционного управления обычно используются во многих электрических и электронных приложениях. В этом проекте внедряется система декодирования ИК-сигналов на основе микроконтроллера AVR, чтобы пульт можно было использовать для других приложений управления домом. Он имеет ИК-датчик, ЖК-дисплей и датчик пересечения нуля. Это дешевый, простой и надежный способ реализовать систему декодирования.
- Проектирование оборудования в реальном времени для автоматического мониторинга и управления освещением и температурой: В этом проекте температура и свет контролируются и контролируются с помощью системы на основе микроконтроллера.Имеет датчик освещенности и датчик температуры. Желаемый свет и температура могут быть введены пользователем, а текущие и желаемые значения отображаются на ЖК-дисплее.
- Обнаружение алкоголя с контролем транспортных средств: Здесь реализовано интеллектуальное решение для обнаружения нетрезвых людей и предотвращения аварий. Система на основе Arduino разработана с датчиком алкоголя, модулем GSM, модулем GPS и ЖК-дисплеем. При обнаружении алкоголя сигналы GPS блокируются и отправляются на контакты человека через технологию GSM.Кроме того, двигатель постоянного тока используется для блокировки запуска двигателя.
- Автоматическая система управления жалюзи на основе интенсивности освещения в помещении: Частью системы домашней автоматизации является управление жалюзи. В этом проекте разработана система автоматического управления жалюзи на базе микроконтроллера. Жалюзи закрываются или открываются в зависимости от интенсивности света в комнате. Для этого используется пара LDR и мотор для сдвигания жалюзи.
- Цифровая игра в кости с использованием микроконтроллера 8051: В этом проекте создается цифровая игра в кости на основе микроконтроллера.Он состоит из микроконтроллера 8051, ЖК-дисплея для счета и 7-сегментного дисплея для отображения числа на игральных костях. Кнопки используются для действия броска и сброса кубика.
- Счетчик электроэнергии с предоплатой для эффективного управления энергопотреблением: Эффективное использование электроэнергии очень важно, поскольку потребление электроэнергии увеличивается день ото дня. Для эффективного управления энергопотреблением реализован счетчик электроэнергии с предоплатой на базе микроконтроллера. Система включает в себя микроконтроллер PIC, модуль GSM, реле, детектор перехода через ноль, трансформатор напряжения и тока, клавиатуру и ЖК-дисплей.
- Измеритель предоплаты на базе микроконтроллера AVR: Большинство биллинговых систем являются ручными и подвержены ошибкам. Чтобы уменьшить вмешательство человека и уменьшить количество ошибок, реализована система счетчиков электроэнергии с предоплатой на базе микроконтроллера AVR. Диапазон может быть установлен, и как только счетчик достигает этого диапазона, модуль GSM указывает пользователя с уведомлением.
- Цифровой ваттметр с ЖК-дисплеем: В этом проекте реализован цифровой ваттметр на базе микроконтроллера ATmega32.Его можно использовать для измерения мощности нагрузки. В системе используется микросхема ADE7751, которая служит катушкой напряжения и тока. Есть ЖК-дисплей для отображения мощности. Точность может быть очень высокой и может работать при нескольких нагрузках.
- Цифровой тахометр на основе микроконтроллера: Тахометры – очень полезные устройства для расчета оборотов двигателя. Точная обратная связь от тахометра может использоваться для повышения эффективности, а также производительности двигателя.В этом проекте реализован цифровой тахометр на базе микроконтроллера 8051 (AT89C2051) с очень точными результатами.
- Бесконтактный тахометр на базе микроконтроллера: Целью этого проекта является реализация бесконтактного тахометра на базе микроконтроллера. В этой системе микроконтроллер ATmega16 используется вместе с ЖК-дисплеем и парой ИК-передатчик – приемник. Вал двигателя помещен между парой ИК и снабжен картоном.
- Электронный кодовый замок: Растущий уровень преступности, нападений воров и злоумышленников стал основной причиной появления различных устройств безопасности и замков.Целью этого проекта является реализация электронного кодового замка на основе пароля с использованием микроконтроллера 8051. Клавиатура и ЖК-дисплей используются для ввода пароля и отображения информации.
- Конструкция терминальной системы на основе гибридной RFID-GPS в: Технология RFID обеспечивает точную, быструю идентификацию в реальном времени. Они часто используются в управлении логистикой для повышения производительности. В этом проекте терминальная система разработана на основе гибридных технологий RFID – GPS. Это помогает в непрерывном отслеживании и мониторинге груза, загруженного на борт, для цифровой логистики.Используется микроконтроллер вместе с модулем GSM, датчиком температуры и зуммером.
- Система распознавания и мониторинга столкновений транспортных средств На основе AVR: Автомобильные аварии являются одной из основных причин смертельных исходов и несчастных случаев. Люди гибнут из-за плохой службы экстренной помощи и своевременной помощи. Предлагается система распознавания и мониторинга столкновений транспортных средств на базе микроконтроллера ATmega16. Он использует 3-осевой акселерометр, модули GSM и GPS. В случае аварии данные модуля GPS блокируются и отправляются через модуль GSM контактам и службам экстренной помощи.
- Система измерения качества воды в реальном времени на основе GSM: Качество воды очень важно, поскольку в окружающей среде присутствуют многие типы загрязняющих веществ, которые загрязняют воду. Разработана система, которая управляет качеством воды в реальном времени. Набор датчиков, таких как датчик pH, мутности, проводимости и температуры, интегрирован в микроконтроллер (8051) через АЦП. В комплект входит модуль GSM, который оповещает удаленный центр мониторинга.
- Реализация в реальном времени микроконтроллерных часов пропеллера: пропеллерные часы – это линейный массив светодиодов, вращающихся с высокой угловой скоростью, так что создается круглый экран.Он основан на постоянстве видения. В этом проекте реализованы пропеллерные часы на базе микроконтроллера. Он состоит из микроконтроллера AT89S52, массива светодиодов, ИК-датчика и двигателя постоянного тока для вращения.
- Система телеобнаружения ЭКГ на основе GSM: Сердечные заболевания – это распространенная форма заболеваний у людей. Остановка сердца может вызвать внезапную и неожиданную смерть. Разработана система, которая отслеживает сигналы ЭКГ человека и предупреждает с помощью сообщения. Микроконтроллер 8051 сопряжен с модулем ЭКГ и GSM.При обнаружении остановки сердца (или любого сердечного заболевания) врачу и личному контакту отправляется предупреждение.
- Как управлять шаговым двигателем с помощью ULN2003 и микроконтроллера 8051 (AT89S52): Альтернативные источники энергии, такие как возобновляемые источники энергии (солнечная, ветровая и т. Д.), Приобретают все большее значение. В этом проекте реализовано управление шаговым двигателем с помощью микроконтроллера ULN2003 и 8051, и концепция применяется к системе слежения за солнцем. LDR используются для отслеживания солнца, а шаговый двигатель управляется микроконтроллером.
- Он-лайн ИБП с использованием микроконтроллера PIC: В этом проекте разработан микроконтроллер PIC на основе онлайн-ИБП. Предлагаемая схема имеет все характеристики современного ИБП. На выходе постоянно присутствует 200 В переменного тока. Используется свинцово-кислотный аккумулятор. Идея состоит в том, чтобы поддерживать зарядку постоянным током, ограничивая рабочий цикл зарядного устройства. Схема инвертора, используемая в этой системе, представляет собой инвертор прямоугольной формы.
- Контроллер ветряной турбины на базе микроконтроллера PIC: Производство электроэнергии из энергии ветра – эффективный способ сократить потребление обычной электроэнергии.В этом проекте реализован контроллер заряда ветряной турбины на базе микроконтроллера PIC 16F877A. Контроллер заряда может контролировать максимальный ток 7А. В этой системе используется небольшая батарея. ЖК-дисплей и сигнализация включены для индикации состояния заряда батареи.
- Контроллер заряда солнечной батареи на основе микроконтроллера: Возобновляемая энергия является альтернативным источником для выработки электроэнергии. Разработан недорогой высокопроизводительный контроллер заряда солнечной батареи на базе микроконтроллера.Солнечная фотоэлектрическая панель действует как вход в систему. Система состоит из микроконтроллера PIC, фотоэлектрической панели, батареи и нагрузки постоянного тока. Он также имеет возможность управлять ИБП, где переключатель может изменить источник заряда батареи ИБП.
Регулярно посещайте этот сайт, чтобы получать последние обновления о различных проектах в области электроники и принципиальных схемах. Также ознакомьтесь с огромной коллекцией условных обозначений электрических и электронных схем
LDK Experiment 6: Microcontroller Circuits
Введение
Добро пожаловать в эксперимент 6 LilyPad Design Kit, в котором вы погрузитесь в разработку и создание схемы микроконтроллера.
Микроконтроллер – это крошечный компьютер, который можно запрограммировать для приема информации и регулирования мощности вашей цепи, позволяя вам управлять освещением, датчиками, звуком, движением и рядом других факторов. В конечном итоге это позволит вам создавать уникальные, интерактивные и индивидуальные проекты! Мы не будем программировать этот контроллер, он запрограммирован заранее, но вы узнаете, как соединять части. Когда вы будете готовы запрограммировать свою собственную схему, она будет работать точно так же!
Рекомендуемая литература
Прежде чем мы начнем, вот несколько ресурсов, которые могут оказаться полезными:
Предыдущие учебные пособия по LDK
Другие соответствующие учебные пособия
Сбор материалов
Для начала вам понадобятся эти детали.Если вы используете Lilypad Design Kit, значит, все они у вас уже есть!
А теперь самое время подготовить ткань к пяльцам для вышивания, если вы их используете.
Положительные следы
Для начала убедимся, что у нас все устроено так, как нам нравится. Важно, чтобы один положительный вывод на аккумуляторной батарее был направлен в сторону положительного вывода на плате LilyTiny. Точно так же один отрицательный вывод должен указывать на отрицательный на плате.Вам нужно место для обоих этих компонентов, а также для четырех светодиодов, которые будут размещены вокруг платы LilyTiny с положительными контактами, указывающими на пронумерованные контакты на плате Tiny.
Когда вы знаете, где вы хотите разместить компоненты, и уверены, что для всего достаточно места, отложите все, кроме держателя батареи. Аккумулятор пока вставлять не надо! Пришейте положительную булавку дальше всего от того места, где вы хотите поставить свою крошечную доску, затем пришейте несколько стежков к более близкой положительной булавке.Пришейте и это. Если вы следили за всей серией LDK, вы, вероятно, уже являетесь экспертом в этой части! Пока не обрезайте нить.
Продолжая след от плюсового вывода аккумулятора, пришейте к плюсовому выводу платы LilyTiny и прошейте его несколькими стежками.
Завяжите узел и обрежьте нить перед следующим шагом.
Начиная с новой дорожки нити, пришейте одну из пронумерованных булавок на крошечной доске. От этой булавки пришейте линию стежков туда, где вы хотите, чтобы светодиод был, и пришейте положительный контакт этого светодиода.Завяжите узел и обрежьте нить, а пока оставьте отрицательный штифт в покое.
Повторите этот процесс еще три раза, подключая каждый из оставшихся пронумерованных контактов к положительной стороне светодиода.
Отрицательные следы
Это финишная прямая! Отрицательной стороной этой схемы будет одна длинная дорожка, поэтому убедитесь, что ваша нить достаточно длинная!
Точно так же, как вы это делали с положительной стороной, пришейте оба контакта аккумуляторной батареи, затем протяните эту дорожку до отрицательного контакта крошечной платы. В отличие от с положительной стороны, здесь не нужно завязывать узел и обрезать нить; вы продолжите эту трассировку.
Продлите линию вышивки от отрицательного вывода Tiny board до отрицательного вывода ближайшего светодиода, стараясь параллельна положительному следу, не касаясь его. Продолжайте эту дорожку по внешнему периметру светодиодов, соединяя все отрицательные контакты по мере их обнаружения. Когда вы дойдете до последнего светодиода, завяжите узел и обрежьте нить – нет необходимости возвращать ее обратно к батарейному блоку.
Вот оно! Вставьте аккумулятор положительной стороной вверх в держатель аккумулятора и включите переключатель.
Как это работает
Каждый индикатор будет вести себя по-разному. Контакт 0 вызовет затухание “дыхания”. На контакте 1 будет мигать шаблон сердцебиения. Контакт 2 будет мигать и гаснет. И контакт 3 будет отображать случайное мерцание. Это отличные примеры лишь нескольких световых эффектов, которых можно добиться с помощью кода Arduino. Когда вы будете готовы начать программировать для себя, вы найдете код, используемый на этой плате, на странице продукта LilyTiny в разделе «Документы»
.Лили Твинкл
Если вам нравится схема LilyTiny и вы хотите попробовать другой предварительно запрограммированный микроконтроллер, обратите внимание на LilyTwinkle! Это та же самая плата, которую вы только что использовали, но с другим кодом.Это означает, что вы будете подключать источники света одинаково, но вместо того, чтобы выполнять 4 разных действия, все они будут отображать мерцающий эффект вместе. Милый!
Примеры проектов
Посмотрите эти крутые проекты, сделанные с использованием этой схемы:
Ресурсы и дальнейшее развитие
Хотите сделать больше с вашими досками LilyTiny и LilyTwinkle? Существует множество руководств, которые помогут и вдохновят вас добиться больших результатов на наших маленьких досках!
Что такое микроконтроллер? Как это работает ?
Микроконтроллер – это интегральная схема (ИС), которая представляет собой небольшой, недорогой и автономный компьютер, предназначенный для решения конкретной задачи во встроенных системах.Проще говоря, микроконтроллер (MCU или Microcontroller Unit) – это небольшой компьютер, интегрированный в один чип. Мы также можем объяснить это как программируемый кремниевый чип, который управляется тактовой частотой, основан на регистрах, принимает ввод и обеспечивает вывод после его обработки в соответствии с инструкциями, хранящимися в памяти.
Компьютер – это устройство общего назначения, которое мы можем использовать для обработки текста, просмотра фильмов, редактирования видео, просмотра веб-страниц, разработки программного обеспечения и т. Д. В то время как микроконтроллер предназначен для выполнения некоторых конкретных задач, таких как управление стиральной машиной, управление кондиционером и т. Д. .
Микроконтроллер обрабатывает данные, поступающие на его входные контакты, используя свой ЦП, и выдает выходной сигнал через выходные контакты. Он выполняется или управляется синхронной последовательной логической схемой.
Согласно теории цифровых схем, последовательная схема – это логическая схема, выход которой зависит не только от текущих входов, но и от прошлой истории входов. А в синхронных последовательных схемах состояние устройства изменяется только с дискретной синхронизацией, определяемой тактовым сигналом. Основное преимущество синхронной системы – это простота по сравнению с асинхронной системой.
Надеюсь, вы знаете о задержке распространения. Микроконтроллер использует огромное количество логических вентилей для обработки данных. Этим воротам требуется некоторое время, чтобы изменить свое выходное состояние в зависимости от их входов, что называется задержкой распространения. Таким образом, интервал между каждым тактовым сигналом должен быть больше, чем эта задержка распространения, чтобы логическая схема была стабильной и надежной. Таким образом, это определяет максимальную рабочую скорость микроконтроллера, которая будет варьироваться в зависимости от микроконтроллера.
Внутри микроконтроллераКак мы объясняли выше, в микроконтроллер встроены различные элементы, такие как ЦП, ОЗУ, ПЗУ и т. Д.
процессор
ЦПаналогичен процессору в компьютере, который в основном состоит из арифметического и логического блока (ALU), блока управления и массива регистров. Как видно из названия, ALU выполняет все арифметические и логические операции с данными, полученными от устройств ввода или памяти. Массив регистров состоит из ряда регистров, таких как аккумулятор (A), B, C, D и т. Д., Которые действуют как временные ячейки памяти быстрого доступа для обработки данных. Как видно из названия, блок управления управляет потоком инструкций и данных в системе.
RAM
RAM означает оперативную память. Подобно компьютеру, ОЗУ используется для динамического хранения данных, пока микроконтроллер выполняет инструкции. Это энергозависимая память, это означает, что при отключении питания все данные исчезают.
ПЗУ или программная память
ROM означает постоянную память. В старых микроконтроллерах флеш-память была одноразовой программируемой, поэтому называется ROM. Но в последних микроконтроллерах он перепрограммируется, т.е. EEPROM (электрически стираемая программируемая постоянная память).ПЗУ используется для хранения программы или инструкций, которые необходимо выполнить.
Порты ввода-вывода (I / Os)
Микроконтроллерыимеют несколько контактов ввода-вывода общего назначения (GPIO), которые можно настроить как входной или выходной контакт путем записи в определенные регистры конфигурации. Эти выводы могут считывать или записывать ВЫСОКОЕ или НИЗКОЕ состояние с / на свои выводы, что позволяет взаимодействовать с внешним миром.
Часы
Микроконтроллеру требуются часы, поскольку он выполняется и управляется последовательной логикой, как объяснено выше.Источник синхронизации может быть внешним, например кварцевым генератором, или внутренним, например, RC-генератором. У разных микроконтроллеров будут разные варианты тактирования. Некоторые продвинутые микроконтроллеры даже имеют внутреннюю ФАПЧ (фазовую автоподстройку частоты) или FLL (частотную автоподстройку частоты) для умножения тактовой частоты на более высокие частоты.
Периферийные устройства
Микроконтроллерытакже будут иметь другие периферийные устройства, как показано ниже.
- UART, SPI, I2C для последовательной связи.
- Таймеры / счетчики
- Модули захвата / сравнения / ШИМ
- Аналого-цифровой преобразователь
Микроконтроллер можно запрограммировать для выполнения определенной задачи на основе набора команд и возможностей.Иногда решения очень сложные, схемы также становятся очень сложными, если мы пытаемся решить их только с помощью оборудования.
Представьте, что вы хотите построить большое здание, использование КИРПИЧА сделает процесс строительства простым и экономичным. И это также даст вам свободу сделать здание по форме и размеру, которые вам нравятся. Набор инструкций в микроконтроллере – это кирпичики, которые вы можете использовать для решения вашей проблемы. Используя эти инструкции, вы можете легко решить сложную программу.
Просто приостановите чтение и осмотритесь в своем доме.Вы можете видеть телевизор, пульт для телевизора, телеприставку, микроволновую печь на кухне, стиральную машину, кондиционер, машину, припаркованную на крыльце и т. Д., Все использует микроконтроллер.
На рынке доступны различные микроконтроллеры, произведенные разными компаниями.
8051 Микроконтроллеры
Серия микроконтроллеров8051 – одна из самых популярных микроконтроллеров общего назначения. Впервые он изготовлен Intel. В настоящее время мы можем видеть множество клонов микроконтроллеров 8051 с разницей в ОЗУ, ПЗУ, периферийных устройствах и т. Д., производимые различными компаниями, такими как Atmel, Texas Instruments, Philips, Infineon и др. Микроконтроллеры серии 8051 популярны среди любителей и в образовательных целях.
Микроконтроллеры PIC
PIC расшифровывается как Peripheral Interface Controller. Это серия микроконтроллеров, производимых Microchip Inc., она популярна среди профессионалов, студентов и любителей электроники. Он недорогой и широко доступен на рынке, а также имеет 8-битную, 16-битную и 32-битную архитектуры.
ARM Микроконтроллеры
ARM расшифровывается как Advanced RISC Machine, это микроконтроллер компьютера с сокращенным набором команд (RISC). Микроконтроллеры ARM пользуются наибольшей популярностью у профессионалов. Микроконтроллеры ARM производятся разными компаниями, такими как NXP Semiconductors, STMicroelectronics, Microchip Inc., Atmel и др.
Микроконтроллеры AVR
Микроконтроллеры AVRшироко распространены среди любителей и студентов. Микроконтроллеры AVR разработаны Atmel, позже приобретены Microchip.В популярных платах Arduino используется микроконтроллер AVR.
Малый размер
В отличие от компьютерного микропроцессора, микроконтроллер предназначен для решения некоторых специфических задач. Таким образом, аппаратные требования, такие как ОЗУ, ПЗУ и другие периферийные устройства, очень низкие. Таким образом, все встроено в один чип, что значительно снижает общий размер.
Низкая стоимость
Микроконтроллерыочень дешевы по сравнению с микропроцессорами, поскольку микроконтроллер имеет меньше ОЗУ, ПЗУ и периферийных устройств, встроенных в один чип.
Меньше энергопотребление
Потребляемая мощность намного меньше, поскольку микроконтроллер использует меньший набор оборудования, такого как RAM, ROM, другие периферийные устройства, встроенные в один чип.