На микроконтроллере » Автосхемы, схемы для авто, своими руками
Бывает идешь мимо припаркованных машин, и замечаешь краем глаза, что кто то уже давно, судя по тусклому свечению ламп, забыл свет выключить. Кто то и сам так попадал. Хорошо когда есть штатный сигнализатор не выключенного света, а когда нету поможет вот такая поделка: Незабывайка умеет пищать, когда не выключен свет и умеет пропикивать втыкание задней передачи.
Схема цифрового индикатора уровня топлива обладает высокой степенью повторяемости, даже если опыт работы с микроконтроллерами незначителен, поэтому разобраться в тонкостях процесса сборки и настройки не вызывает проблем. Программатор Громова – это простейший программатор, который необходим для программирования 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 для начинающих – 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 | 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
Автор: Романов А.С (г. Чебоксары)
Интересные устройства на микроконтроллерах.
Схемы и устройства на микроконтроллерахЭта декоративная звезда состоит из 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 МГц.
Это, вероятно, самый простой частотомер на микроконтроллере AVR. Он позволяет измерять частоты до 10 МГц в 4-х автоматически выбранных диапазонах. Самый низкий диапазон имеет разрешение 1 Гц. Для отображения измеренной частоты используется 4-разрядный светодиодный дисплей. Прибор построен на основе микроконтроллера Atmel AVR ATtiny2313A или ATtiny2313 . Настройку битов конфигурации вы можете найти ниже.
Микроконтроллер тактируется от кварцевого резонатора частотой 20 МГц (максимально допустимая тактовая частота). Точность измерения определяется точностью этого кристалла. Минимальная длина полупериода измеряемого сигнала должна быть больше периода частоты кварцевого генератора (ограничение архитектуры MCU). Таким образом, при 50% рабочем цикле можно измерять частоты до 10 МГц.
Вариант 1: ATmega8 + Nokia 5110 LCD + питание 3V
В схеме используются Atmega8-8PU (внешний кварц частотой 8MHz), Nokia 5110 LCD и транзистор для обработки импульсов от геркона. Регулятор напряжения на 3,3V обеспечивает питание для всей цепи.
Все компоненты были смонтированы на макетной плате, включая разъемы для: ISP — программатора (USBAsp), 5110 Nokia LCD, питания (5V, подаваемого на 3.3V — регулятор), геркона, кнопки сброса и 2-контактный разъем, используемый для считывания полярности обмотки двигателя привода станка, чтобы знать, увеличивать или уменьшать счетчик.
Дозатор предназначен для автоматической подачи в аквариум жидких удобрений. Подача удобрений может осуществляться по четырем независимым каналам. Каждый канал может осуществлять подачу удобрений один раз в сутки с выбором любых дней недели. Объем подаваемых удобрений настраивается для каждого канала в отдельности.
Исполнительным устройством дозатора являются насосы-помпы вибрационного типа линейки ULKA. В связи с возможностью использования разных моделей данных насосов в устройстве предусмотрена калибровка производительности каждого канала и регулировка подводимой мощности методом ШИМ. В моем устройстве применены насосы широко распространенной модели ULKA EX5 230V 48W .
В данном радиоприемнике используется готовый модуль на чипе TEA5767 . Информация отображается на красивом OLED-дисплеем (SSD1306 ), разрешением 128×64 пикселя. Модулем приемника и дисплеем управляет микроконтроллер ATmega8 , тактируется от внутреннего генератора частотой 8MHz. Печатная плата приемника (наряду с батареей от телефона Samsung L760) была спроектирована так, чтобы она могла вписаться в спичечную коробку. Имеются 4 клавиши управления + клавиша сброса. В настоящее время радио не имеет аудиоусилителя (планируется установка соответствующего усилительного модуля).
Схемы на микроконтроллере, статьи и описания с прошивками и фотографиями для автомобиля.
Простой тахометр на микроконтроллере ATmega8
Тахометр применяется в автомобилях для измерения частоты вращения всяких деталей которые способны вращаться. Есть много вариантов таких устройств, я предложу вариант на AVR микроконтроллере ATmega8. Для моего варианта, вам также…
Читать полностьюЦветомузыка на микроконтроллере Attiny45 в авто
Эта цветомузыка, имея малый размер и питание 12В, как вариант может использоваться в авто при каких-либо мероприятиях. Первоисточник этой схемы Радио №5, 2013г А. ЛАПТЕВ, г. Зыряновск, Казахстан. Схема…
Читать полностьюКонтроллер обогрева зеркал и заднего стекла
Позволяет управлять одной кнопкой раздельно обогревом заднего стекла и зеркал, плюс настраиваемый таймер отключения до полутора часов для каждого канала. Схема построена на микроконтроллере ATtiny13A. Описание работы:
Читать полностьюДиммер для плафона автомобиля
Почти во всех автомобилях есть управление салонным светом, которое осуществляется с помощью бортового компьютера или отдельной бортовой системой. Свет включается плавно, и гаснет также с некой задержкой (для…
Читать полностьюGSM сигнализация с оповещением на мобильник
Представляю очень популярную схему автомобильной сигнализации на базе микроконтроллера ATmega8. Такая сигнализация дает оповещение на мобильник админа в виде звонков или смс. Устройства интегрируется с мобильником с помощью…
Читать полностьюМоргающий стопак на микроконтроллере
Сделал новую версию моргающего стопака. Отличается алгоритм работы и схема управления, размер и подключение такое же. Возможно регулировать частоту моргания, длительность до перехода в постоянное свечение и скважность…
Читать полностьюДХО плюс стробоскопы
Эта поделка позволяет стробоскопить светодиодными ДХО. Поделка имеет малый размер, управление всего одной кнопкой, широкие возможности настройки. Размер платы 30 на 19 миллиметров. С обратной стороны расположен клемник…
Читать полностьюДелаем и подключаем доводчик к сигнализации
Количества автомобилей с автоматическим стеклоподъемниками постоянно растет, и даже если в машине нет такого, многие делают его своими руками. Моей целю было собрать такое устройства и подключить его к…
Читать полностьюСветодиоды включаются от скорости
Получился «побочный продукт»: нужно было оттестить режим работы датчика скорости для проекта отображения передач на матрице 5х7, для этого собрал небольшую схемку. Схемка умеет включать светодиоды в зависимости…
Читать полностьюЦифровой тахометр на AVR микроконтроллере (ATtiny2313)
Тахометр измеряет частоту вращения деталей, механизмов и других агрегатах автомобиля. Тахометр состоит из 2-х основных частей — из датчика, который измеряет скорость вращения и из дисплея, где будет…
Читать полностьюПростой цифровой спидометр на микроконтроллере ATmega8
Спидометр это измерительное устройства, для определения скорости автомобиля. По способу измерения, есть несколько видов спидометра центробежные, хронометрические, вибрационные, индукционные, электромагнитные, электронные и напоследок спидометры по системе GPS.
Читать полностьюПлавный розжиг приборки на микроконтроллере
Эта версия немного отличается схемой: добавлена вторая кнопка настройки и убран потенциометр скорости розжига. Возможности: Два отдельных независимых канала. Для каждого канала три группы настраиваемых параметра: время задержки до начала…
Принцип закрывания дверцы клетки весьма прост. Дверка клетки подпирается специальным упором, сделанным из медной проволоки. К упору крепится капроновая нить нужной длины. Если потянуть за нить, то упор соскальзывает, и дверка клетки под собственным весом закрывается. Но это в ручном режиме, а я хотел реализовать автоматический процесс без участия кого-либо.
Для управления механизмом закрывания дверцы клетки был применен сервопривод. Но в процессе работы он создавал шум. Шум мог спугнуть птицу. Поэтому сервопривод я заменил на коллекторный двигатель, взятый из радиоуправляемой машинки. Он работал тихо и идеально подходил, тем более что управлять коллекторным двигателем не составляло сложностей.
Для определения, находится ли уже птица в клетке, я использовал недорогой датчик движения. Сам датчик движения уже является законченным девайсом, и паять ничего не нужно. Но у данного датчика угол срабатывания весьма большой, а мне нужно, чтобы он реагировал только во внутренней области клетки. Для ограничения угла срабатывания я поместил датчик в цоколь, когда-то служившей эконом-лампы. Из картона вырезал своего рода заглушку с отверстием посередине для датчика. Пошаманив с расстоянием данной заглушки относительно датчика, настроил оптимальный угол для срабатывания датчика.
В качестве зазывалы для птиц я решил применить звуковой модуль WTV020M01 с записанным на микроSD карте памяти пением чижа и щегла. Именно их я и собирался ловить. Поскольку я использовал один звуковой файл, то и управлять звуковым модулем я решил простим способом, без использования протокола обмена между звуковым модулем и микроконтроллером.
При подаче на девятую ножку звукового модуля низкого сигнала, модуль начинал воспроизводить. Как только звук воспроизводился на пятнадцатой ноге звукового модуля, устанавливается низкий уровень. Благодаря этому микроконтроллер отслеживал воспроизведение звука.
Поскольку я реализовал паузу между циклами воспроизведения звука, то для остановки воспроизведения звука программа подает низкий уровень на первую ножку звукового модуля (reset). Звуковой модуль является законченным устройством со своим усилителем для звука, и, по большому счету, в дополнительном усилителе звука он не нуждается. Но мне данного усиления звука показалось мало, и в качестве усилителя звука я применил микросхему TDA2822M. В режиме воспроизведения звука потребляет 120 миллиампер. Учитывая, что поимка птицы займет какое-то время, в качестве автономной батареи питания я применил не совсем новый аккумулятор от бесперебойника (всё равно валялся без дела).
Принцип электронного птицелова прост, и схема состоит в основном из готовых модулей.
Программа и схема —
Бывает идешь мимо припаркованных машин, и замечаешь краем глаза, что кто то уже давно, судя по тусклому свечению ламп, забыл свет выключить. Кто то и сам так попадал. Хорошо когда есть штатный сигнализатор не выключенного света, а когда нету поможет вот такая поделка: Незабывайка умеет пищать, когда не выключен свет и умеет пропикивать втыкание задней передачи.
Схема цифрового индикатора уровня топлива обладает высокой степенью повторяемости, даже если опыт работы с микроконтроллерами незначителен, поэтому разобраться в тонкостях процесса сборки и настройки не вызывает проблем. Программатор Громова – это простейший программатор, который необходим для программирования 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, ни прогромматором Громова. Компьютер просто не видит контроллер и все.
В связи с нововведениями в ПДД, народ стал думать о реализации дневных ходовых огней. Один из возможных путей это включение ламп дальнего света на часть мощности, об этом и есть данная статья.
Это устройство позволит ближнему свету автоматически включиться при начале движения и регулирует напряжение на лампах, ближнего света, в зависимости от скорости с которой вы едите. Так же, это послужит более безопасному движению и продлит срок службы ламп.
В данной статье предлагается схема цифрового термометра на микроконтроллере AVR ATtiny2313, датчике температуры DS1820 (или DS18b20), подключенному к микроконтроллеру по протоколу 1-wire, и ЖК-дисплее 16×2 на контроллере HD44780. Описываемое устройство может найти широкое применение среди радиолюбителей.
Программа для микроконтроллера написана на ассемблере в среде AVR Studio. Монтаж выполнен на макетной плате, кварцевый резонатор на 4МГц, микроконтроллер ATtiny2313 можно заменить на AT90S2313, предварительно перекомпилировав исходный код программы. Погрешность датчика DS1820 около 0,5 С. В архиве также находится прошивка для случая если используется датчик DS18B20. Опрос датчика производится каждую секунду.
WAV-плеер собран на микроконтроллере AVR ATtiny85 (можно использовать ATtiny25/45/85 серии). У микроконтроллеров этой серии всего восемь ножек и два ШИМ (Fast PWM) с несущей 250kHz. Для управления картой памяти достаточно всего 6 проводов: два для питания и четыре сигнальные. Восемь ножек микроконтроллера вполне достаточно для работой с картой памяти, вывода звука и кнопки управления. В любом случае данный плеер очень прост.
С помощью данного измерителя ёмкости можно легко измерить любую ёмкость от единиц пФ до сотен мкФ. Существует несколько методов измерения емкости. В данном проекте используется интеграционный метод.
Главное преимущество использования этого метода в том, что измерение основано на измерении времени, что может быть выполнено на МК довольно точно. Этот метод очень подходит для самодельного измерителя ёмкости, к тому же он легко реализуем на микроконтроллере.
Данный проект был сделан по просьбе друга для установки на дверь в складское помещение. В дальнейшем было изготовлено ещё несколько по просьбе друзей и знакомых. Конструкция оказалась простой и надёжной. Работает данное устройство так: пропускает только те RFID-карты, которые были заранее занесены в память устройства.
Схема частотомера на микроконтроллере » Паятель.Ру
Частотомер предназначен для измерения частоты электрических колебаний от 1 Hz до 50 MHz. Он выполнен на относительно доступных деталях — недорогом микроконтроллере PTC16F84 и однорядном ЖК дисплее HD44870. Из органов управления, — только выключатель питания. Питается прибор от гальванической батареи напряжением 9V (Крона) или от другого источника постоянного тока напряжением 7-12V.
Входной сигнал поступает через коаксиальный разъем Х1 (используется разъем типа «Азия» от видеотехники). Входная цепь состоит из частото-зависимого делителя R1-R2-C4 и диодов VD1- VD2. ограничивающих уровень входного сигнала. Далее сигнал поступает на усилитель-ограничитель на транзисторах VT1 и VT2.
Полевой транзистор на входе (VT1) создает большое входное со противление. Чувствительность усилителя 200mV. Рабочий режим по постоянному току выставляют подстроечным резистором R4 так, чтобы напряжение на коллекторе VT2 было около 5V. Входной коммутационный узел, формирующий импульсы и управляющий их прохождением на порт RA4 микроконтроллера выполнен на КМОП микросхеме высокого быстродействия 74НС132, содержащей четыре элемента 2И-НЕ с эффектами триггера Шмитта.
Благодаря быстродействию микросхемы она может работать на частота до 50 MHz На месте D1 можно установить старенькую К155ЛАЗ (К555ЛА3), но прибор будет работать хуже, и потреблять значительно больший ток от источника питания.
Собственно частотомер выполнен на микроконтроллере D2. Как вход работает только порт RA4. Порты RA2 и RA3 управляют входным устройством на D1. а все остальные порты служат для вывода данных на ЖК-панель Н1.
Контрастность отображения на ЖК-панели устанавливается подстроенным резистором R8. Питание поступает на выводы 1 и 2.
Микроконтроллер работает с кварцевым резонатором на 4 MHz.
Большинство деталей прибора расположено на печатной плате с односторонними печатными дорожками. В тексте приведены схемы разводки печатных дорожек (без учета ширины дорожек) и монтажа деталей На плате есть четыре перемычки.
Жидкокристалпическая панель соединена с платой 14-проводным ленточным кабелем Источник питания, выключатель и входной разъем тоже расположены за пределами платы.
Перед монтажом микроконтроллер нужно запрограммировать программой НЕХ-файл которой приводится далее.
HEX-файл
ВОЛЬТМЕТР НА МИКРОКОНТРОЛЛЕРЕ
Сейчас всё большую популярность получают измерительные приборы на основе микроконтроллеров со встроенным АЦП, тем более что доступность и возможности таких МК постоянно растут, схемотехника упрощается, а их сборка становиться под силу даже начинающим радиолюбителям. В качестве устройств отображения информации в цифровых измерительных приборах часто используются LCD модули с собственным контроллером. Такому решению присущи недостатки: необходимость дополнительной подсветки с большим током потребления, ограниченный выбор отображаемых символов, высокая стоимость. Поэтому проще и удобнее задействовать семисегментные трёхзнаковые LED индикаторы.
Электросхема вольтметра
Схема принципиальная вольтметра на МК
Схема принципиальная вольтметра на PIC16F676 — второй вариант
ПП вольтметра на PIC16F676
Это простой вольтметр до 30 вольт на основе PIC16F676 микроконтроллера с 10-разрядный АЦП и трех 7-ми сегментных светодиодных индикаторов. Вы можете использовать эту схему для того, чтобы измерить до 30 В постоянного тока. PIC16F676 — это основа этой схемы. Внутренний АЦП микроконтроллера с резисторами делителя напряжения используют для измерения входного напряжения. Затем 3 цифры comm анод 7-сегментный дисплей используется для отображения финальной преобразованное напряжение. Для уменьшения токопотребления в схеме задействована динамическая индикация. Скачать прошивки на различные индикаторы можно здесь.
Работа прибора
На резисторах R1 и R2 собран делитель напряжения, многооборотный построечный резистор R3 служит для калибровки вольтметра. Конденсатор C1 защищает вольтметр от импульсной помехи и сглаживает входной сигнал. Стабилитрон VD1 служит для ограничения входного напряжения на входе микроконтроллера, что бы вход контроллера не сгорел при превышении напряжения по входу.
Расчеты показаний
10-ти битная АЦП позволяет получить максимальное количество 1023. Значит с 5 вольт мы получаем 5/1023 = 0.0048878 В/Д, значит, если значение 188, то входное напряжение: 188 х 0.0048878 = 0.918 вольт. С делителем напряжения максимальное напряжение 30 В, поэтому все расчеты будут 30/1023 = 0.02932 вольт/деление. Так что если сейчас мы получаем 188, то 188 х 0.02932 = 5.5 Вольта. Ещё более упростить и удешевить схему можно заменив АЛС индикаторы на простую линейку светодиодов.
Originally posted 2018-11-10 12:19:11. Republished by Blog Post Promoter
Схема электронного секундомера на микроконтроллере AT89C4051
Большинство лабораторий и учебных заведений нуждаются в точных секундомерах для измерения времени. Этот простой проект фокусируется на построении секундомера с точностью до 0,01 секунды. Секундомер можно использовать для спортивных событий, подключив датчик через разъем CON2.
Тестер транзисторов / ESR-метр / генератор
Многофункциональный прибор для проверки транзисторов, диодов, тиристоров…
Схема и работа электронного секундомера
Принципиальная схема прецизионного секундомера показана ниже. Она построена на стабилизаторе напряжения 7805 (IC1), микроконтроллере AT89C4051 (IC2), 4-разрядном 7-сегментном дисплее с общим анодом (DIS1) и нескольких дополнительных компонентах.
Схема питается от сети 220В с помощью понижающего трансформатора X1 (на схеме не показан). С выход X1 (7,5В-0-7,5В) переменное напряжение выпрямляется диодами D1 и D2 и сглаживается конденсаторами C1 и C4.
После стабилизатора 7805 напряжение 5В запитывает оставшуюся часть схемы, в том числе и микроконтроллера.
Микроконтроллер (IC2) работает на частоте 12МГц. Это достигается за счет подключения кварца 12МГц к выводам XTAL1 и XTAL2 IC2.
Конденсатор C5 и резистор R8 составляют часть схемы сброса для IC2 при включении. Кнопка S2 используется для ручного сброса IC2 и сброса счетчика на ноль. Кнопка S3 используется для запуска и остановки секундомера. 4-разрядный 7-сегментный дисплей работает в режиме мультиплексированния.
Когда переключатель S1 замкнут, дисплей DIS1 указывает 00.00. При нажатии кнопки S3, на DIS1 отображается отсчет до момента отпускания S3. Максимальный отсчет времени составляет 99,99 секунд.
Программное обеспечение написано на языке C и скомпилировано с использованием программного обеспечения Keil μVision V5. Задержка на языке C зависит от компилятора. Иногда может потребоваться небольшая коррекция в цикле задержки для точной калибровки.
Hex файл, созданный программным обеспечением Keil, записывается в микроконтроллер с использованием подходящего программатора.
Конструкция и тестирование
Рисунок печатной платы с односторонним расположением компонентов приведен ниже.
После пайки всех компонентов, запрограммируйте микроконтроллер AT89C4051 и поместите его на печатную плату с использованием панельки. Подайте питание с помощью S1. Убедитесь, что на индикаторе отображается 00.00. Если этого нет, то проверьте схему на предмет ошибок.
Когда вы нажимаете S3, дисплей начинает отсчет, отпускаете S3 — отсчет останавливается. Если снова нажать S3, отсчет Если в любой момент нажать S2, то произойдет сброс показаний в ноль.
Для настройки сравните показания с откалиброванным секундомером. Если в показаниях есть несоответствие, отрегулируйте цикл задержки в коде до достижения точного показания.
Скачать прошивку секундомера (33,5 KiB, скачано: 317)
EFY 05/2017
Блок питания 0…30 В / 3A
Набор для сборки регулируемого блока питания…
Схема. Таймер-терморегулятор на микроконтроллере — Сайт радиолюбителей и радиомастеров. Схемы и сервис мануалы.
При разработке устройства ставились задачи минимизации электрической схемы, упрощения процесса управления и расширения функциональных возможностей. Они были решены за счёт применения микроконтроллера и специализированного датчика температуры.
Технические характеристики в режиме терморегулятора
Интервал регулируемой температуры, °С ………………………………….от -55 до +125
Разрешающая способность при измерении и регулировании, °С:
в интервале температуры -9,9…-99,9 °С …………………………………..0,1
в интервале температуры -55…-10 °С и +100…+125 °С ……………….1
Погрешность измерения, °С, не более:
в интервале температуры -10…+85 °С ……………………………………..±1
в интервале температуры -55…-10 °С и +85…+125 °С …………………±2
Интервал установки гистерезиса, °С ………………………………………..± 0…50
Верхняя граница установки интервала регулирования, °С …………….-55…+125
Нижняя граница установки интервала регулирования, °С …………….-55…+125
Интервал корректировки показаний термометра, °С……………………..±2
Терморегулятор работает как в режиме нагрева, так и охлаждения. Дополнительно можно установить продолжительность поддержания температуры в интервале 1—999 мин или остановку работы терморегулятора на тот же промежуток времени. В процессе работы подсчитывается суммарная продолжительность подключения нагрузки к сети. Устройство предназначено для работы совместно с датчиком температуры DS18B20 и автоматически определяет его ID-код.
Технические характеристики в режиме таймера
Интервалы установки времени
секунд……………..1…999
минут………….1…999
часов ………………1…999
Направления отсчёта времени …………………..прямое или обратное
Таймер обеспечивает задержку как включения, так и отключения нагрузки.
Схема таймера-терморегулятора показана на рис. 1. Все основные функции возложены на микроконтроллер DD1, управление режимами и ввод данных осуществляют с помощью кнопок SB1—SB3, а информация выводится на трёхразрядный светодиодный индикатор HG1. Питание осуществляется от сети, которую подключают к зажимам 1 и 2 колодки ХТ1. На трансформаторе Т1, диодном мосте VD1, стабилизаторе DA1 и сглаживающих конденсаторах С2 и С4 собран узел питания. Резистор R1 повышает надёжность работы устройства при повышенном сетевом напряжении. Но при желании его можно исключить, установив на плате взамен него проволочную перемычку.
Включение или отключение питания нагрузки осуществляется с помощью реле К1, контакты которого К1.1 нормально разомкнуты и подсоединены к зажимам 3 и 4 колодки ХТ1. Датчик температуры DS18B20 подключают к зажимам 5 и 6. Применена двухпроводная схема подключения датчика: к зажиму 6 присоединён вывод 2, к зажиму 5 — выводы 1 и 3. Для вывода информации на индикатор HG1 использована динамическая индикация с периодом обновления символов около 20 мс.
Управление работой и установку параметров осуществляют с помощью трёх кнопок SB1 «◄» (уменьшение), SB2 «►» (увеличение) и SB3 «∟» (ввод). В зависимости от предварительной установки устройство может выполнять функции универсального терморегулятора или быть в роли таймера. Для выбора функционального назначения необходимо нажать на кнопку SB3 и, удерживая её, подать напряжение питания. На индикаторе HG1 появится номер текущей установки (рис. 2). Кнопками SB1 и SB2 устанавливают режим работы: 1 — универсальный терморегулятор (задан по умолчанию), 2 — таймер. Для подтверждения следует нажать на кнопку SB3. Изменения вступят в силу после следующего включения.
При работе устройства в качестве терморегулятора датчик температуры располагают в месте, где необходимо поддерживать заданную температуру. После подключения прибора к сети на индикаторе «пробегает» тестовая надпись HELLO — терморегулятор готов к работе. В рабочем режиме на индикаторе HG1 постоянно отображается текущее значение температуры. О том, что нагрузка в данный момент включена, свидетельствует мигающая точка в младшем разряде.
Установку температуры производят кнопками SB1 и SB2, по умолчанию она составляет 30 °С. В момент нажатия на любую из этих кнопок на индикаторе HG1 появляется мигающее значение устанавливаемой температуры, а по истечении 5 с после последнего нажатия терморегулятор возвращается в рабочий режим. Все введённые данные сохраняются в энергонезависимой памяти микроконтроллера. При нажатии и удержании кнопок SB1 и SB2 выбранный параметр изменяется быстрее. В зависимости от продолжительности нажатия последовательно переключаются три его скорости изменения.
Для установки других настроек терморегулятора необходимо войти в меню. Для этого следует нажать на кнопку SB3. Изменение настроек производят в соответствии с рис. 3. Через 5 с после последнего нажатия любой кнопки устройство переходит в рабочий режим, а все настройки сохраняются в энергонезависимой памяти. Ниже приведено описание доступных параметров.
ГГР — гистерезис. Параметр, в котором задаётся разность температур включения и отключения нагрузки. Установленное число суммируется с заданной установкой температуры для включения и вычитается для выключения. Если, например, задана температура 30,0 °С, а ГГР — 4,5, то в режиме нагревания отключение нагрузки произойдёт при температуре 30,0 + 4,5 = 34,5 °С, а включение — при 30,0 — 4,5 = 25,5 °С. Если терморегулятор работает в режиме охлаждения, отключение произойдёт при температуре 25,5 °С, а включение — при 34,5 °С. Если установить ГГР равным 0, на индикаторе отобразится надпись ГР и прибор будет работать как обычный термометр, на индикаторе отобразится текущая температура, а нагрузка будет всё время отключена. По умолчанию установлено значение ГГР, равное 3,0.
ВПР — верхний предел температуры. Этот параметр определяет максимально возможное значение устанавливаемой температуры. В случае превышения этого предела, независимо от других установок, нагрузка будет отключена. По умолчанию в ВПР задано значение 80,0.
НПР — нижний предел температуры. Этот параметр определяет минимально возможное значение устанавливаемой температуры. В случае снижения температуры ниже НПР, независимо от других настроек, нагрузка также будет отключена. Значение НПР всегда меньше или равно ВПР. По умолчанию в НПР задано значение 10,0.
ВРВ — продолжительность времени включения (в минутах). Этот параметр задаёт временной интервал, в течение которого поддерживается заданная температура. По его окончании нагрузка будет отключена. Признак истечения установленного временного интервала — постоянно светящаяся точка в младшем разряде индикатора. Повторный запуск таймера производят нажатием на кнопку SB3. Если ВРВ установлено равным 0, на индикатор выводится изображение «—«, а таймер в работе терморегулятора не участвует. По умолчанию таймер отключён.
ВРО — продолжительность времени отключения. Параметр задаёт временной интервал (в минутах), в течение которого устройство находится в выключенном состоянии, предназначен для использования совместно с параметром ВРВ. По окончании установленного интервала времени устройство возвращается к функции поддержания температуры. Если, например, установить значение ВРВ 90, а ВРО 60, терморегулятор будет циклически поддерживать температуру в течение 90 мин, а затем отключаться на 60 мин и снова включаться на 90 мин и т. д. Если ВРО равно 0, на индикаторе выводится изображение «—«, а таймер в работе терморегулятора не участвует. По умолчанию ВРО имеет нулевое значение (таймер отключён).
ПАР — параметры работы. Значение ПАР определяет режим работы терморегулятора: нагревание или охлаждение. При работе совместно с нагревателем в ПАР необходимо установить НА, при работе совместно с охладителем — ОС. По умолчанию в ПАР задано значение НА (работа с нагревателем).
ПОП — поправка показаний. Этот параметр позволяет проводить корректировку показаний термометра и в случае необходимости добиться (по образцовому термометру) погрешности измерения менее 0,1 °С. Значение ПОП добавляется к текущим показаниям температуры. Обычно в корректировке показаний нет необходимости, поскольку датчик температуры DS18B20 имеет заводскую калибровку и очень высокую точность измерения. По умолчанию ПОП имеет значение 0,0 (корректировка отсутствует).
РАБ — время работы нагревателя (или охладителя). В этом режиме выводится время (в часах), в течение которого нагрузка была включена. Это позволяет оценить расход электроэнергии. Например, если месячные показания РАБ равны 250, а мощность нагревательного элемента — 0,5 кВт, расход электроэнергии составляет 125кВт·ч.
НОГ — идентификационный номер (ID-код) датчика температуры. Выводится 64-разрядный идентификационный номер датчика DS18B20, представленный в шестнадцатеричном формате. Например, 28А2С86801000017. (последняя цифра отмечена десятичной точкой). Просмотр номера производится нажатием на кнопки SB1, SB2 и может понадобиться для определения, какой из датчиков подключён. Если связь с датчиком нарушена или по каким-либо причинам код считать не удалось, на индикатор будет выведено сообщение Err (ошибка).
Устройство автоматически определяет наличие и исправность датчика температуры. При обрыве цепи или отсутствии датчика на индикаторе появится надпись HI, а при коротком замыкании или неправильном подключении — Lo. При любой неисправности нагрузка автоматически отключается. Провод, соединяющий датчик с устройством, должен иметь сечение не менее 0,5 мм2, а длину — не более 10 м. Информация считывается с датчика температуры с периодом 1 с и сравнивается с предыдущим значением. Если скорость роста температуры превышает 30 °С/с или скорость падения температуры превышает 20 °С/с, ситуация интерпретируется как аварийная и нагрузка отключается.
Для просмотра и изменения установок при работе в режиме таймера необходимо войти в меню. Для этого следует нажать на кнопку SB3. Установку проводят в соответствии с рис. 4 Через 5 с после последнего нажатия на любую кнопку устройство переходит в рабочий режим, а все настройки сохраняются в энергонезависимой памяти. После входа в меню появляется текущая установка таймера (индикатор мигает). Кнопками SB1 и SB2 устанавливают временной интервал в пределах 000…999 (по умолчанию задано 100). Если установить 000, таймер блокируется, а в рабочем режиме на индикаторе будет сообщение «—«.
После установки цифрового значения нажимают на кнопку SB3, и затем можно задать единицы измерения времени. Это могут быть секунды SEC (по умолчанию), минуты Ml или часы HOU.
Далее устанавливают режим работы таймера. При выборе ОН, по истечении установленного временного интервала, нагрузка будет подключена, выбор OFF означает, что нагрузка будет отключена. Выбор направления счёта таймера — обратный при выборе ОБС (задан по умолчанию) и прямой при выборе — ПРС. Во время работы таймера на индикаторе отображается время. Запуск таймера осуществляют нажатием на кнопку SB2. Если задан прямой счёт, показания изменяются от нуля до максимального значения, например, 0, 1, 2… и т. д., а если обратный — от максимального значения до нуля, например, 100, 99, 98… и т. д.
Остановку таймера производят кнопкой SB1. При повторном нажатии на неё он перейдёт в исходное состояние. Если выбрана установка на включение, по окончании установленного интервала нагрузка будет подключена и на индикаторе появится сообщение ОН, а если установка на выключение — OFF и нагрузка отключена. О текущем состоянии нагрузки можно судить по десятичной точке в младшем разряде индикатора. Она светит — нагрузка включена, погашена — отключена. В случае установки минут или часов точка каждую секунду кратковременно вспыхивает, если нагрузка отключена, и кратковременно гаснет, если включена.
Для повышения надёжности работы в устройстве применён ряд программных приёмов. В первую очередь, это касается работы с EEPROM микроконтроллера. Каждый параметр в энергонезависимой памяти продублирован в четырёх ячейках. Чтение и запись проводятся поблочно. После каждого чтения содержимое четырёх ячеек сравнивается между собой. Если в одной или двух из них оно отличается от остальных, единое значение всех ячеек блока восстанавливается по тем, в которых оно идентично.
Большинство деталей монтируют на двух печатных платах из фольгированного стеклотекстолита, чертежи которых показаны на рис. 5 и рис. 6. Применены постоянные резисторы для поверхностного монтажа РН1-12, остальные — МЛТ, С2-23. Оксидные конденсаторы — К50-35 или импортные, остальные — К10-17. Реле — JZC-22F3SC20DDC12V, кнопки — DTST-6. Трансформатор должен обеспечивать на выходе выпрямителя напряжение 12 В при токе до 150 мА ХТ1 — однорядный клеммник серии 305. Для программирования микроконтроллера предназначен файл modul_v2.hex.
Платы устанавливают в пластмассовый корпус рис. 7). Внешний вид собранного устройства показан на рис. 8. Резистор R2 был предназначен для защиты микроконтроллера в процессе отработки конструкции, но после изготовления нескольких экземпляров устройств он был исключён и взамен него на плате установлена проволочная перемычка.
В целях упрощения предусмотрена возможность исключения токоограничивающих резисторов R4—R11 в цепях управления сегментами индикатора HG1. В этом случае их заменяют отрезками провода, в микроконтроллер следует загрузить файл modul_v1.hex Чтобы исключить перегрузку по току индикатора и микроконтроллера, подача напряжения на каждый разряд индикатора осуществляется на 0,3 мс, поэтому работают они при номинальном среднем токе. Яркость свечения индикаторов с различным числом включённых элементов немного различается из-за неравномерного распределения тока и различного падения напряжения на выходных транзисторах портов микроконтроллера. Индикатор с общим катодом можно заменить на аналогичный, но с общим анодом. Для этого в начале программы modul_v1 .asm (modul_v2.asm) следует удалить строку tfdefine _COMMON_CATODE_ и заново откомпилировать программу.
При программировании устанавливают следующую конфигурацию микроконтроллера: BODLEVEL=1; BODEN = 0; SUT1 = 1; SUT0 = 1; CKSEL3 = 1; CKSEL2 = 1; CKSEL1 = 1; CKSEL0 = 1; RSTDISBL = 1; WDTON = 1; SPIEN = 0; СКОРТ = 0; EESAVE = 0; BOOTSZ1 = 1; BOOTSZ0 = 1; BOOTRST = 1.
Прилагаемые файлы: termotaimer.zip
И. КОТОВ, г. Красноармейск Донецкой обл., Украина
«Радио» №3 2012г.
Post Views: 3 075
Microcontroller Basics — Build Electronic Circuits
Мне нравилось изучать основы микроконтроллеров, когда я учился. Это означало, что я мог начать использовать микроконтроллеры в своих проектах в области электроники. Мне казалось, что с этим знанием меня невозможно остановить. Я мог построить ВСЕ!
И это действительно так. Микроконтроллеры — мощные компоненты. Они позволяют писать программы для управления вашей электроникой. Объедините эти знания с тем, как создавать собственные печатные платы, и вы получите потрясающие вещи.
Используя микроконтроллер в своем проекте, вы получите доступ к огромному количеству функций кончиками ваших (программирующих) пальцев.
Какой микроконтроллер использовать?
На рынке доступно множество типов микроконтроллеров. Некоторые из них проще в использовании, чем другие.
Доступны 8-битные, 16-битные и 32-битные микроконтроллеры. Самые простые микроконтроллеры — 8-битные. Они могут многое, но не справляются с операциями, требующими тяжелых вычислений.
Я не буду здесь перечислять их все. Но два семейства 8-битных микроконтроллеров, которыми легко пользоваться как любителям, так и новичкам, — это AVR и PIC. Они отлично подходят для изучения основ микроконтроллера.
AVR — это микроконтроллер, который я использовал чаще всего. Это действительно популярно среди любителей. PIC — это Microchip. Я не использовал PIC, но люди говорят, что это хорошо. Он также очень популярен среди любителей.
Существует несколько типов микроконтроллеров PIC и AVR.Что отличает их, так это объем памяти, количество контактов ввода-вывода и типы периферийных устройств, которые у них есть. Периферийные устройства выполняют такие функции, как широтно-импульсная модуляция, аналого-цифровое преобразование, последовательный периферийный интерфейс, I2C и т. Д.
Если вам нужен только простой микроконтроллер для управления включением / выключением контактов, вам не нужно беспокоиться обо всех периферийных устройствах. Просто найдите тот, у которого достаточно контактов ввода-вывода и который вам удобно программировать.
Например, посмотрите на ATtiny2313 простой и дешевый микроконтроллер для начала работы.
Основы микроконтроллеров: использование в проектах
Есть два варианта использования микроконтроллеров в проекте:
- Используйте плату микроконтроллера
- Интегрируйте микроконтроллер в вашу печатную плату
Самый простой способ начать работу — использовать плату микроконтроллера.
Но он будет дешевле, более компактным и менее беспорядочным, если вы интегрируете микроконтроллер в свою плату.
Использование плат микроконтроллера
Самая известная плата микроконтроллера — Arduino.Это программно-аппаратный комплекс, разработанный, чтобы упростить начало программирования микроконтроллеров. Узнайте о программировании Arduino.
Но можно найти и другие платы микроконтроллера. Обычно у них есть только микросхема микроконтроллера и необходимые компоненты для его работы. Это отличный способ протестировать микроконтроллер, которым вы раньше не пользовались.
Чтобы начать работу и изучить основы микроконтроллера, я определенно рекомендую приобрести плату Arduino.Это самый простой способ начать работу. По одному вместе с некоторыми базовыми компонентами и начинаем экспериментировать.
Щелкните здесь, чтобы получить стартовый комплект Arduino
Использование микросхем микроконтроллера
Микроконтроллер всегда имеет техническое описание, в котором описываются его функции. В техническом описании вы почти всегда найдете эталонную схему микроконтроллера.
Это позволяет легко установить и запустить плату микроконтроллера.
Я также написал учебное пособие, которое научит вас создавать собственную схему микроконтроллера с нуля. Ознакомьтесь с руководством по микроконтроллеру здесь.
(Не забудьте убедиться, что у вас есть способ программирования микроконтроллера. Это не всегда добавляется в справочную диаграмму)
Чтобы расширить основы микроконтроллера, изучите программирование микроконтроллера, чтобы узнать, как программировать микроконтроллер.
Возврат от основ микроконтроллера к схемам электроники
Как разработать схему микроконтроллера
Схема, необходимая для встроенного микроконтроллера, может показаться немного сложной.Только лист данных и технические ссылки могут занимать несколько сотен страниц для продвинутых микроконтроллеров.
Перед тем, как приступить к проектированию схемы, неплохо было бы нарисовать блок-схему, показывающую все основные части проекта, включая все периферийные устройства, которые будут взаимодействовать с микроконтроллером.
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 | M4 | 180 | 225 |
F7 | M7 | 216 | 462 |
H7 | M7 | 400 | 856 |
L0 | M0 | 32 | 26 |
L1 | M3 | 32 | 33 |
L4 | M4 | 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 to Develop and Sell Your New Electronic Hardware Product . Вы также будете получать мой еженедельный информационный бюллетень, в котором я делюсь премиальным контентом, недоступным в моем блоге.Другой контент, который может вам понравиться:
Основы микроконтроллеров — структура, приложения, плюсы и минусы
Что такое микроконтроллер?
PS: Этот пост является продолжением поста ВВЕДЕНИЕ В ПИК .
Микроконтроллер — это однокристальный микрокомпьютер, изготовленный на базе СБИС. Микроконтроллер также называют встроенным контроллером, потому что микроконтроллер и его вспомогательные схемы часто встроены или встроены в устройства, которыми они управляют. Доступны микроконтроллеры с разной длиной слова, такие как микропроцессоры (сегодня доступны 4-битные, 8-битные, 16-битные, 32-битные, 64-битные и 128-битные микроконтроллеры).
Микроконтроллер Чип1) Микроконтроллер в основном содержит один или несколько следующих компонентов:
- Центральный процессор (ЦП)
- Оперативная память) (RAM)
- Постоянное запоминающее устройство (ПЗУ)
- Порты ввода / вывода
- Таймеры и счетчики
- Управление прерываниями
- Аналого-цифровые преобразователи
- Цифровые аналоговые преобразователи
- Последовательные порты интерфейса
- Цепи колебательные
2) Внутренний микроконтроллер состоит из всех функций, необходимых для вычислительной системы, и функционирует как компьютер без добавления в него каких-либо внешних цифровых частей.
3) Большинство контактов микросхемы микроконтроллера могут быть сделаны программируемыми пользователем.
4) Микроконтроллер имеет множество инструкций обработки битов, которые могут быть легко поняты программистом.
5) Микроконтроллер может обрабатывать логические функции.
6) Более высокая скорость и производительность.
7) Встроенная в микроконтроллер структура ПЗУ обеспечивает лучшую защиту микропрограмм.
8) Простота проектирования при низкой стоимости и небольшом размере.
Структура микроконтроллераБазовая структура и структурная схема микроконтроллера показаны на рисунке (1.1).
Структура микроконтроллераИзображение взято из
CPU — это мозг микроконтроллера. ЦП отвечает за выборку инструкции, ее декодирование и, наконец, выполнение. ЦП объединяет каждую часть микроконтроллера в единую систему. Основная функция ЦП — выборка и декодирование инструкций. Команда, полученная из памяти программы, должна быть декодирована ЦП.
Функция памяти в микроконтроллере такая же, как и в микропроцессоре. Он используется для хранения данных и программ. Микроконтроллер обычно имеет определенный объем ОЗУ и ПЗУ (EEPROM, EPROM и т. Д.) Или флэш-памяти для хранения исходных кодов программ.
- Параллельные порты ввода / вывода
Параллельные порты ввода / вывода в основном используются для управления различными устройствами, такими как ЖК-дисплеи, светодиоды, принтеры, память и т. Д., С микроконтроллером.
Последовательные порты обеспечивают различные последовательные интерфейсы между микроконтроллером и другими периферийными устройствами, такими как параллельные порты.
Это одна из полезных функций микроконтроллера. Микроконтроллер может иметь более одного таймера и счетчиков. Таймеры и счетчики обеспечивают все функции отсчета времени и счета внутри микроконтроллера. Основными операциями этого раздела являются функции часов, модуляция, генерация импульсов, измерение частоты, создание колебаний и т. Д.Это также можно использовать для подсчета внешних импульсов.
- Аналого-цифровой преобразователь (АЦП)
Преобразователи АЦП используются для преобразования аналогового сигнала в цифровую форму. Входной сигнал в этом преобразователе должен быть в аналоговой форме (например, выход датчика), а выход этого устройства — в цифровой форме. Цифровой выход может использоваться для различных цифровых приложений (например, для измерительных устройств).
- Цифро-аналоговый преобразователь (ЦАП)
ЦАП выполняет операцию обратного преобразования АЦП.ЦАП преобразует цифровой сигнал в аналоговый формат. Обычно используется для управления аналоговыми устройствами, такими как двигатели постоянного тока, различные приводы и т. Д.
Управление прерыванием, используемое для обеспечения прерывания (задержки) для рабочей программы. Прерывание может быть внешним (активируется с помощью вывода прерывания) или внутренним (с помощью команды прерывания во время программирования).
- Блок специального функционирования
Некоторые микроконтроллеры используются только для некоторых специальных приложений (например,грамм. космические системы и робототехника) эти контроллеры, содержащие дополнительные порты для выполнения таких специальных операций. Это считается специальным функциональным блоком.
Сравнение микропроцессора и микроконтроллераОсновное сравнение микропроцессора и микроконтроллера, показанное на рис. (1.2)
Сравнение микропроцессора и микроконтроллераИсточник изображения
Микропроцессоры Микроконтроллеры | ||
1 | Это только универсальный компьютер с процессором | Сам микрокомпьютер |
2 | Память, порты ввода / вывода, таймеры, прерывания недоступны внутри микросхемы | Все интегрированы в микросхему микроконтроллера |
3 | Это должно иметь много дополнительных цифровых компонентов для выполнения своей работы | Может работать как микрокомпьютер без каких-либо дополнительных компонентов. |
4 | Системы становятся более громоздкими и дорогими. | Сделайте систему простой, экономичной и компактной |
5 | Не поддерживает логические функции | Обработка логических функций |
6 | Требуется больше времени для доступа | Низкое время доступа |
7 | Очень мало программируемых контактов | Большинство контактов программируются |
8 | Очень мало команд обработки битов | Множество инструкций по обработке битов |
9 | Широко используется в современных ПК и ноутбуках | широко используется в небольших системах управления |
E.грамм. | INTEL 8086, INTEL Pentium серии | INTEL8051,89960, PIC16F877 |
Приведены основные преимущества микроконтроллеров.
a) Микроконтроллеры действуют как микрокомпьютер без каких-либо цифровых компонентов.
b) Поскольку более высокая степень интеграции внутри микроконтроллера снижает стоимость и размер системы.
c) Использование микроконтроллера простое, легко устраняет и обслуживает систему.
d) Большинство контактов программируются пользователем для выполнения различных функций.
e) Простое сопряжение с дополнительной RAM, ROM, портами ввода / вывода.
е) Низкое время, необходимое для выполнения операций.
Недостатки микроконтроллерова) Микроконтроллеры имеют более сложную архитектуру, чем микропроцессоры.
б) Выполнять одновременно ограниченное количество выполнений.
c) В основном используется в микрооборудовании.
d) Невозможно напрямую связать устройства большой мощности.
ПриложенияВ наши дни микроконтроллеры можно встретить во всех видах электронных устройств. Любое устройство, которое измеряет, хранит, контролирует, вычисляет или отображает информацию, должно иметь внутри микроконтроллер. Наиболее широко микроконтроллеры используются в автомобильной промышленности (микроконтроллеры широко используются для управления двигателями и регуляторами мощности в автомобилях).Вы также можете найти микроконтроллеры внутри клавиатур, мышей, модемов, принтеров и других периферийных устройств. В испытательном оборудовании микроконтроллеры упрощают добавление таких функций, как возможность сохранять измерения, создавать и сохранять пользовательские процедуры, а также отображать сообщения и формы сигналов. Потребительские продукты, в которых используются микроконтроллеры, включают цифровые видеокамеры, оптические проигрыватели, ЖК / светодиодные дисплеи и т. Д. И это лишь несколько примеров.
Некоторые основные применения микроконтроллера приведены ниже.
а) Используется в биомедицинских инструментах.
б) Широко используется в системах связи.
c) Используется как периферийный контроллер в ПК.
г) Используется в робототехнике.
д) Используется в автомобильных областях.
статей Рекомендуем прочитать:
1. Базовый ПИК
2. ВВЕДЕНИЕ В PIC 167F877
3. PIC 16F877 — АРХИТЕКТУРА И ОРГАНИЗАЦИЯ ПАМЯТИ
4.РЕГИСТРАЦИЯ ОРГАНИЗАЦИИ ПАМЯТИ НА ПИК 16F877
Микроконтроллеры
— это здорово, но не отказывайтесь от традиционной электроники
Микроконтроллеры
великолепны, особенно те, что представлены сегодня на рынке. Они позволяют легко управлять устройствами и собирать данные от других с помощью простых программ и схем. Однако не каждому приложению он нужен, но часто они используются в проекте без надобности. Например, микросхемы часто используются для выполнения таких простых задач, как мигание светодиода.Хотя это может быть хорошо для микроконтроллера, но это излишне. Это синоним использования настольной пилы, чтобы отрезать кусок бумаги, когда стандартные ножницы отлично справятся с этой задачей.
Многие новички в изучении микроконтроллеров упускают из виду основы электроники и не понимают, что могут достичь той же цели, используя обычные методы. Используя обычную электронику, а не микро, вы можете использовать еще несколько резисторов и конденсаторов, но ваш проект, вероятно, в конечном итоге обойдется вам дешевле.Кроме того, вам не нужно будет писать программу, и вы узнаете немного больше об основах электроники.
Я покажу вам два примера схем, которые не используют микроконтроллер, но часто построены с ним. Я также кратко объясню некоторую логику и теорию этих схем. Надеюсь, вы сможете использовать их в том виде, в каком они есть, или, по крайней мере, они дадут вам идеи, на которые можно опираться. Эти примеры могут заменить микроконтроллер в простом проекте, но также могут быть полезны для снятия нагрузки с вашего микроконтроллера в большом проекте.
Много маленьких огней
В каждом проекте должно быть несколько — если не много — мигающих светодиодов. Мигание светодиода — это, вероятно, первое, что вы сделали, когда научились пользоваться микроконтроллером. К счастью, без него тоже легко обойтись. Давайте посмотрим, как поочередно мигать двумя светодиодами, используя всего несколько компонентов.
Вьетнамки и RC-схемы
Есть много разных способов сделать это, но один из самых простых — использовать так называемый триггер.Триггеры регулярно используются почти во всех цифровых интегральных схемах, включая микроконтроллеры. Триггер берет состояние выхода из одной логической схемы и подает его на вход другой. Затем этот выход подается на вход первой схемы. Таким образом, выход каждой логической схемы зависит от предыдущего состояния другой. Есть много разных типов шлепанцев. Поиск в Интернете легко найдет много информации о различных типах и о том, как они используются.
Помимо триггера, вам нужен способ его запуска, например, с помощью RC-цепи.Сами по себе конденсаторы имеют ограниченное применение и хороши для таких вещей, как фильтрация напряжения переменного тока (и шокирование ваших друзей), но — при использовании в сочетании с резистором — они становятся очень полезными. Соедините эти два устройства вместе, и вы сможете создать RC-цепь.
RC-цепи бывают двух типов: интеграторы и дифференциаторы. Когда напряжение подается на RC-цепь, конденсатор «наполняется» энергией. Затем, когда напряжение снимается, резистор «разряжает» конденсатор.Время, необходимое для «заполнения» и «слива» конденсатора, может быть измерено в секундах и называется постоянной времени RC. Изменение номиналов конденсатора или резистора позволяет регулировать постоянную времени RC. Настоящая разница между интегратором и дифференциатором заключается в том, как ведет себя выходной сигнал. Эти различия показаны на рисунке .
РИСУНОК 1. Различия между интегратором и дифференциатором.
Используя триггер и RC-схему, вы можете создать базовую схему, которая будет попеременно мигать двумя светодиодами.Я использовал тип RS (RESET – SET), потому что это самый простой триггер и он идеально подходит для моих нужд. Я использовал RC-схему дифференциатора, потому что она имеет лучший выход для запуска цифровых логических схем. Если вы добавите несколько светодиодов и больше резисторов, у вас будет схема, которая будет попеременно мигать двумя светодиодами. Эта схема показана на рис. 2 .
РИСУНОК 2. Триггер, попеременно мигающий двумя светодиодами.
NAND Gates
Логические схемы, которые я использовал для создания триггера RS, являются вентилями NAND.Вы можете узнать больше о логических элементах NAND, а также о многих других основах цифровой электроники здесь . На данный момент, однако, достаточно понять, что выход логического элемента И-НЕ становится высоким только тогда, когда его два входа имеют низкий уровень. Итак, когда вы впервые подаете питание на схему (, рис. 2, ), один из двух вентилей NAND (в зависимости от того, какой из них быстрее) установит высокий уровень на выходе.
Это подает питание на дифференциатор, подключенный к выходу первого логического элемента И-НЕ. Это отправит цифровую «1» на оба входа другого логического элемента И-НЕ, тем самым сделав его выход низким (выключив второй светодиод).Первый светодиод будет гореть до тех пор, пока выходное напряжение дифференциатора не упадет до нуля. В это время на выходе второго логического элемента И-НЕ будет высокий уровень (включение второго светодиода), тем самым отправив выходы первого элемента И-НЕ на низкий уровень (выключение первого светодиода). Этот процесс будет продолжаться до тех пор, пока подается питание и ничего в цепи не разрывается.
Использование схемы
Чтобы настроить время мигания светодиодов, вы можете поэкспериментировать с разными значениями для двух конденсаторов.Более высокие значения увеличивают задержку, а более низкие значения уменьшают задержку. Если вы хотите, чтобы оба светодиода горели равное время, используйте одинаковые значения для обоих конденсаторов. Попробуйте разные значения и посмотрите, какие результаты они дают. Вы также можете попробовать использовать разные значения для своих резисторов, чтобы увидеть, какие эффекты они могут иметь.
Создание такой схемы с микроконтроллером вряд ли потребует каких-либо внешних компонентов, но вам придется отказаться от двух выходных контактов микроконтроллера.В большом проекте два контакта могут быть довольно дорогостоящими, и, даже если вам может понадобиться несколько дополнительных деталей, эта схема сэкономит эти два контакта. Если все, что вам нужно, это попеременно мигать светодиодами (например, на знаке железнодорожного переезда для вашей модели железнодорожного пути), то эта схема идеально подходит для вас и, вероятно, будет стоить вам всего пару долларов. Кроме того, вы не будете переводить микроконтроллер в спящий режим.
Температурный выключатель
Получение показаний температуры — обычное дело для любого любителя электроники.Предположим, у вас есть проект, в котором вы хотите, чтобы звуковой сигнал срабатывал, если температура в морозильной камере превышает определенную температуру, или вы можете узнать, станет ли что-то слишком горячим (например, внутри ящика). Это легко сделать с помощью микроконтроллера, но вы также можете сделать то же самое с некоторыми обычными электронными деталями.
Датчик температуры
Первое, что вам нужно, чтобы считывать конкретную температуру, — это датчик температуры. Температурные датчики обычно могут считывать диапазон от -50 ° F до более 300 ° F.Большинство из них дает выходное напряжение, линейно пропорциональное температуре зонда. Эти датчики уже откалиброваны и имеют гарантированную точность. Некоторые читают температуру в градусах Фаренгейта, а другие — в градусах Цельсия. Я решил поэкспериментировать с LM34DZ. Он может работать при напряжении питания от 5 до 30 вольт и измерять температуру от 32 ° F до 212 ° F. Каждая степень изменения изменяет выходную мощность на 10 мВ.
Компаратор
LM34 будет выдавать определенное напряжение для каждого градуса температуры.Чтобы определить определенное напряжение на LM34, вам понадобится компаратор. Я использовал счетверенный компаратор LM339, потому что он очень распространен, и у меня был один из них, но вы можете использовать любой из многих, имеющихся сегодня на рынке. На самом деле LM339 имеет четыре встроенных компаратора, так что вы можете делать с ним какие-нибудь причудливые вещи, если хотите, но я использовал только один из компараторов для своей схемы.
Компаратор имеет два входа и один выход. Один из входов задается как опорное напряжение, а другой вход — это напряжение, которое вы хотите сравнить с опорным напряжением.Если входное напряжение достигает опорного напряжения, выходное напряжение устанавливается на высокий уровень. Например, предположим, что вы хотите знать, когда определенный вход достигает шести вольт или более.
В этом случае вы должны установить свой компаратор в неинвертирующий режим, а опорное напряжение — на шесть вольт. Затем, когда ваш вход достигнет шести вольт или более, компаратор установит на выходе высокий уровень. Теперь вы можете прочитать этот вывод и запустить другую цепь, например, сигнализацию, светодиод и т. Д.
Собираем вместе
Вы можете соединить эти два устройства вместе, и у вас будет действительно отличный переключатель температуры.Полный коммутатор показан на рис. 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 лет, я интересовался электроникой. Я пошел в школу, чтобы стать инженером-электронщиком, но вместо этого решил сохранить интерес к электронике в качестве хобби, поэтому я занялся компьютерным программированием.В настоящее время я веб-разработчик, и мне нравится то, что я делаю. Мое любимое электронное устройство — микроконтроллер, потому что он связан с двумя моими увлечениями (электроникой и программированием).
Что такое микроконтроллер и как он работает?
Микроконтроллер — это компактная интегральная схема, предназначенная для управления определенной операцией во встроенной системе. Типичный микроконтроллер включает в себя процессор, память и периферийные устройства ввода-вывода (I / O) на одном кристалле.
Иногда называемые встроенным контроллером или микроконтроллером (MCU), микроконтроллеры используются, среди прочего, в транспортных средствах, роботах, офисной технике, медицинских устройствах, мобильных радиопередатчиках, торговых автоматах и бытовой технике.По сути, это простые миниатюрные персональные компьютеры (ПК), предназначенные для управления небольшими функциями более крупного компонента без сложной интерфейсной операционной системы (ОС).
Как работают микроконтроллеры?Микроконтроллер встроен в систему для управления особой функцией устройства. Он делает это, интерпретируя данные, которые он получает от периферийных устройств ввода-вывода, с помощью своего центрального процессора. Временная информация, которую получает микроконтроллер, хранится в его памяти данных, где процессор обращается к ней и использует инструкции, хранящиеся в своей программной памяти, для расшифровки и применения входящих данных.Затем он использует свои периферийные устройства ввода-вывода для связи и выполнения соответствующих действий.
Микроконтроллеры используются в большом количестве систем и устройств. Устройства часто используют несколько микроконтроллеров, которые работают вместе в устройстве для выполнения своих соответствующих задач.
Например, в автомобиле может быть множество микроконтроллеров, которые управляют различными отдельными системами внутри, такими как антиблокировочная тормозная система, контроль тяги, впрыск топлива или управление подвеской. Все микроконтроллеры общаются друг с другом, чтобы сообщить правильные действия.Некоторые могут связываться с более сложным центральным компьютером в автомобиле, а другие могут связываться только с другими микроконтроллерами. Они отправляют и получают данные, используя свои периферийные устройства ввода-вывода, и обрабатывают эти данные для выполнения назначенных им задач.
Какие элементы микроконтроллера?Основные элементы микроконтроллера:
- Процессор (CPU) — Процессор можно рассматривать как мозг устройства. Он обрабатывает и реагирует на различные инструкции, управляющие работой микроконтроллера.Это включает в себя выполнение основных арифметических, логических операций и операций ввода-вывода. Он также выполняет операции передачи данных, которые передают команды другим компонентам в более крупной встроенной системе.
- Память — память микроконтроллера используется для хранения данных, которые процессор получает и использует для ответа на инструкции, которые он был запрограммирован для выполнения. Микроконтроллер имеет два основных типа памяти:
- Программная память, в которой хранится долгосрочная информация об инструкциях, выполняемых ЦП.Программная память — это энергонезависимая память, то есть она хранит информацию с течением времени без использования источника питания.
- Память данных, которая требуется для временного хранения данных во время выполнения инструкций. Память данных энергозависима, то есть данные, которые она хранит, являются временными и поддерживаются только в том случае, если устройство подключено к источнику питания.
Периферийные устройства ввода / вывода - — устройства ввода и вывода являются интерфейсом для процессора с внешним миром.Порты ввода получают информацию и отправляют ее процессору в виде двоичных данных. Процессор получает эти данные и отправляет необходимые инструкции устройствам вывода, которые выполняют задачи, внешние по отношению к микроконтроллеру.
Хотя процессор, память и периферийные устройства ввода-вывода являются определяющими элементами микропроцессора, есть и другие элементы, которые часто используются. Термин «Периферийные устройства ввода-вывода» просто относится к вспомогательным компонентам, которые взаимодействуют с памятью и процессором.Существует множество вспомогательных компонентов, которые можно отнести к категории периферийных устройств. Наличие некоторого проявления периферийных устройств ввода-вывода является элементарной задачей для микропроцессора, потому что они являются механизмом, через который применяется процессор.
Прочие вспомогательные элементы микроконтроллера включают:
- Аналого-цифровой преобразователь (АЦП) — АЦП — это схема, преобразующая аналоговые сигналы в цифровые. Это позволяет процессору в центре микроконтроллера взаимодействовать с внешними аналоговыми устройствами, такими как датчики. Цифро-аналоговый преобразователь (ЦАП)
- — ЦАП выполняет обратную функцию АЦП и позволяет процессору в центре микроконтроллера передавать свои исходящие сигналы внешним аналоговым компонентам.
- Системная шина — Системная шина — это соединительный провод, соединяющий все компоненты микроконтроллера вместе.
- Последовательный порт — Последовательный порт является одним из примеров порта ввода-вывода, который позволяет микроконтроллеру подключаться к внешним компонентам.Он имеет функцию, аналогичную USB или параллельному порту, но отличается способом обмена битами.
Процессор микроконтроллера зависит от приложения. Варианты варьируются от простых 4-битных, 8-битных или 16-битных процессоров до более сложных 32-битных или 64-битных процессоров. Микроконтроллеры могут использовать энергозависимые типы памяти, такие как оперативная память (RAM) и энергонезависимые типы памяти — сюда входят флэш-память, стираемая программируемая постоянная память (EPROM) и электрически стираемая программируемая постоянная память (EEPROM).
Как правило, микроконтроллеры проектируются так, чтобы их можно было легко использовать без дополнительных вычислительных компонентов, потому что они разработаны с достаточным объемом встроенной памяти, а также предлагают контакты для общих операций ввода-вывода, поэтому они могут напрямую взаимодействовать с датчиками и другими компонентами.
Архитектура микроконтроллераможет быть основана на архитектуре Гарварда или архитектуре фон Неймана, обе предлагают различные методы обмена данными между процессором и памятью. В гарвардской архитектуре шина данных и инструкция разделены, что позволяет осуществлять одновременную передачу.В архитектуре фон Неймана одна шина используется как для данных, так и для инструкций.
Процессоры микроконтроллеровмогут быть основаны на вычислениях со сложным набором команд (CISC) или на вычислениях с сокращенным набором команд (RISC). CISC обычно имеет около 80 инструкций, в то время как RISC имеет около 30, а также больше режимов адресации, 12-24 по сравнению с RISC 3-5. Хотя CISC может быть проще в реализации и более эффективно использует память, он может иметь снижение производительности из-за большего количества тактовых циклов, необходимых для выполнения инструкций.RISC, который уделяет больше внимания программному обеспечению, часто обеспечивает лучшую производительность, чем процессоры CISC, которые уделяют больше внимания аппаратному обеспечению из-за упрощенного набора инструкций и, следовательно, повышенной простоты конструкции, но из-за упора на программное обеспечение, программное обеспечение может быть более сложным. Какой ISC используется, зависит от приложения.
Когда они впервые стали доступны, микроконтроллеры использовали исключительно язык ассемблера. Сегодня популярным вариантом является язык программирования C.Другие распространенные языки микропроцессоров включают Python и JavaScript.
Микроконтроллерыоснащены входными и выходными контактами для реализации периферийных функций. К таким функциям относятся аналого-цифровые преобразователи, контроллеры жидкокристаллических дисплеев (LCD), часы реального времени (RTC), универсальный синхронный / асинхронный приемный передатчик (USART), таймеры, универсальный асинхронный приемный передатчик (UART) и универсальная последовательная шина ( USB) возможность подключения. Датчики, собирающие данные, связанные, в частности, с влажностью и температурой, также часто присоединяются к микроконтроллерам.
Типы микроконтроллеров Стандартные микроконтроллерывключают Intel MCS-51, часто называемый микроконтроллером 8051, который был впервые разработан в 1985 году; микроконтроллер AVR, разработанный Atmel в 1996 году; контроллер программируемого интерфейса (PIC) от Microchip Technology; и различные лицензированные микроконтроллеры Advanced RISC Machines (ARM).
Ряд компаний производят и продают микроконтроллеры, включая NXP Semiconductors, Renesas Electronics, Silicon Labs и Texas Instruments.
Приложения микроконтроллера Микроконтроллерыиспользуются в различных отраслях и приложениях, в том числе в домашних условиях и на предприятиях, в автоматизации зданий, производстве, робототехнике, автомобилестроении, освещении, интеллектуальной энергетике, промышленной автоматизации, коммуникациях и развертываниях Интернета вещей (IoT).
Одно из очень специфических применений микроконтроллера — его использование в качестве процессора цифровых сигналов. Часто входящие аналоговые сигналы имеют определенный уровень шума.Шум в этом контексте означает неоднозначные значения, которые нельзя легко преобразовать в стандартные цифровые значения. Микроконтроллер может использовать свои АЦП и ЦАП для преобразования входящего аналогового сигнала с шумом в ровный исходящий цифровой сигнал.
Простейшие микроконтроллеры облегчают работу электромеханических систем, используемых в предметах повседневного обихода, таких как духовки, холодильники, тостеры, мобильные устройства, брелоки, системы видеоигр, телевизоры и системы полива газонов. Они также распространены в офисной технике, такой как копировальные аппараты, сканеры, факсы и принтеры, а также в интеллектуальных счетчиках, банкоматах и системах безопасности.
Более сложные микроконтроллеры выполняют важные функции в самолетах, космических кораблях, океанских судах, транспортных средствах, медицинских системах и системах жизнеобеспечения, а также в роботах. В медицинских сценариях микроконтроллеры могут регулировать работу искусственного сердца, почек или других органов. Они также могут способствовать функционированию протезов.
Сравнение микроконтроллеров и микропроцессоровРазличие между микроконтроллерами и микропроцессорами стало менее очевидным, поскольку плотность и сложность микросхем стали относительно дешевыми в производстве, и микроконтроллеры, таким образом, интегрировали более «общие компьютерные» типы функциональности.В целом, однако, можно сказать, что микроконтроллеры работают сами по себе, с прямым подключением к датчикам и исполнительным механизмам, где микропроцессоры предназначены для максимизации вычислительной мощности на кристалле, с подключением к внутренней шине (а не с прямым вводом / выводом). для поддержки оборудования, такого как ОЗУ и последовательные порты. Проще говоря, в кофеварках используются микроконтроллеры; настольные компьютеры используют микропроцессоры.
Микроконтроллер Microchip Technology ATtiny817. Микроконтроллерыдешевле и потребляют меньше энергии, чем микропроцессоры.Микропроцессоры не имеют встроенного ОЗУ, постоянного запоминающего устройства (ПЗУ) или других периферийных устройств на микросхеме, а подключаются к ним своими контактами. Микропроцессор можно считать сердцем компьютерной системы, тогда как микроконтроллер можно считать сердцем встроенной системы.
Выбор подходящего микроконтроллераПри выборе микроконтроллера для проекта следует учитывать ряд технологических и бизнес-соображений.
Помимо стоимости, важно учитывать максимальную скорость, объем ОЗУ или ПЗУ, количество или типы контактов ввода-вывода на MCU, а также энергопотребление, ограничения и поддержку разработки.Обязательно задавайте такие вопросы, как:
- Какие аппаратные периферийные устройства требуются?
- Нужны ли внешние коммуникации?
- Какую архитектуру использовать?
- Какие сообщества и ресурсы доступны для микроконтроллера?
- Каков рынок микроконтроллера?
Что такое микроконтроллер? Как это работает ?
Микроконтроллер — это интегральная схема (ИС), которая представляет собой небольшой, недорогой и автономный компьютер, предназначенный для решения конкретной задачи во встроенных системах.Проще говоря, микроконтроллер (MCU или Microcontroller Unit) — это небольшой компьютер, интегрированный в один чип. Мы также можем объяснить это как программируемый кремниевый чип, который управляется тактовой частотой, основан на регистрах, принимает ввод и выдает вывод после его обработки в соответствии с инструкциями, хранящимися в памяти.
Компьютер — это устройство общего назначения, которое мы можем использовать для обработки текста, просмотра фильмов, редактирования видео, просмотра веб-страниц, разработки программного обеспечения и т. Д. В то время как микроконтроллер предназначен для выполнения некоторых конкретных задач, таких как управление стиральной машиной, управление кондиционером и т. Д. .
Микроконтроллер обрабатывает данные, поступающие на его входные контакты, используя свой ЦП, и выдает выходной сигнал через выходные контакты. Он выполняется синхронной последовательной логической схемой или управляется ею.
Согласно теории цифровых схем, последовательная схема — это логическая схема, выход которой зависит не только от текущих входов, но и от прошлой истории входов. А в синхронных последовательных схемах состояние устройства изменяется только с дискретной синхронизацией, определяемой тактовым сигналом. Основное преимущество синхронной системы — это простота по сравнению с асинхронной системой.
Надеюсь, вы знаете о задержке распространения. Микроконтроллер использует огромное количество логических вентилей для обработки данных. Этим воротам требуется некоторое время, чтобы изменить свое выходное состояние в зависимости от их входов, что называется задержкой распространения. Таким образом, интервал между каждым тактовым сигналом должен быть больше, чем эта задержка распространения, чтобы логическая схема была стабильной и надежной. Таким образом, это определяет максимальную рабочую скорость микроконтроллера, которая будет варьироваться в зависимости от микроконтроллера.
Внутри микроконтроллераКак мы объясняли выше, в микроконтроллер встроены различные элементы, такие как ЦП, ОЗУ, ПЗУ и т. Д.
ЦП
ЦПаналогичен процессору в компьютере, который в основном состоит из арифметико-логического блока (ALU), блока управления и массива регистров. Как видно из названия, ALU выполняет все арифметические и логические операции с данными, полученными от устройств ввода или памяти. Массив регистров состоит из ряда регистров, таких как аккумулятор (A), B, C, D и т. Д., Которые действуют как временные ячейки памяти быстрого доступа для обработки данных. Как видно из названия, блок управления контролирует поток инструкций и данных в системе.
RAM
RAM означает оперативную память. Подобно компьютеру, оперативная память используется для динамического хранения данных, пока микроконтроллер выполняет инструкции. Это энергозависимая память, это означает, что при отключении питания все данные исчезают.
ПЗУ или программная память
ROM означает постоянную память. В старых микроконтроллерах флэш-память была одноразовой программируемой, поэтому называется ПЗУ. Но в последних микроконтроллерах он перепрограммируется, т.е. EEPROM (электрически стираемая программируемая постоянная память).ПЗУ используется для хранения программы или инструкций, которые необходимо выполнить.
Порты ввода-вывода (I / Os)
Микроконтроллерыимеют несколько контактов ввода-вывода общего назначения (GPIO), которые могут быть настроены как входные или выходные контакты путем записи в определенные регистры конфигурации. Эти выводы могут считывать или записывать ВЫСОКОЕ или НИЗКОЕ состояние с / на свои выводы, что позволяет взаимодействовать с внешним миром.
Часы
Микроконтроллеру требуются часы, поскольку он выполняется и управляется последовательной логикой, как объяснено выше.Источник синхронизации может быть внешним, например кварцевым генератором, или внутренним, например, RC-генератором. У разных микроконтроллеров будут разные варианты синхронизации. Некоторые продвинутые микроконтроллеры даже имеют внутреннюю ФАПЧ (ФАПЧ) или ФАПЧ (ФАПЧ) для увеличения тактовой частоты до более высоких частот.
Периферийные устройства
Микроконтроллерытакже будут иметь другие периферийные устройства, как показано ниже.
- 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, другие периферийные устройства, встроенные в один чип.