Устройства на микроконтроллерах: Схемы на микроконтроллерах – Радиодед

Содержание

Устройства на микроконтроллерах Atmel серии AVR

GSM сигнализация для автомобиля (ATmega16) 07.10.2010
Устройство предназначено для своевременного оповещения автовладельца о взломе автомобиля. Сигнализация контролирует двери, окна,…
Просмотров: 10390

Простой цифровой спидометр с семисегментным индикатором (ATmega8) 07.10.2010
Устройство представляет собой простой спидометр на AVR микроконтроллере. Его отличительной чертой является минимум деталей, всего 4…
Просмотров: 13394

Тахометр на AVR микроконтроллере (ATtiny2313, C) 13.01.2010
Данное устройство представляет собой неплохой тахометр, предел его измерений составляет 100 — 9990 об/мин. Точность измерения — ± 3 об/мин….
Просмотров: 27914

Mega-Генератор (ATmega16, C) 09.08.2008
Попросили меня как-то на работе (автосервис) организовать генератор для проверки различных электроклапанов, инжекторов, катушек…
Просмотров: 9447

Простейший бортовой компьютер на любой инжекторный двигатель (ATmega8, C) 08.08.2008

Все началось с того, что как мне казалось, у меня большой расход топлива. Машина у меня Audi-80 с 2-х литровым движком (ABT) и моновпрыском (одна…
Просмотров: 13395

Автомобильный тахометр (AT89C2051, asm) 08.08.2008
Автомобильный тахометр представляет собой функционально законченный блок, который устанавливается в салоне автомобиля. …
Просмотров: 10902

Релейный регулятор громкости по схеме Никитина c LED дисплеем, ПДУ (RC5) (ATmega8, C) 16.02.2011
Как следует из названия, в данной статье представлено устройство собранное на микроконтроллере для регулирования громкости, по…
Просмотров: 5473

Релейный регулятор громкости по схеме Никитина с LCD дисплеем и ПДУ (RC5) (ATmega8, C) 16.02.2011
Как следует из названия, в данной статье представляется устройство для регулирования громкости, собранное по схеме Никитина. В отличии…

Просмотров: 4326

Релейный регулятор громкости по схеме Никитина с LCD, ПДУ (RC5) и кнопками (ATmega8, C) 16.02.2011
Как следует из названия, в данной статье представляется устройство для регулирования громкости, собранное по схеме Никитина. В этой…
Просмотров: 3076

Релейный регулятор громкости по схеме Никитина с LCD, ПДУ (RC5) и энкодером (ATmega8, C) 16.02.2011
Очередная модификация устрйоства для регулирования громкости, собранно по схеме Никитина. В этой версии присутствует LCD дисплей для…
Просмотров: 6041

Одноканальный микроконтроллерный приёмник диапазона 400 мГц на синтезаторе (ATtiny24) 02.12.2010
Приёмник предназначен для приёма сигналов радиомикрофонов на ПАВ-резонаторах, работающих в диапазоне 400-450 мГц с WFM – широкополосной…
Просмотров: 3669

Приёмник 399-469 мГц с дисплеем от NOKIA 3310 (ATmega8) 02.12.2010

Данный приёмник является продолжением разработки «Приёмника диапазона 4хх мГц на синтезаторе».  Приёмник имеет следующие…
Просмотров: 5843

Простой WAV плеер на AVR микроконтроллере (ATtiny25/45/85, C) 31.10.2010
Это простой SD аудио плеер на одном микроконтроллере ATtiny25/45/85. У этих микроконтроллеров есть два быстрых ШИМ (fast PWM) выхода с несущей…
Просмотров: 9521

Музыкальный Звонок на MMC/SD карте (ATmega32, C) 17.03.2008
Простые однотональные мелодии на сегодняшний день уже не могут вызвать восторга у благодарных слушателей. За примерами далеко ходить…
Просмотров: 9378

AVR-USB-MEGA16: USB BootloadHID для микроконтроллеров AVR (ATmega8, ATmega16, C) 30.08.2010
В статье описывается USB bootloader BootloadHID, который хорошо подходит для ATmega8 и ATmega16, так как у него код умещается в 2048…
Просмотров: 5829

Загрузчики (bootloader) для микроконтроллеров AVR 30.08.2010

Описана технология bootloader, встроенная во все микроконтроллеры Atmel AVR семейства ATmega. Материал для статьи взят с сайта…
Просмотров: 6388

Управление электрическими цепями через USB (ATmega8, C) 29.10.2011
Давайте сделаем устройство, которое будет подключаться к USB и сможет управлять электроцепями(например, включать освещение),…
Просмотров: 18359

USB-контроллер джойстика на основе микроконтроллера AVR (ATmega8, C) 15.05.2011
Я начал разрабатывать этот контроллер джойстика, вдохновленный необходимостью в простом самодельном джойстике, который мог бы…
Просмотров: 9416

LCD2USB — подключение LCD индикатора к компьютеру через USB (ATmega8, C) 04.10.2010
Цель LCD2USB — подсоединить текстовые дисплеи на основе контроллера HD44780 к персональным компьютерам (PC) через USB. LCD2USB разрабатывался как…
Просмотров: 6727

Простой VGA/Видео адаптер (ATmega8, C) 28.08.2010
Задавшись целью подключить VGA-монитор для вывода текстовых данных с микроконтроллерной системы сбора информации — я с удивлением…
Просмотров: 10457

Уменьшение шума от кулеров, с выводом температур на LCD (ATmega8, C) 28.08.2010
Устройство создано для уменьшения шума от кулеров компьютера и контроле температур в системном блоке на LCD дисплее. Включает в себя…
Просмотров: 3959

Индикатор интенсивности работы компьютера (AT89C2051, asm) 28.08.2010
Идея создания этого устройства пришла после того, как в компьютере начали разом «стучать» оба жестких диска, причиной чего, как…
Просмотров: 3978

Регулятор оборотов 12V вентилятора на DS18B20 (ATtiny13, C) 01.07.2009
Взял все вентиляторы из своего компа и попробовал при каком напряжении они стартуют. Получилась довольно печальная картина: некоторые…
Просмотров: 12234

Подключение знакосинтезирующего LCD 4×16 к USB (AT90S2313, C) 01.07.2009
Данный проект представляет из себя LCD дисплей 4×16 подключаемый к USB. Проект реализован на довольно дешёвом и доступном МК AT93S2313 формы Atmel….
Просмотров: 3037

Управление большим количеством нагрузок через USB/COM порт (PIC18F252, C) 15.02.2009
Цель устройства — обеспечить контроль большого числа цифровых нагрузок через компьютер. Основные применение — автоматическое…
Просмотров: 5722

Стрелочный индикатор загрузки центрального процессора (AT90S2313, C) 09.08.2008
Драйвер берет значение текущей загрузки ЦП и передает его в СОМ порт. К СОМ порту подключен контроллер, принимающий значения текущей…
Просмотров: 4559

Цифровая паяльная станция своими руками (ATmega8, C) 27.05.2012
Состав: ATmega8, LM358, IRFZ44, 7805, мост, 13 резисторов, один потенциометр, 2 электролита, 4 конденсатора, трехразрядный светодиодный семисегментный…

Просмотров: 46060

Переделка ультразвуковой ванночки Ya Xun YX2000A (ATtiny2313, C) 12.03.2011
Перед покупкой уз-ванночки я долго бегал по городу и заходил в сервисные центры, где ремонтируют мобилки, чтобы узнать, какими…
Просмотров: 5415

Измеритель емкости и индуктивности (ATtiny15, asm) 19.02.2011
Описание опубликовано в журналах «Радио» № 7 за 2004 г., стр. 26, 27 Измеритель LC и «Радиолюбитель» № 8 за 2005 г., стр. 35…37 Измеритель…
Просмотров: 7878

Тестер для LAN кабеля (ATtiny2313, asm) 02.11.2010
Очень простой но практичный тестер для LAN кабелей. Проверяет тип кабеля (прямой или кросс), а так же возможные неисправности. Фото…
Просмотров: 6712

Цифровой осциллограф на микроконтроллере AVR (ATmega32, C) 01.11.2010
Несколько месяцев назад, во время сёрфинга в интернете, я наткнулся на осциллограф на микроконтроллере PIC18F2550 и графическом дисплее на…

Просмотров: 11409

Частотомер на AVR микроконтроллере (ATmega16, C) 11.10.2010
Частотомер 4-110 МГц. Изначально разработан для измерение частоты и подсчёта импульсов (за 1сек.) при разработке цифровых устройств, но…
Просмотров: 4204

Микроконтроллерный сверлильный станок для печатных плат (ATtiny13, C) 11.10.2010
Травить платы мы уже научились, теперь надо сверлить отверстия. Можно ручной дрелью, можно электродрелью, можно станком… Электродрелью…
Просмотров: 17212

Блок питания 3-20В, 0.1-10А (ATmega8, C) 12.01.2010
Без чего не может обойтись не один радиолюбитель? Правильно — без ХОРОШЕГО блока питания, а ещё лучше ХОРОШЕГО ДВУХКАНАЛЬНОГО блока…
Просмотров: 25935

Микроконтроллерный частотомер с LCD индикатором (ATmega8515, asm) 09.08.2008
Принцип работы частотомера хорошо известен. Подсчитав число периодов входного сигнала за известное время, он приводит его к секундному…

Просмотров: 4339

Таймер для паяльника (ATmega16, C) 09.08.2008
Многие из нас сталкивались с прогоранием жала паяльника из-за того, что забыли выключить после завершения заботы. Так же горячий…
Просмотров: 3275

Цифровая паяльная станция своими руками (v1.0) (ATmega8, C) 09.08.2008
Начать нужно с того, что однажды я озадачился приобретением паяльной станции, ибо «вечные» жала портятся от перегрева, а мой…
Просмотров: 11425

Цифровая паяльная станция своими руками (v2.0) (ATmega8, C) 09.08.2008
Это вторая версия статьи «Цифровая паяльная станция своими руками» Начать нужно с того, что однажды я озадачился приобретением…
Просмотров: 7620

Паяльная станция на микроконтроллере с PID регулятором температуры (ATmega8) 09.08.2008
Цифровая паяльная станция на микроконтроллере представляет собой по сути ПИД (Пропорционально — Интегрально — Дифференциальный)…

Просмотров: 11809

Mega-Генератор (ATmega16, C) 09.08.2008
Попросили меня как-то на работе (автосервис) организовать генератор для проверки различных электроклапанов, инжекторов, катушек…
Просмотров: 9447

Измеритель емкости и частотомер на AVR микроконтроллере (ATmega8, C) 09.08.2008
Предыстория данного проекта такая… Нашел я в интернете одну статейку китайского разработчика, в которой описывалось устройство…
Просмотров: 12589

Цифровой КСВ метр на микроконтроллере (ATmega8) 09.08.2008
Цифровой автоматический КСВ метр обеспечивает быстрый пересчет Коэффициента Стоячей Волны в автоматическом режиме. Этот прибор…
Просмотров: 5435

Вольтметр и амперметр на микроконтроллере для лабораторного блока питания (ATmega8) 09.08.2008
Не так давно я задался целью сделать себе для работы лабораторный источник питания. Долго думал как реализовать с помощью ШИМ и мощных…

Просмотров: 16306

Двухканальный стабилизированный диммер (с подробнейшим описанием) (ATmega16, asm) 03.08.2013
1. ОБЩИЕ СВЕДЕНИЯ 1.1. Введение Несмотря на бурное развитие сверх ярких светодиодов, в широкой продаже пока не появились светодиодные…
Просмотров: 5793

Cхемотехника и программирование устройств фазового регулирования (ATtiny2313, C) 24.11.2011
Кто из вас не хотел изготовить себе сенсорный диммер с возможностью дистанционного управления светом? Наверное, многие. Так вот и я…
Просмотров: 6162

Цифровой инклинометр (акселерометр) MMA7260Q (ATmega32, AD7799, C) 10.06.2011
Инклинометр — устройство, предназначенное для измерения угла наклона различных объектов, относительно гравитационного поля…
Просмотров: 5869

Динамическая индикация индикатора по последовательной шине (ATmega8, 74HC595, C) 17.02.2011
Девяти разрядный семисегментный индикатор с последовательной шиной выполнен на двух микросхемах 74HC595D. Индикатор стоял в…
Просмотров: 6110

Использование графического LCD WG12864A (ATmega8, C) 25.12.2010
Наряду с символьными ЖК, современные производители выпускают разнообразные графические индикаторы. Если у символьных, как правило,…
Просмотров: 5004

Применение семи сегментных LED модулей HT1611, HT1613, МТ10Т7-7 (asm) 24.12.2010
Практически любое микроконтроллерное устройство имеет те или иные устройства индикации. В простейшем случае это всего несколько…
Просмотров: 5295

Шаговые двигатели — Stepper motors (AT90S2313, asm) 24.12.2010
Шаговые двигатели уже давно и успешно применяются в самых разнообразных устройствах. Их можно встретить в дисководах, принтерах,…
Просмотров: 20090

Подключаем тачскрин к AVR — The AVR based USB HID Touchscreen Mouse (ATmega168, C) 19.11.2010
Примечание от администрации сайта eldigi.ru. Данная статья является поучительным примером по подключению резистивного сенсорного экрана…
Просмотров: 5284

LCD2USB — подключение LCD индикатора к компьютеру через USB (ATmega8, C) 04.10.2010
Цель LCD2USB — подсоединить текстовые дисплеи на основе контроллера HD44780 к персональным компьютерам (PC) через USB. LCD2USB разрабатывался как…
Просмотров: 6727

Приёмник RC5 на AVR контроллере (ATmega16, C) 25.09.2009
На рисунке сверху — структура посылки передатчика. По первым двум стартовым битам вычисляется период Р. Затем, как видно из рисунка,…
Просмотров: 3276

Подключение знакосинтезирующего LCD 4×16 к USB (AT90S2313, C) 01.07.2009
Данный проект представляет из себя LCD дисплей 4×16 подключаемый к USB. Проект реализован на довольно дешёвом и доступном МК AT93S2313 формы Atmel….
Просмотров: 3037

Управление большим количеством нагрузок через USB/COM порт (PIC18F252, C) 15.02.2009
Цель устройства — обеспечить контроль большого числа цифровых нагрузок через компьютер. Основные применение — автоматическое…
Просмотров: 5722

Музыкальный Звонок на MMC/SD карте (ATmega32, C) 17.03.2008
Простые однотональные мелодии на сегодняшний день уже не могут вызвать восторга у благодарных слушателей. За примерами далеко ходить…
Просмотров: 9378

Двухканальный стабилизированный диммер (с подробнейшим описанием) (ATmega16, asm) 03.08.2013
1. ОБЩИЕ СВЕДЕНИЯ 1.1. Введение Несмотря на бурное развитие сверх ярких светодиодов, в широкой продаже пока не появились светодиодные…
Просмотров: 5793

15-ти канальный управляемый диммер (ATmega8) 20.05.2011
В наш повседневный быт всё чаще входят различные интеллектуальные системы управления. Стиральные машинки давно сами стирают и сушат,…
Просмотров: 7718

Пульт дистанционного управления для цифровых зеркальных камер (ATtiny12, asm) 02.12.2010
Некоторые модели цифровых фотокамер имеют возможность дистанционного управления с помощью ИК-лучей. Дистанционное управление…
Просмотров: 4738

15-ти канальная система инфракрасного дистанционного управления (ATmega8) 26.10.2010
​ Основные возможности разработанного модуля дистанционного управления: · 15 выходов для подключения нагрузок; ·…
Просмотров: 4086

Универсальное устройство: часы, термометр, система удалённого управления (ATmega16) 01.08.2010
Устройство “Universal device” (Универсальное устройство) содержит в себе функции нескольких устройств, которые сильно облегчают жизнь…
Просмотров: 8069

Часы на микроконтроллере ATmega16 (ATmega16, C) 26.01.2010
От администрации сайта eldigi.ru Автор конструкции предоставил только схемы, исходники и проект для симуляции в Proteus-e. За что ему…
Просмотров: 6981

Сенсорный регулятор освещения с дистанционным управлением (ATtiny2313) 08.03.2009
Предлагаемое устройство — один из вариантов микроконтроллерных регуляторов яркости ламп накаливания, конструкции которых можно…
Просмотров: 7334

Многоканальная система дистанционного управления или «Умный дом» (ATmega16) 24.01.2009
Как говорится, лень – двигатель прогресса. Возможно, поэтому всё большее распространение получают системы дистанционного…
Просмотров: 9479

Часы на ATmega8 (ATmega8, C) 21.06.2008
Два датчика температуры DS18B20 (дома и на улице). 5 будильников. Отсрочка сигнала, если будильник не отключить, срабатывает примерно…
Просмотров: 15545

Домашняя метеостанция с часами, календарем и будильниками (ATmega32, C) 21.04.2008
Предлагаемый прибор отличается от аналогов использованием современной базы, исчерпывающим в домашних условиях набором измеряемых…
Просмотров: 9009

«МультиПульт» — расширь возможности своего пульта! (ATtiny2313) 13.04.2008
Данная конструкция будет интересна прежде всего владельцам ТВ тюнеров на чипсете Philips SAA7134 и SAA7135. Теоретически, любой пульт от таких ТВ…
Просмотров: 3179

Музыкальный Звонок на MMC/SD карте (ATmega32, C) 17.03.2008
Простые однотональные мелодии на сегодняшний день уже не могут вызвать восторга у благодарных слушателей. За примерами далеко ходить…
Просмотров: 9378

Регулятор яркости лампы накаливания на микроконтроллере (AT89C2051, asm) 01.03.2008
В этом проекте рассказывается о микроконтроллерном регуляторе яркости лампы накаливания (далее просто регулятор). Регулятор…
Просмотров: 6275

Регулятор освещения с дистанционным управлением (AT90S2313, C) 22.01.2008
Предлагаемый прибор умеет не только включать и выключать освещение, но и регулировать его яркость. Он имеет и дополнительную функцию…
Просмотров: 4698

Часы будильник термометр и ИК-ДУ (AT89C4051, C) 18.01.2008
Предлагаемое вниманию читателей устройство выполнено на современной элементной базе и отличается от ранее опубликованных в журнале…
Просмотров: 3661

Счетчик на микроконтроллере (AT90S2313, asm) 06.01.2008
Во многих устройствах бытовой техники и промышленной автоматики сравнительно недавних лет выпусков установлены механические…
Просмотров: 5256

Блок жизнеобеспечения аквариума (AT89C2051, asm) 08.12.2007
Блок жизнеобеспечения аквариума представляет собой функционально законченный блок, который управляет включением компрессора,…
Просмотров: 3728

Продвинутые радио-часы/будильник с термометрами на графическом LCD (ATmega8515) 29.11.2007
Представленное устройство не слишком рентабельно для серийного производства, но представляет собою весьма неплохой пример…
Просмотров: 6303

Датчик утечки газа на микроконтроллере (ATtiny13, C) 10.11.2010
В данной статье представлен датчик утечки газа на микроконтроллере ATtiny13, а в качестве сенсора газа применён MQ-4 фирмы HANWEI ELETRONICS. Это…
Просмотров: 6369

GSM сигнализация для автомобиля (ATmega16) 07.10.2010
Устройство предназначено для своевременного оповещения автовладельца о взломе автомобиля. Сигнализация контролирует двери, окна,…
Просмотров: 10390

Контроллер доступа «Tiny KTM» (AT90S2343) 09.08.2008
Контроллер доступа «Tiny KTM» — проще схемы не бывает! Контроллер предназначен для ограничения и контроля доступа в помещения, такие…
Просмотров: 3481

Электронный замок с ключами iButton (AT89C2051, asm) 09.08.2008
Некоторое время тому назад появился проект «ИМИТАТОР TOUCH-MEMORY DS1990A», т.е. отмычка. Теперь Вашему вниманию предлагается замок к зтой…
Просмотров: 4866

Если Вы потеряли Touch Memory… (AT89C2051, asm) 09.08.2008
Последнее время во многих организациях, а порой и дома, появились дверные замки, ключом к которым является таблетка Touch Memory фирмы DALLAS….
Просмотров: 4145

Имитатор touch-memory DS1990A (AT89C2051, asm) 09.08.2008
Этот проект является развитием проекта Если Вы потеряли Touch Memory… Имитатор touch-memory DS1990A, который предлагается Вашему вниманию, способен…
Просмотров: 4480

Телефонный охранный сигнализатор (AT90S2313, asm) 09.08.2008
Передать тревожный сигнал на некоторое расстояние можно различными способами. В случае охраны квартиры, когда расстояние до хозяина…
Просмотров: 2606

Автономная охранная система на базе ТМ (ATmega8) 09.08.2008
Автономные системы охраны получили достаточно широкое распространение в нашей стране из-за простоты и дешевизны. Классическая…
Просмотров: 5411

SignALL — GSM сигнализация всем (ATtiny2313) 09.08.2008
“SignALL” – GSM сигнализация (далее по тексту “устройство”), предназначена для охраны помещений, таких как квартиры, дачи,…
Просмотров: 8581

Контроллер доступа Visual KTM (ATiny2313) 09.08.2008
Контроллер предназначен для ограничения и контроля доступа в помещения, такие как жилая комната, рабочий кабинет и т.д., с количеством…
Просмотров: 3566

Система оповещения GSM-click (ATmega8, C) 09.08.2008
Предлагаемое устройство предназначено для оповещения о произошедшем событии по GSM каналу, проще говоря СМС-кой. Подключаем его…
Просмотров: 4479

Зарядное устройство для NiMh и NiCd аккумуляторов AA AAA (ATmega8, C) 29.08.2010
Зарядное устройство предназначено для зарядки NiMh и NiCd аккумуляторов (АА AAA) методом быстрого заряда. В принципе сейчас много микросхем…
Просмотров: 7059

Повышающий преобразователь с PID регулятором (ATmega8) 01.04.2010
ПИД регулятор или пропорционально-интегрально-дифференциальный  регулятор – это самый совершенный из существующих типов…
Просмотров: 5079

Блок питания 3-20В, 0.1-10А (ATmega8, C) 12.01.2010
Без чего не может обойтись не один радиолюбитель? Правильно — без ХОРОШЕГО блока питания, а ещё лучше ХОРОШЕГО ДВУХКАНАЛЬНОГО блока…
Просмотров: 25935

Устройство защиты от опасных напряжений (трёхфазное) SOKOL UZP-3F (ATmega8) 08.06.2009
Часто причиной выхода из строя дорогостоящего оборудования, в первую очередь промышленного, является отклонение сетевого напряжения…
Просмотров: 3601

Устройство защиты от опасных напряжений в электросети SOKOL UZP-1F (ATmega8) 08.05.2009
Основные возможности устройства: Изменение и индикация на двустрочном ЖК-дисплее действующего значения напряжения в диапазоне…
Просмотров: 2795

Вольтметр и амперметр на микроконтроллере для лабораторного блока питания (ATmega8) 09.08.2008
Не так давно я задался целью сделать себе для работы лабораторный источник питания. Долго думал как реализовать с помощью ШИМ и мощных…
Просмотров: 16306

Моддинг блока питания (ATmega8) 25.04.2008
Наверняка нет радиолюбителя, который бы не делал для собственных нужд лабораторный блок питания (БП). Сложность таких устройств может…
Просмотров: 5918

Два микроконтроллерных регулятора мощности (AT89C2051, asm) 30.01.2008
Рис. 1 Для управления инерционной нагрузкой часто применяются тиристорные регуляторы мощности, работающие по принципу подачи на…
Просмотров: 3950

Повышающий преобразователь напряжения на AVR (AT90S2313, asm) 15.01.2008
История создания этого девайса такова: некий господин N, экстремал в годах и большой любитель сплава по горным рекам, утопил в одном из…
Просмотров: 3819

Зарядное устройство для малогабаритных аккумуляторов (AT89C2051, MCP3208, asm) 08.12.2007
Зарядное устройство предназначено для зарядки любых малогабаритных аккумуляторов емкостью до 2А*Ч. Ток выдаваемый зарядным…
Просмотров: 3781

USB программатор микроконтроллеров AVR / 89S совместимый с AVR910 (ATmega8, C) 22.01.2012
Схема программатора приведена на рисунке ниже. Предохранитель F1 служит для защиты линий питания порта USB от случайного замыкания по…
Просмотров: 10641

USB, COM отладчик JTAG ICE (ATmega16) 27.04.2010
Иногда, программа зашитая в микроконтроллера работает совсем не так как надо её создателю. Тогда наступает стадия отладки (Отлаживать…
Просмотров: 3951

Параллельный программатор для микроконтроллеров AVR (ATmega16) 16.02.2008
Поводом для создания данного устройства послужило появление новых чипов AVR поддерживающих отладку по протоколу debugWIRE. Так как он не…
Просмотров: 13746

USB параллельный программатор для микроконтроллеров AVR (ATmega16) 16.02.2008
Этот программатор является продолжением «Параллельного программатора для микроконтроллеров AVR»  Предлагаемый вариант…
Просмотров: 6211

Пульт дистанционного управления для цифровых зеркальных камер (ATtiny12, asm) 02.12.2010
Некоторые модели цифровых фотокамер имеют возможность дистанционного управления с помощью ИК-лучей. Дистанционное управление…
Просмотров: 4738

Cхемотехника и программирование устройств фазового регулирования (ATtiny2313, C) 24.11.2011
Кто из вас не хотел изготовить себе сенсорный диммер с возможностью дистанционного управления светом? Наверное, многие. Так вот и я…
Просмотров: 6162

15-ти канальный управляемый диммер (ATmega8) 20.05.2011
В наш повседневный быт всё чаще входят различные интеллектуальные системы управления. Стиральные машинки давно сами стирают и сушат,…
Просмотров: 7718

PWM (ШИМ) управление LED матрицей 8х8 через регистр сдвига 74HC595 (ATmega8, C) 23.01.2011
Есть матрица 8х8, одноцветная. Всего, соответственно, 16 выходов: 8 на столбцы и 8 на строки. Проблема номер один – понять какой контакт чем…
Просмотров: 5629

Светодиодное табло «Волшебная палочка» (AT89C2051/PIC18C84, asm) 06.11.2010
За этим замысловатым названием кроется очень интересная конструкция на PIC-контроллере. Главное достоинство — это оригинальность идеи. В…
Просмотров: 4522

Бегущая строка на микроконтролере (AT90S2313) 21.08.2008
Это устройство может использоваться как гирлянда на праздниках, вечеринках. Для вывода поздравительных сообщений. А так же везде, где…
Просмотров: 5407

Регулятор яркости лампы накаливания на микроконтроллере (AT89C2051, asm) 01.03.2008
В этом проекте рассказывается о микроконтроллерном регуляторе яркости лампы накаливания (далее просто регулятор). Регулятор…
Просмотров: 6275

Многоканальный USB-Термометр (ATmega8, C) 27.10.2011
Когда то давно я написал статью о том, как сделать USB Термометр и разместил ее на двух сайтах. Девайс очень простой, но спустя пару дней,…
Просмотров: 5188

Уменьшение шума от кулеров, с выводом температур на LCD (ATmega8, C) 28.08.2010
Устройство создано для уменьшения шума от кулеров компьютера и контроле температур в системном блоке на LCD дисплее. Включает в себя…
Просмотров: 3959

USB Термометр (ATmega8, C) 10.03.2010
В качестве микроконтроллера, был выбран ATmega8 (такие, как ATtiny8/48 не захотел использовать по причине их дискретности в некоторых городах)….
Просмотров: 6756

Термостат на ATtiny2313 и DS18B20 (ATtiny2313, C) 13.01.2010
Данная конструкция стала прямым продолжением конструкции «Термометр на ATtiny2313 и DS18B20». Как там упоминалось, хотелось…
Просмотров: 9699

Улучшенный термостат на ATtiny2313 и DS18B20 (ATtiny2313, C) 13.01.2010
По многочисленным просьбам дорабатываю конструкцию «Термостат на ATtiny2313 и DS18B20». Теперь умеет: Измерение температуры от -55°С до…
Просмотров: 26374

Термометр на ATtiny2313 и DS18B20 (ATtiny2313, C) 12.01.2010
В Интернете есть куча схем термометров на AVR, но как всегда хочется чего-то своего.. Да и мозги размять тоже следует. Этот термометр был…
Просмотров: 14058

Цифровой термометр на DS18B20 (ATmega8, C) 18.10.2009
Цифровой термометр предназначен для измерения температуры с точностью до одной десятой доли градуса Цельсия*. Цифровой термометр…
Просмотров: 5835

Регулятор оборотов 12V вентилятора на DS18B20 (ATtiny13, C) 01.07.2009
Взял все вентиляторы из своего компа и попробовал при каком напряжении они стартуют. Получилась довольно печальная картина: некоторые…
Просмотров: 12234

Многофункциональные часы-термостат с дистанционным управлением (ATmega8) 08.03.2009
Возникла у меня потребность в настольных часах-термометре, чтобы помимо времени можно было узнать температуру на улице и в доме. В…
Просмотров: 4451

Термометр — меньше не бывает (ATmega8) 18.05.2008
Предлагается схема на микроконтроллере ATMega8 для измерения температуры в диапазоне от −55° C до +127° C с точностью не хуже +-0,5° C. В…
Просмотров: 6523

Термометр с ЖКИ и датчиком DS18B20 (ATtiny15) 01.03.2008
В технической литературе и в Интернете можно найти множество описаний и схем цифровых термометров. В большинстве конструкций…
Просмотров: 4153

Термостат (AT90S2313, C) 15.02.2008
Прибор был создан по просьбе одного знакомого для контроля температуры в комнате — включения отопителя / вентилятора при достижении…
Просмотров: 4386

Термостат на DS18B20 и ATmega8 (ATmega8, C) 27.01.2008
В схеме, можно применять светодиодные семисегментные индикаторы с общим катодом или анодом (2 прошивки). Датчик температуры DS18B20….
Просмотров: 15452

Простой термометр на DS18B20 (ATtiny2313, C) 26.01.2008
Это простой термометр на основе термо датчика DS18B20 и мк ATtiny2313 (или AT90S2313) выводящий информацию на 7-сегментный ЖКИ – модуль на основе…
Просмотров: 8168

Самое простое устройство на микроконтроллере

Микроконтроллеры / Создание устройств /

Разработка устройств на микроконтроллерах

Возможно, вы уже научились чему-то в теме программирования микроконтроллеров. Возможно, вы уже можете написать программу для простого устройства типа бегущих огней новогодней гирлянды. Однако аппетит приходит во время еды. И наверняка вам хочется чего-то большего. Наверняка вам хочется шагнуть на уровень профессионала. Ну хотя бы на первую ступеньку… Подробнее…

До сих пор я выдавал вам общие сведения о микроконтроллерах, отрывки из документации, иногда немного говорил о программировании. Но ещё ни разу не приводил примеров устройств на микроконтроллерах. А ведь именно в этом весь смысл обучения — в создании собственных устройств.

Так что с этой статьи я начинаю исправлять положение дел, и буду рассказывать именно о создании устройств с примерами схем, программ и т.п. Рассказы будут для начинающих. Как всегда буду стараться, чтобы понятно было даже людям, далёким от электроники и программирования. И первый пример будет настолько простым, насколько это вообще возможно…

Пример устройства на микроконтроллере

Итак, наше первое устройство на микроконтроллере будет не простым, а очень простым. И хотя сделать какой-то полезный прибор с наипростейшей схемой и наипростейшей программой крайне сложно, я всё-таки постараюсь. Конечно, эта полезность будет весьма сомнительной, но всё-таки применить это устройство можно будет не только для обучения, но и на практике (конечно, скорее как игрушку, но всё же).

Для опытов возьмём один из самых дешёвых микроконтроллеров — ATtiny13A, о котором я уже немало поведал на этом сайте.

Самая простая схема на микроконтроллере

Наше первое устройство, можно сказать, почти не будет делать ничего полезного. Но зато оно очень простое и новичкам будет проще разобраться как со схемотехникой, так и с программой микроконтроллера.

Итак, наше устройство — это простейшая сигнализация. Если вход микроконтроллера замкнут, то на выходе ноль. Если вход разомкнуть, то на выходе, к которому подключен светодиод, появится сигнал. Светодиод включится, и это будет означать, что сигнализация сработала.

Конечно, это всё достаточно примитивно. Однако в давние времена, когда я занимался (в том числе) и обслуживанием систем сигнализации, мы использовали такие самодельные “датчики”. Например, обматывали решётку на окне тонким проводом и подключали его в шлейф прибора сигнализации. Если злодей выдернет решётку — провод порвётся и сигнализация сработает.

Ну а теперь к схеме.

Микроконтроллер ATtiny13A по умолчанию использует внутренний генератор на 9,6 МГц (это следует из документации, и я писал об этом здесь). И если нас такое решение устраивает (а нас оно устраивает), то это означает, что никаких внешних цепей для задания тактовой частоты нам не потребуется.

Микроконтроллер ATtiny13A выпускается в нескольких корпусах. Будем считать, что у нас корпус 8PDIP/SOIC (подробнее об этом здесь). Тогда схема будет такой:

Наверно вы знаете, что у этих МК есть встроенные подтягивающие резисторы. Но эти резисторы очень маломощные и могут перегореть, если их использовать с нагрузкой. Поэтому последовательно со светодиодом лучше ставить внешний резистор.

На схеме SA1 может быть либо охранным датчиком, либо просто тонким проводом, обмотанным, например, вокруг какого-то охраняемого предмета. При обрыве провода (или размыкании контакта) сигнализация “срабатывает” и светодиод загорается.

Конечно, это слишком несовершенная система. Но мы же только учимся. И в начале пути создания устройств на микроконтроллерах это лучшее решение, потому что оно самое простое.

Простая программа микроконтроллера

Ну а теперь можно перейти к программированию. Я буду использовать ассемблер и среду разработки AVRStudio 4. Почему я использую именно эту среду, хотя есть более новые версии, я рассказал здесь.

Итак, пройдём путь от создания проекта до написания программы.

Запускаем среду разработки AVRStudio 4 и видим окно:

Нажимаем кнопку NEW PROJECT. Откроется окно:

Здесь можно выбрать вид проекта — на ассемблере или на Си, задать имя проекта и выбрать каталог для файлов проекта.

ВНИМАНИЕ!
В пути к файлу не должно быть русских букв. То есть если вы сохраните проект в папку МОИ_ПРОГРАММЫ, то программа не скомпилируется, так как AVR Studio 4 может не понять путь с русскими буквами.

Мы будем писать программу на ассемблере. Проект назовём myprog.

Теперь можно нажать кнопку ДАЛЕЕ (NEXT).

В следующем окне надо выбрать отладочную платформу и тип микроконтроллера:

Выберем AVR Simulator. Ну и поскольку у нас микроконтроллер ATtiny13A, то выберем ATtiny13. Затем нажимаем FINISH.

Ну вот. Проект создан. Редактор исходного кода открыт. Теперь можно приступить к написанию программы. Она может быть примерно такой:


; Сообщить ассемблеру модель микроконтроллера
.device ATtiny13A
.nolist
; Подключить файл с объявлениями для ATtiny13A
.include "tn13def.inc"  
.list

; Инициализация
Init:
  ; PB0 - вход, остальные - выходы
  LDI R16,  0b11111110
  OUT DDRB, R16
  ; Включить подтяжку для PB0
  LDI R16,  0b00000001
  OUT PortB, R16

; Начало программы
Start:
  SBIS PinB,  0   ; Проверить датчик
  SBI  PortB, 1   ; Если обрыв, то включить светодиод
  SBIC PinB,  0   ; Проверить датчик
  CBI  PortB, 1   ; Если замкнут, то погасить светодиод
  RJMP Start      ; Возвращаемся к началу программы

При инициализации мы определяем, какие выводы будут входами, а какие — выходами. Если в бит регистра DDRB записать 0, то соответствующий вывод порта В будет входом, если 1 — выходом.

У нас к выводу РВ0 подключен датчик, следовательно, РВ0 будет входом. К выводу РВ1 подключен светодиод, значит, РВ1 будет выходом. Неиспользуемые выводы лучше всегда делать выходами (хотя здесь у каждого свои предпочтения).

С помощью команды LDI мы записываем число в регистр R16, который используем как временную переменную. Это необходимо, потому что команда OUT не может записать в регистр DDRB непосредственное значение.

Далее мы включаем подтягивающий резистор для вывода РВ0. Для этого в регистр PortB надо в соответствующий бит записать 1.

Ну а далее начинается программа.

Сначала выполняем команду SBIS. Эта команда проверяет указанный вход. И если на этом входе 1, то следующая команда НЕ БУДЕТ выполнена. То есть в этом коде:


SBIS PinB,  0 
SBI  PortB, 1 
SBIC ...

мы проверяем РВ0. Если там единица, то мы переходим к команде SBIC. Если же ноль (датчик разомкнут — сигнализация сработала), то выполняем команду SBI, которая устанавливает указанный выход (то есть в нашем случае зажигает светодиод, подавая напряжение на вывод РВ1).

Затем выполняем команду SBIC. Эта команда также проверяет указанный вход. Но если на этом входе 0, то следующая команда не будет выполнена. Если же 1 (контакты датчика замкнуты), то будет выполнена команда CBI, которая обнуляет указанный вывод. То есть на РВ1 будет подан 0, и светодиод погаснет.

Таким образам исполняется наш простой алгоритм: если датчик “не сработал” (контакт замкнут), то светодиод не горит. Если контакты разомкнулись, то светодиод светится.

На этом пока всё. Если что-то осталось непонятно — посмотрите видео в начале статьи.



Микроконтроллеры для ЧАЙНИКОВ

Бесплатная рассылка о микроконтроллерах. Рассылка содержит как бесплатную информацию для начинающих, так и ссылки на платные продукты (книги, видеокурсы и др.) для тех, кто захочет вникнуть в тему более глубоко. Подробнее…


Все о микроконтроллерах

Микроконтроллер — микросхема, предназначенная для управления электронными устройствами.

Микроконтроллер — это специальная микросхема, предназначенная для управления различными электронными устройствами. Микроконтроллеры впервые появились в том же году, что и микропроцессоры общего назначения (1971).

Разработчики микроконтроллеров придумали остроумную идею – объединить процессор, память, ПЗУ и периферию внутри одного корпуса, внешне похожего на обычную микросхему. С тех пор производство микроконтроллеров ежегодно во много раз превышает производство процессоров, а потребность в них не снижается.

Микроконтроллеры выпускают десятки компаний, причем производятся не только современные 32-битные микроконтроллеры, но и 16, и даже 8-битные (как i8051 и аналоги). Внутри каждого семейства часто можно встретить почти одинаковые модели, различающиеся скоростью работы ЦПУ и объемом памяти.

Дело в том, что микроконтроллеры применяются преимущественно во встроенных системах, в игрушках, в станках, в массовой домашней технике, в домашней автоматике – там, где нужна не мощность процессора, а, скорее, баланс между ценой и достаточной функциональностью.

Именно поэтому самые старые типы микроконтроллеров еще до сих пор в ходу – они многое могут: от автоматического открывания дверей и включения полива газонов до интеграции в систему «умный дом». При этом существуют и более мощные микроконтроллеры, способные выполнять сотни миллионов операций в секунду и обвязанные периферией «до зубов». У них и задачи соответствующие. Таким образом, разработчик сначала оценивает задачу, а уж потом выбирает под нее подходящее «железо».

На сегодняшний день существует более 200 модификаций микроконтроллеров, совместимых с i8051, выпускаемых двумя десятками компаний, и большое количество микроконтроллеров других типов. Популярностью у разработчиков пользуются 8-битные микроконтроллеры PIC фирмы Microchip Technology и AVR фирмы Atmel, 16-битные MSP430 фирмы TI, а также 32-битные микроконтроллеры, архитектуры ARM, которую разрабатывает фирма ARM Limited и продаёт лицензии другим фирмам для их производства.

16-битный 28-pin PDIP PIC24 микроконтроллер

Микроконтроллер Atmel AVR ATmega8 в корпусе DIP

Устройство микроконтроллера AVR

Микроконтроллер характеризуется большим числом параметров, поскольку он одновременно является сложным программно-управляемым устройством и электронным прибором (микросхемой). Приставка «микро» в названии микроконтроллера означает, что выполняется он по микроэлектронной технологии.

В ходе работы микрконтроллер считывает команды из памяти или порта ввода и исполняет их. Что означает каждая команда, определяется системой команд микроконтроллера. Сиситема команд заложена в архитектуре микрконтроллера и выполнение кода команды выражается в проведении внутренними элементами микросхемы определенных микроопераций.

Микроконтроллеры позволяют гибко управлять различными электронными и электрическими устройствами. Некоторые модели микроконтроллеров настолько мощны, что могут непосредственно переключать реле (к примеру, на елочных гирляндах).

Микроконтроллеры, как правило, не работает в одиночку, а запаивается в схему, где, кроме него, подключаются экраны, клавиатурные входы, различные датчики и т.д.

Софт для микроконтроллеров может привлечь внимание тех, кто обожает «гоняться за битами», так как обычно память в микроконтроллерах составляет от 2 до 128 Кб. Если меньше, то писать приходится на ассемблере или Форте, если есть возможность, то используют специальные версии Бейсика, Паскаля, но в основном – Си. Прежде чем окончательно запрограммировать микроконтроллер, его тестируют в эмуляторах – программных или аппаратных. 

Тут может возникнуть вопрос: микропроцессор и микроконтроллер это просто разное название одного и того же устройства, или это все-таки разные вещи?

Микропроцессор это центральное устройство любой ЭВМ, выполненный по интегральной технологии. Само название говорит о том, что именно в нем происходят вычислительные процессы. Чтобы из него получилась ЭВМ, пусть даже не очень современная и мощная (вспомните любительские конструкции Радио-86 или Синклер), его надо дополнить внешними устройствами. В первую очередь это оперативная память и порты ввода вывода информации.

Микроконтроллер имеет внутри себя процессор, оперативную память, память программ, а кроме этого целый набор периферийных устройств, которые превращают процессор в полнофункциональную ЭВМ. По старой терминологии советских времен подобные устройства назывались Однокристальными Микро ЭВМ. Но советская вычислительная техника, как известно, зашла в тупик, а вместе с ней и ОМЭВМ.

Зарубежная же вычислительная техника на месте не стояла, поэтому ОМЭВМ стали называться контроллерами (от англ. Control – управлять, управление). И в самом деле, контроллеры оказались весьма пригодны для управления различной техникой, даже не очень сложной. 

МИКРОКОНТРОЛЛЕР — это уже не процессор, но ещё и не компьютер.

Центральный процессор, имеющийся в каждом компьютере — главный вычислитель. Хотя компьютер и не предназначен исключительно для вычислительной нагрузки, процессор является в нём головным элементом. Но не только в компьютере имеется процессор.

Если вдуматься и присмотреться, то можно обнаружить, что процессоры применяются в большинстве приборов бытового предназначения. Только там используются не такие процессоры как в компьютере, а микропроцессоры и даже микроконтроллеры.

Так что же такое микроконтроллер и чем отличается от собственно процессора или это совершенно различные электронные компоненты?

Большие интегральные микросхемы или микросхемы с большой степенью интеграции и есть процессоры. Микропроцессоры, по сути те же процессоры, но из-за приставки «микро» определяется их суть, что они миниатюрнее своих «больших» собратьев. В своё историческое время процессор со своим размером мог занимать не одну комнату, впору их назвать как вымерших динозавров макро-процессорами, чтобы и их как-то упорядочить в современном представлении об электронике.

Уменьшенный в габаритах и скомпонованный процессор занимает меньше места и его можно поместить в более компактное изделие, это и есть микропроцессор. Но сам процессор мало что способен делать, кроме как данные пересылать между регистрами и совершать какие-то арифметические и логические действия над ними.

Чтобы микропроцессор мог переслать данные в память, эта самая память должна присутствовать либо на самом кристалле, на котором находится сам процессорный элемент, либо подключаться к внешней оперативной памяти выполненной в виде отдельного кристалла или модуля.

Кроме памяти процессор должен взаимодействовать с внешними устройствами – периферией. Иначе какой пользы можно ожидать от работы процессора, перемешивающего и перемещающего данные туда-сюда. Смысл возникает тогда, когда процессор взаимодействует с устройствами ввода-вывода. У компьютера это клавиатура, манипулятор мышь и устройства отображения как дисплей, опционально – принтер и, например, сканер опять же для ввода информации.

Чтобы управлять устройствами ввода-вывода, непременно необходимы соответствующие буферные схемы и элементы. На их основе реализуются интерфейсные так называемые аппаратные средства. Способы взаимодействия с интерфейсными элементами предполагают наличие схем портов ввода-вывода, дешифраторов адреса и формирователей шин с буферными схемами, для увеличения нагрузочной способности микропроцессора.

Интеграция процессора со всеми необходимыми дополнительными элементами, для того чтобы это изделие выливалось в какой-то завершённый конструктив и приводит к образованию микроконтроллера. Микросхема или микроконтроллерный чип реализует на одном кристалле процессор и интерфейсные схемы.

Самодостаточный чип, который содержит практически всё, чтобы этого хватало для построения законченного изделия и есть пример типового микроконтроллера. Например наручные электронные часы или часы-будильник имеют внутри микроконтроллер, который реализует все функции такового устройства. Отдельные периферийные устройства подключаются непосредственно к ножкам микросхемы микроконтроллера, либо совместно используются дополнительные элементы или микросхемы малой либо средней степени интеграции.

Микроконтроллеры широко используются в изделиях которые содержат всю систему целиком исключительно в одной миниатюрной микросхеме, часто называемой микросборкой. Например «чиповая» кредитная карточка содержит микроконтроллер внутри в пластиковой основе. Таблетка домофона так же внутри себя содержит микроконтроллер. И примеров использования и применения микроконтроллеров настолько обширен в современном мире, что легко обнаружить наличие контроллера в любом мало-мальски интеллектуальном устройстве от детской игрушки до беспроводной гарнитуры сотового телефона.

Ранее ЭлектроВести писали, что компания 2Electron из итальянского города Турина создала прототип электрического мотоцикла Emula, основная особенность которого — имитация любой модели с ДВС при загрузке соответствующего программного обеспечения.

По материалам: electrik.info.

Простые устройства на микроконтроллерах своими руками. Частотный преобразователь для асинхронного двигателя на AVR. Частотомер II от DANYK

Принцип закрывания дверцы клетки весьма прост. Дверка клетки подпирается специальным упором, сделанным из медной проволоки. К упору крепится капроновая нить нужной длины. Если потянуть за нить, то упор соскальзывает, и дверка клетки под собственным весом закрывается. Но это в ручном режиме, а я хотел реализовать автоматический процесс без участия кого-либо.

Для управления механизмом закрывания дверцы клетки был применен сервопривод. Но в процессе работы он создавал шум. Шум мог спугнуть птицу. Поэтому сервопривод я заменил на коллекторный двигатель, взятый из радиоуправляемой машинки. Он работал тихо и идеально подходил, тем более что управлять коллекторным двигателем не составляло сложностей.

Для определения, находится ли уже птица в клетке, я использовал недорогой датчик движения. Сам датчик движения уже является законченным девайсом, и паять ничего не нужно. Но у данного датчика угол срабатывания весьма большой, а мне нужно, чтобы он реагировал только во внутренней области клетки. Для ограничения угла срабатывания я поместил датчик в цоколь, когда-то служившей эконом-лампы. Из картона вырезал своего рода заглушку с отверстием посередине для датчика. Пошаманив с расстоянием данной заглушки относительно датчика, настроил оптимальный угол для срабатывания датчика.

В качестве зазывалы для птиц я решил применить звуковой модуль 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, ни прогромматором Громова. Компьютер просто не видит контроллер и все.

В связи с нововведениями в ПДД, народ стал думать о реализации дневных ходовых огней. Один из возможных путей это включение ламп дальнего света на часть мощности, об этом и есть данная статья.

Это устройство позволит ближнему свету автоматически включиться при начале движения и регулирует напряжение на лампах, ближнего света, в зависимости от скорости с которой вы едите. Так же, это послужит более безопасному движению и продлит срок службы ламп.

Теперь у меня на столе лежит два одинаковых программатора. А всё для того, чтобы попробовать новую прошивку. Эти близняшки буду шить друг друга. Все опыты проводятся под MS Windows XP SP3 .
Цель — увеличение скорости работы и расширение совместимости программатора.

Популярная среда разработки Arduino IDE привлекает большим количеством готовых библиотек и интересных проектов, которые можно найти на просторах Сети.


Некоторое время назад оказались в моем распоряжении несколько микроконтроллеров ATMEL ATMega163 и ATMega163L. Микросхемы были взяты из отслуживших свой срок девайсов. Данный контроллер очень похож на ATMega16, и фактически является его ранней версией.

Привет читателям Датагора! Мне удалось собрать вольтметр минимальных размеров с посегментной разверткой индикатора при довольно высокой функциональности, с автоматическим определением типа индикатора и выбором режимов.


Прочитав статьи Edward Ned’а, я собрал DIP-версию и проверил ее в работе. Действительно вольтметр работал, ток через вывод микросхемы к индикатору не превышал 16 миллиампер в импульсе, так что работа микросхемы без резисторов, ограничивающих токи сегментов, вполне допустима и не вызывает перегрузок элементов.
Не понравилось слишком частое обновление показаний на дисплее и предложенная шкала «999». Хотелось подправить программу, но исходных кодов автор не выкладывает.

В это же мне потребовались вольтметр и амперметр для небольшого блока питания. Можно было собрать на совмещенный вариант, а можно было собрать два миниатюрных вольтметра, причем габариты двух вольтметров получались меньше совмещенного варианта.
Свой выбор я остановил на микросхеме и написал исходный код для посегментной развертки индикатора.
В процессе написания кода возникла идея программируемого переключения шкал и положения запятой, что и удалось реализовать.


Механический энкодер — вещь удобная в использовании, но он имеет некоторые досадные недостатки. В частности, контакты со временем изнашиваются и приходят в негодность, появляется дребезг. Оптические энкодеры гораздо надежнее, но они дороже, многие из них боятся пыли, и они редко встречаются в таком виде, в котором их удобно было бы использовать в радиотехнике.

Короче, когда я узнал о том, что шаговый двигатель можно использовать как энкодер, эта идея мне очень понравилась.
Практически вечный энкодер! Замучить его невозможно: соберешь раз и можешь энкодить всю жизнь.

Предварительный усилитель-коммутатор с цифровым управлением. Применяем с программированием через оболочку Arduino, электронные потенциометры от Microchip, графический TFT.


Разрабатывать и собирать это устройство в мои планы не входило. Ну вот просто никак! У меня уже есть два предварительных усилителя. Оба меня вполне устраивают.
Но, как обычно происходит у меня, стечение обстоятельств или цепь неких событий, и вот нарисовалась задача на ближайшее время.

Здравствуйте, уважаемые читатели ! Хочу представить вам « » — проект подающего робота для настольного тенниса, который будет полезен новичкам и любителям при отработке приёма различного типа подач в любую зону стола, поможет рассчитать тайминг и силу приёма мяча.

А ещё можно просто привыкнуть к новой накладке или ракетке, и хорошенько простучать её.

Приветствую читателей ! Есть у меня пожилой компьютер, которому уже исполнилось лет десять. Параметры у него соответствующие: «пенёк» 3,0 ГГц, пара Гб ОЗУ и древняя материнская плата EliteGroup 915-й серии.


И задумал я куда-нибудь старичка пристроить (подарить, продать), т. к. выбрасывать жалко. Но мешала задуманному одна неприятность: у материнки не срабатывало включение от кнопки питания, и что бы я ни делал, начиная от проверки проводов и заканчивая прозвонкой транзисторов на плате, проблему найти так и не смог. Отдавать в ремонт спецам — ремонт окажется дороже всего компа.

Думал я, думал и нашёл способ запустить моего бедолагу. Выдернул батарею BIOS-а, от чего комп испугался и сразу стартанул при следующем появлении питания! А дальше — почти в каждом BIOS-е есть запуск ПК от любой кнопки клавиатуры или кнопки POWER на клавиатуре. Казалось бы, проблема решена. Ан нет, есть нюансы. С USB-клавиатур запуск не срабатывал. Плюс не хотелось пугать нового хозяина, компьютер должен стартовать от привычной кнопки питания на корпусе.

Поделки с микроконтроллерами – вопрос, как никогда актуальный и интересный. Ведь мы живем в 21 веке, эпохе новых технологий, роботов и машин. На сегодняшний день каждый второй, начиная с малого возраста, умеет пользоваться интернетом и различного рода гаджетами, без которых порою и вовсе сложно обойтись в повседневной жизни.

Поэтому в этой статье мы будем затрагивать, в частности, вопросы пользования микроконтроллерами, а также непосредственного применения их с целью облегчения миссий, каждодневно возникающих перед всеми нами. Давайте разберемся, в чем ценность этого прибора, и как просто использовать его на практике.

Микроконтроллер − это чип, целью которого является управление электрическими приборами. Классический контроллер совмещает в одном кристалле, как работу процессора, так и удаленных приборов, и включает в себя оперативное запоминающее устройство. В целом, это монокристальный персональный компьютер, который может осуществлять сравнительно обыкновенные задания.

Разница между микропроцессором и микроконтроллером заключается в наличии встроенных в микросхему процессора приборов «пуск-завершение», таймеров и иных удаленных конструкций. Применение в нынешнем контроллере довольно сильного вычисляющего аппарата с обширными способностями, выстроенного на моносхеме, взамен единого комплекта, существенно уменьшает масштабы, потребление и цену созданных на его основе приборов.

Из этого следует, что применить такое устройство можно в технике для вычисления, такой, как калькулятор, материнка, контроллеры компакт-дисков. Используют их также в электробытовых аппаратах – это и микроволновки, и стиральные машины, и множество других. Также микроконроллеры широко применяются в индустриальной механике, начиная от микрореле и заканчивая методиками регулирования станков.

Микроконроллеры AVR

Ознакомимся с более распространенным и основательно устоявшимся в современном мире техники контроллером, таким как AVR. В его состав входят высокоскоростной RISC-микропроцессор, 2 вида затратной по энергии памяти (Flash-кэш проектов и кэш сведений EEPROM), эксплуатационная кэш по типу RAM, порты ввода/вывода и разнообразные удаленные сопряженные структуры.

  • рабочая температура составляет от -55 до +125 градусов Цельсия;
  • температура хранения составляет от -60 до +150 градусов;
  • наибольшая напряженность на выводе RESET, в соответствии GND: максимально 13 В;
  • максимальное напряжение питания: 6.0 В;
  • наибольший электроток линии ввода/вывода: 40 мА;
  • максимальный ток по линии питания VCC и GND: 200 мА.

Возможности микроконтроллера AVR

Абсолютно все без исключения микроконтроллеры рода Mega обладают свойством самостоятельного кодирования, способностью менять составляющие своей памяти драйвера без посторонней помощи. Данная отличительная черта дает возможность формировать с их помощью весьма пластичные концепции, и их метод деятельности меняется лично микроконтроллером в связи с той либо иной картиной, обусловленной мероприятиями извне или изнутри.

Обещанное количество оборотов переписи кэша у микроконтроллеров AVR второго поколения равен 11 тысячам оборотов, когда стандартное количество оборотов равно 100 тысячам.

Конфигурация черт строения вводных и выводных портов у AVR заключается в следующем: целью физиологического выхода имеется три бита регулирования, а никак не два, как у известных разрядных контроллеров (Intel, Microchip, Motorola и т. д.). Это свойство позволяет исключить потребность обладать дубликатом компонентов порта в памяти с целью защиты, а также ускоряет энергоэффективность микроконтроллера в комплексе с наружными приборами, а именно, при сопутствующих электрических неполадках снаружи.

Всем микроконтроллерам AVR свойственна многоярусная техника пресечения. Она как бы обрывает стандартное течение русификатора для достижения цели, находящейся в приоритете и обусловленной определенными событиями. Существует подпрограмма преобразования запрашивания на приостановление для определенного случая, и расположена она в памяти проекта.

Когда возникает проблема, запускающая остановку, микроконтроллер производит сохранение составных счетчика регулировок, останавливает осуществление генеральным процессором данной программы и приступает к совершению подпрограммы обрабатывания остановки. По окончании совершения, под шефствующей программы приостановления, происходит возобновление заранее сохраненного счетчика команд, и процессор продолжает совершать незаконченный проект.

Поделки на базе микроконтроллера AVR

Поделки своими руками на микроконтроллерах AVR становятся популярнее за счет своей простоты и низких энергетических затрат. Что они собой представляют и как, пользуясь своими руками и умом, сделать такие, смотрим ниже.

«Направлятор»

Такое приспособление проектировалось, как небольшой ассистент в качестве помощника тем, кто предпочитает гулять по лесу, а также натуралистам. Несмотря на то, что у большинства телефонных аппаратов есть навигатор, для их работы необходимо интернет-подключение, а в местах, оторванных от города, это проблема, и проблема с подзарядкой в лесу также не решена. В таком случае иметь при себе такое устройство будет вполне целесообразно. Сущность аппарата состоит в том, что он определяет, в какую сторону следует идти, и дистанцию до нужного местоположения.

Построение схемы осуществляется на основе микроконтроллера AVR с тактированием от наружного кварцевого резонатора на 11,0598 МГц. За работу с GPS отвечает NEO-6M от U-blox. Это, хоть и устаревший, но широко известный и бюджетный модуль с довольно четкой способностью к установлению местонахождения. Сведения фокусируются на экране от Nokia 5670. Также в модели присутствуют измеритель магнитных волн HMC5883L и акселерометр ADXL335.


Беспроводная система оповещения с датчиком движения

Полезное устройство, включающее в себя прибор перемещения и способность отдавать, согласно радиоканалу, знак о его срабатывании. Конструкция является подвижной и заряжается с помощью аккумулятора или батареек. Для его изготовления необходимо иметь несколько радиомодулей HC-12, а также датчик движения hc-SR501.

Прибор перемещения HC-SR501 функционирует при напряжении питания от 4,5 до 20 вольт. И для оптимальной работы от LI-Ion аккумулятора следует обогнуть предохранительный светодиод на входе питания и сомкнуть доступ и вывод линейного стабилизатора 7133 (2-я и 3-я ножки). По окончанию проведения этих процедур прибор приступает к постоянной работе при напряжении от 3 до 6 вольт.


Внимание: при работе в комплексе с радиомодулем HC-12 датчик временами ложно срабатывал. Во избежание этого необходимо снизить мощность передатчика в 2 раза (команда AT+P4). Датчик работает на масле, и одного заряженного аккумулятора, емкостью 700мА/ч, хватит свыше, чем на год.

Минитерминал

Приспособление проявило себя замечательным ассистентом. Плата с микроконтроллером AVR нужна, как фундамент для изготовления аппарата. Из-за того, что экран объединён с контроллером непосредственно, то питание должно быть не более 3,3 вольт, так как при более высоких числах могут возникнуть неполадки в устройстве.


Вам следует взять модуль преобразователя на LM2577, а основой может стать Li-Ion батарея емкостью 2500мА/ч. Выйдет дельная комплектация, отдающая постоянно 3,3 вольта во всём трудовом интервале напряжений. С целью зарядки применяйте модуль на микросхеме TP4056, который считается бюджетным и достаточно качественным. Для того чтобы иметь возможность подсоединить минитерминал к 5-ти вольтовым механизмам без опаски сжечь экран, необходимо использовать порты UART.

Основные аспекты программирования микроконтроллера AVR

Кодирование микроконтоллеров зачастую производят в стиле ассемблера или СИ, однако, можно пользоваться и другими языками Форта или Бейсика. Таким образом, чтобы по факту начать исследование по программированию контроллера, следует быть оснащенным следующим материальным набором, включающим в себя: микроконтроллер, в количестве три штуки — к высоковостребованным и эффективным относят — ATmega8A-PU, ATtiny2313A-PU и ATtiny13A- PU.

Чтобы провести программу в микроконтроллер, нужен программатор: лучшим считают программатор USBASP, который дает напряжение в 5 Вольт, используемое в будущем. С целью зрительной оценки и заключений итогов деятельности проекта нужны ресурсы отражения данных − это светодиоды, светодиодный индуктор и экран.


Чтобы исследовать процедуры коммуникации микроконтроллера с иными приборами, нужно числовое приспособление температуры DS18B20 и, показывающие правильное время, часы DS1307. Также важно иметь транзисторы, резисторы, кварцевые резонаторы, конденсаторы, кнопки.

С целью установки систем потребуется образцовая плата для монтажа. Чтобы соорудить конструкцию на микроконтроллере, следует воспользоваться макетной платой для сборки без пайки и комплектом перемычек к ней: образцовая плата МВ102 и соединительные перемычки к макетной плате нескольких видов — эластичные и жесткие, а также П-образной формы. Кодируют микроконтроллеры, применяя программатор USBASP.

Простейшее устройство на базе микроконтроллера AVR. Пример

Итак, ознакомившись с тем, что собой представляют микроконтроллеры AVR, и с системой их программирования, рассмотрим простейшее устройство, базисом для которого служит данный контроллер. Приведем такой пример, как драйвер низковольтных электродвигателей. Это приспособление дает возможность в одно и то же время распоряжаться двумя слабыми электрическими двигателями непрерывного тока.

Предельно возможный электроток, коим возможно загрузить программу, равен 2 А на канал, а наибольшая мощность моторов составляет 20 Вт. На плате заметна пара двухклеммных колодок с целью подсоединения электромоторов и трехклеммная колодка для подачи усиленного напряжения.

Устройство выглядит, как печатная плата размером 43 х 43 мм, а на ней сооружена минисхемка радиатора, высота которого 24 миллиметра, а масса – 25 грамм. С целью манипулирования нагрузкой, плата драйвера содержит около шести входов.

Заключение

В заключение можно сказать, что микроконтроллер AVR является полезным и ценным средством, особенно, если дело касается любителей мастерить. И, правильно использовав их, придерживаясь правил и рекомендаций по программированию, можно с легкостью обзавестись полезной вещью не только в быту, но и в профессиональной деятельности и просто в повседневной жизни.

Представляю вторую версию двухканального циклического таймера. Были добавлены новые функции и изменилась принципиальная схема. Циклический таймер позволяет включать и выключать нагрузку, а также выдерживать паузу на заданные интервалы времени в циклическом режиме. Каждый из выходов таймера имеет 2 режима работы — «Логический» и «ШИМ». Если выбран логический режим устройство позволяет управлять с помощью контактов реле освещением, отоплением, вентиляцией и другими электроприборами. Нагрузкой могут выступать любые электрические приборы мощность нагрузки которых не превышает максимального тока реле. Тип выхода «ШИМ» позволяет например подключить через силовой транзистор двигатель постоянного тока, при этом есть возможность установить скважность ШИМ, чтобы двигатель вращался с определенной скоростью.

Часы собранные на микроконтроллере ATtiny2313 и светодиодной матрице показывают время в 6-ти различных режимах.

Светодиодная матрица 8*8 управляется методом мультиплексирования. Токоограничивающие резисторы исключены из схемы, чтобы не испортить дизайн, и, поскольку отдельные светодиоды управляются не постоянно, они не будут повреждены.

Для управления используется только одна кнопка, длительное нажатие кнопки(нажатие и удержание) для поворота меню и обычное нажатие кнопки для выбора меню.

Это хобби-проект, потому точность хода часов зависит лишь от калибровки внутреннего генератора контроллера. Я не использовал кварц в этом проекте, так как он занимал бы два нужных мне вывода ATtiny2313. Кварц может быть использован для повышения точности в альтернативном проекте (печатной плате).

На этот раз я представлю простой малогабаритный частотомер с диапазоном измерения от 1 до 500 МГц и разрешением 100 Гц.

В настоящее время, независимо от производителя, почти все микроконтроллеры имеют так называемые счетные входы, которые специально предназначены для подсчета внешних импульсов. Используя этот вход, относительно легко спроектировать частотомер.

Однако этот счетчый вход также имеет два свойства, которые не позволяют напрямую использовать частотомер для удовлетворения более серьезных потребностей. Одна из них заключается в том, что на практике в большинстве случаев мы измеряем сигнал с амплитудой в несколько сотен мВ, который не может перемещать счетчик микроконтроллера. В зависимости от типа, для правильной работы входа требуется сигнал не менее 1-2 В. Другое заключается в том, что максимальная измеримая частота на входе микроконтроллера составляет всего несколько МГц, это зависит от архитектуры счетчика, а также от тактовой частоты процессора.

Это устройство позволяет контролировать температуру воды в чайнике, имеет функцию поддержания температуры воды на определенном уровне, а также включение принудительного кипячения воды.

В основе прибора микроконтроллер ATmega8, который тактируется от кварцевого резонатора частотой 8МГц. Датчик температуры – аналоговый LM35. Семисегментный индикатор с общим анодом.

Эта декоративная звезда состоит из 50 специальных светодиодов RGB, которые контролируются ATtiny44A . Все светодиоды непрерывно изменяют цвет и яркость в случайном порядке. Также есть несколько разновидностей эффектов, которые также активируются случайно. Три потенциометра могут изменять интенсивность основных цветов. Положение потенциометра индицируется светодиодами при нажатии кнопки, а изменение цвета и скорость эффекта можно переключать в три этапа. Этот проект был полностью построен на компонентах SMD из-за специальной формы печатной платы. Несмотря на простую схему, структура платы довольно сложная и вряд ли подойдет для новичков.

В этой статье описывается универсальный трехфазный преобразователь частоты на микроконтроллере(МК) ATmega 88/168/328P . ATmega берет на себя полный контроль над элементами управления, ЖК-дисплеем и генерацией трех фаз. Предполагалось, что проект будет работать на готовых платах, таких как Arduino 2009 или Uno, но это не было реализовано. В отличие от других решений, синусоида не вычисляется здесь, а выводится из таблицы. Это экономит ресурсы, объем памяти и позволяет МК обрабатывать и отслеживать все элементы управления. Расчеты с плавающей точкой в программе не производятся.

Частота и амплитуда выходных сигналов настраиваются с помощью 3 кнопок и могут быть сохранены в EEPROM памяти МК. Аналогичным образом обеспечивается внешнее управление через 2 аналоговых входа. Направление вращения двигателя определяется перемычкой или переключателем.

Регулируемая характеристика V/f позволяет адаптироваться ко многим моторам и другим потребителям. Также был задействован интегрированный ПИД-регулятор для аналоговых входов, параметры ПИД-регулятора могут быть сохранены в EEPROM. Время паузы между переключениями ключей (Dead-Time) можно изменить и сохранить.

Этот частотомер с AVR микроконтроллером позволяет измерять частоту от 0,45 Гц до 10 МГц и период от 0,1 до 2,2 мкс в 7-ми автоматически выбранных диапазонах. Данные отображаются на семиразрядном светодиодном дисплее. В основе проекта микроконтроллер Atmel AVR ATmega88/88A/88P/88PA, программу для загрузки вы можете найти ниже. Настройка битов конфигурации приведена на рисунке 2 .

Принцип измерения отличается от предыдущих двух частотомеров. Простой способ подсчета импульсов через 1 секунду, используемый в двух предыдущих частотомерах(частотомер I, частотомер II), не позволяет измерять доли Герц. Вот почему я выбрал другой принцип измерения для своего нового частотомера III. Этот метод намного сложнее, но позволяет измерять частоту с разрешением до 0,000 001 Гц.

Это очень простой частотомер на микроконтроллере AVR. Он позволяет измерять частоты до 10 МГц в 2-х автоматически выбранных диапазонах. Он основан на предыдущем проекте частотомера I , но имеет 6 разрядов индикатора вместо 4-х. Нижний диапазон измерения имеет разрешение 1 Гц и работает до 1 МГц. Более высокий диапазон имеет разрешение 10 Гц и работает до 10 МГц. Для отображения измеренной частоты используется 6-разрядный светодиодный дисплей. Прибор построен на основе микроконтроллера Atmel AVR ATtiny2313A или ATTiny2313 . Настройку битов конфигурации вы можете найти ниже.

Микроконтроллер тактируется от кварцевого резонатора частотой 20 МГц (максимально допустимая тактовая частота). Точность измерения определяется точностью этого кристалла, а также конденсаторов C1 и C2. Минимальная длина полупериода измеряемого сигнала должна быть больше периода частоты кварцевого генератора (ограничение архитектуры AVR). Таким образом, при 50% рабочем цикле можно измерять частоты до 10 МГц.

Проектирование вычислительного устройства на базе микроконтроллера Текст научной статьи по специальности «Компьютерные и информационные науки»

УДК 004.388:004.383.3’142.2

ПРОЕКТИРОВАНИЕ ВЫЧИСЛИТЕЛЬНОГО УСТРОЙСТВА НА БАЗЕ МИКРОКОНТРОЛЛЕРА

В.М. Глаголев, К.М. Щепакин, Е.М. Баранова

Рассмотрены прикладные возможности микроконтроллеров в контексте проектирования аппаратной части специализированного вычислительного устройства, получающего, обрабатывающего и передающего аналоговые и цифровые сигналы. Особое внимание акцентируется на выборе микроконтроллера фирмы Atmel Corporation («атмэл корпорэйшн», США) серии AVR и поиске оптимального способа использования его ресурсов. Конечным результатом является принципиальная схема вычислительного устройства, готового к программированию.

Ключевые слова: электроника, микроконтроллеры, цифровой сигнал, аналоговый сигнал, сдвиговый регистр, внутрисистемное программирование, программатор.

Микроконтроллер — промежуточное звено между жесткой логикой и полноценным встраиваемым компьютером. Микроконтроллеры имеют программируемую логику и целый набор встроенных дополнительных устройств, таких как многоканальный аналогово-цифровой преобразователь (АЦП), аналоговые компараторы, таймеры (счетчики) с аппаратной функцией широтно-импульсной модуляции (ШИМ) и генерацией волн с помощью ШИМ, интерфейсы UART, I2C, SPI и т.д.

Разрабатываемое устройство вычисляет две независимые величины, одна из которых является цифровым сигналом, а вторая аналоговым. При этом входные данные принимаются так же в двух формах: цифровой и аналоговой. Формула, по которой вычисляются выходные параметры не имеет значения, но она должна описываться в алгоритмическом виде.

Для реализации такого устройства, понадобится принять аналоговый сигнал, принять цифровой сигнал, представить их в одинаковой форме для преобразования по формуле и вывести цифровое значение в аналоговом виде, а аналоговое значение в цифровом.

Первое, с чего следует начать проектирование — это с выбора конкретного микроконтроллера для поставленных задач. Для этого была составлена таблица, в которой перечислены задачи и соответствующие им требования к микроконтроллеру (табл. 1).

Итого, понадобится 25 контактов ввода-вывода, среди которых должен быть один АЦП и один (желательно аппаратный) ШИМ. Наиболее универсальный микроконтроллер AVR ATmega8 имеет только 22 контакта, а более продвинутый ATmega16 — 32 контакта, но при этом он существенно дороже, а многие его возможности (хотя бы 7 контактов) не будут использованы в данном проекте. Для выхода из данной ситуации можно использовать динамическую индикацию, сдвиговый регистр или все же AT-

mega16. Динамическая индикация слишком сложна, а использовать ЛТше-ga16 слишком просто. Поэтому, 8и-битный вывод был реализован с помощью сдвигового регистра 74НС595, который требует только 3 контакта для управления и имеет п ■ 8 (при каскадном соединении п регистров) выходных контактов. При использовании одного сдвигового регистра число необходимых контактов сокращается до 20 и становится возможным использование ATmega8, так как в данном микроконтроллере имеется аппаратный генератор ШИМ и АЦП.

Таблица 1

Задачи и требования к микроконтроллеру________________

№ п/п Задача Комментарий Требования

1 Считывание цифрового сигнала Предположим что сигнал 4-битный. 4 контакта входа (D3..0)

2 Считывание аналогового сигнала Точность не менее 8 бит АЦП + 1 контакт для входа (ANALOG)

3 Вывод цифрового значения 8 контактов входа

4 Вывод аналогового сигнала аппаратный ШИМ + 1 контакт для выхода (PWM)

5 Контрольный 7-сегментный индикатор С дополнительным сегментом -точкой 8 контактов выхода

6 Кнопка подтверждения 1 контакт входа (CONFIRM)

7 Переключатель между вводом и выводом 1 контакт входа (I/O)

8 Переключатель между просмотром на индикаторе аналогового и цифрового вводимого значения 1 контакт входа (A/D)

После выбора микроконтроллера, можно приступать к синтезу принципиальной электрической схемы устройства на его основе. Для этого, необходимо знать цоколёвку микроконтроллера, представленную на рисунке 1. Для простоты монтажа на макетной плате, использовался микроконтроллер в корпусе DIP-28.

Первое, что обычно подключают на монтажной плате — это интерфейс, через который осуществляется внутрисхемное программирование (ISP), чтобы выяснить работоспособность микроконтроллера. В ISP разъем входят следующие контакты:

— SCK (контакт №19)

— MISO (контакт №18)

— MOSI (контакт №17)

— RESET (контакт №1)

— GND (земля)

— VCC (питание)

ТГ7

(RESET) РС6 II 1 28 □ РС5 (ADC5/SCL)

(RXD) PD0 II 2 27 □ РС4 (ADC4/SDA)

(TXD) PD1 С 3 СО 26 □ РСЗ (ADC3)

(INTO) PD2 С 4 ПЗ О) 25 □ РС2 (ADC2)

(INT1) PD3 С 5 ф Ё 24 □ РС1 (ADC1)

(ХСКЛГ0) PD4 С 6 ь 23 □ РС0 (ADC0)

VCC с 7 < СҐ > 22 □ GND

GND С 8 21 □ AREF

(XTAL1/TOSC1) РВ6 С 9 < 20 □ AVCC

(XTAL2/TOSC2) РВ7 С 10 CD -t—’ с 19 □ РВ5 (SCK)

(Т1) PD5 С 11 с < 18 □ РВ4 (MISO)

(AINO) PD6 С 12 17 □ РВЗ (MOSI/OC2)

(AIN1) PD7 С 13 16 □ РВ2 (SS/OC1B)

(ICP1) РВ0 С 14 15 □ РВ1 (ОС1А)

Рис. 1. Цоколёвка ATmega8 в PDIP корпусе

Через ISP разъем, микроконтроллер подключается к программатору, который взаимодействует с компьютером по шине USB (например, USBasp), COM (например, программатор Громова), или LPT (по методу «5 проводков»). На компьютер устанавливается программное обеспечение для выбранного программатора, которое позволяет загрузить программу в устройство.

Далее, необходимо определить номера контактов, соответствующие самому подходящему генератору ШИМ и каналу АЦП. Подробную и крайне понятную информацию обо всех возможностях микроконтроллера можно найти в его официальном документе, называемом datasheet (для микроконтроллеров содержит 300-400 страниц, в России обычно пишется и произносится как «даташит»).

В разделе АЦП (ADC), datasheet ’а написано, что существует 6 равноправных каналов с максимальной точностью в 10 бит. Следовательно, можно выбрать любой контакт, в описании которого есть слово ADC, а именно, все с 23 по 28 контакты.

Аппаратный ШИМ (PWM) в микроконтроллерах является функцией таймера (счетчика). У ATmega8 три независимых аппаратных счетчика: два 8-битных и один 16-битный. Один из 8-битных не имеет возможности аппаратной генерации ШИМ, остается выбор между 8-битный ШИМ с одним выходом и 16-битным ШИМ с двумя. Разрядность счетчика при генерации ШИМ влияет только на количество различных уровней напряжения на выходе, но так как получен цифровой сигнал разрядностью 4 бита, то смело можно выбирать 8-битный счетчик, так как рабочая разрядность все равно будет в 2 раза меньше даже у него. Второму 8-битному счетчику со-

58

ответствует контакт OC2, который на корпусе имеет номер 17. Его можно использовать, не смотря на то, что 17 контакт используется при программировании как MOSI (все контакты ISP могут работать в своем обычном режиме и на возможность внутрисхемного программирования это не повлияет).

Рис. 2. Принципиальная схема устройства

Далее, необходимо подключить 7-сегментный индикатор и это лучше сделать в полный порт (порт, у которого имеют выводы на корпусе и свободны все 8 контактов, соответствующие 8-битному регистру). У ATmega8 такой таким портом может выступить порт Б (контакты со 2 по 6 и с 11 по 13).

Для цифрового ввода достаточно половины порта, например, порта С (контакты с 23 по 26)

Тогда для АЦП остаются контакты 27 и 28. Подключим сигнал к контакту 27.

Остается, подключить сдвиговый регистр. Это можно сделать к любым трем контактам, которые можно сконфигурировать как выходы, например РВ2..0 (с 14 по 16).

Два тумблера и кнопку можно подключать к любым оставшимся контактам входа/выхода.

Конечная схема устройства представлена на рисунке 2. Контакты УСС и ЄКБ необходимо подключить к источнику постоянного напряжения 5 В.

Вариант сборки устройства на макетной плате представлен на ри-

сунке 3.

Рис. 3. Фотография устройства

Специализированное вычислительное устройство готово к программированию. При использовании АЦП и ШИМ, аналоговые данные будут иметь цифровую репрезентацию и их можно использовать для любых задач обработки информации и управления объектами.

Список литературы

1. Прокопенко В.С. Программирование микроконтроллеров ATMEL на языке C. СПб.: КОРОНА-ВЕК, 2012. 307 с.

2. Дхананья Гадре, Нигуал Мэлхотра. Занимательные проекты на базе микроконтроллеров tinyAVR. СПб.: БХВ-Петербург, 2012. 330 с.

3. Википедия — свободная энциклопедия [Электронный ресурс] // Wikimedia Foundation, Inc.: [сайт]. [2001]. URL: http://ru.wikipedia.org/ (дата обращения: 30.08.2013).

4. Краткий Курс — Самоучитель AVR, ATmega и ATtiny [Электронный ресурс]: [сайт]. [2007]. URL: http://123avr.com/ (дата обращения: 30.08.2013).

Глаголев Владислав Максимович, студент, [email protected], Россия, Тула, Тульский государственный университет,

Баранова Елизавета Михайловна, канд. техн. наук, доц., [email protected], Россия, Тула, Тульский государственный университет,

Щепакин Константин Михайлович, д-р техн. наук, проф., Россия, Тула, Тульский институт экономики и информатики

DESIGNING THE COMPUTING DEVICE BASED ON THE MICROCONTROLLER UNIT

V.M. Glagolev, E.M. Baranova, K.M. Schepakin

Here examined the applied capability of modern microcontroller units in context of designing the hardware part of the specific computing device that is meant to receive, process and transfer analog and digital signals. Special attention is paid to the problem of choosing the microcontroller unit from the devices of Atmel Corporation AVR series and to the ways of using its resources effectively. The final result is the schematic diagram of the device.

Key words: electronics, microcontroller, analog signal, digital signal, shift register, in-system programming, chip programmer.

Glagolev Vladislav Maximovich, student, glagol15@gmail. com, Russia, Tula, Tula State University,

Baranova Elizaveta Mihailovna, candidate of technical science, docent, [email protected], Russia, Tula, Tula State University,

Schepakin Konstantin Michailovich, doctor of technical science, professor, Russia, Tula Institute of Economics and Informatics

УДК 004.932

АДАПТИВНЫЙ ПАРАМЕТРИЧЕСКИЙ АЛГОРИТМ ОБРАБОТКИ

ИЗОБРАЖЕНИИЙ

И. А. Грачева, А.В. Копылов

В работе предложен алгоритм обобщенного сглаживания изображений на основе нестационарной априорной модели скрытого поля, подлежащего восстановлению. Специальная версия параметрической процедуры динамического программирования позволяет с учетом наблюдений оценить степень взаимосвязи между элементами изображения с целью сохранения локальных неоднородностей и скачков, а затем использовать эту оценку непосредственно для сглаживания изображения за время, пропорциональное количеству обрабатываемых элементов данных.

Ключевые слова: обработка изображений, динамическое программирование, сглаживание.

Задача сглаживания с сохранением границ является типичной в практике обработки сигналов и изображений. Она постоянно возникает, когда есть основания предполагать наличие существенных неоднородностей, разрывов или скачков в искомом, сглаженном изображении, которые замаскированы шумом во вторичных данных, доступных непосредственной обработке. Важность сглаживания с сохранением границ становится еще более очевидной, если подходить к обобщенному сглаживанию как к универсальному способу решения более широкого круга задач обработки сигналов и изображений, чем задачи обычного сглаживания [1].

Устройства на микроконтроллерах » MIRLIB.RU


Название: Устройства на микроконтроллерах
Автор: Марченко М.В.
Издательство: УлГТУ
Год: 2007
Страниц: 66
ISBN: 978-5-9795-0084-3
Формат: PDF
Размер: 24.5 Мб
Язык: русский

Пособие содержит теоретический и практический материал и включает в себя следующие вопросы: структура PIC-контроллеров, узлы микроконтроллеров и принципы их организации и работы, описание команд, принципы построения программ.
Отдельно рассмотрен пример построения устройства контроля и управления на базе микроконтроллера.
В пособие включен список рекомендуемой литературы.

Оглавление

Предисловие … 4
Структура микроконтроллера … 5
Генератор тактовых сигналов … 7
Внешние цепи генераторов … 8
Внешние кварцевые генераторы … 10
Схема сброса микроконтроллера … 12
Архитектура МК … 15
Структурная схема микроконтроллера … 17
Центральное процессорное устройство … 19
Организация памяти … 21
Регистр состояния STATUS. Прерывания. Порты ввода-вывода … 23
Команды микроконтроллеров семейства pic 16 … 24
Регистры микроконтроллера … 28
Приёмы программирования … 31
Отладка программ в среде MPLAB … 41
Организация вывода информации на дисплей … 43
Формирование звуковых сигналов … 47
Использование датчиков угла поворота … 48
Ввод информации с клавиатуры … 49
Построение устройств управления … 51
Контрольные вопросы … 59
Заключение … 59
Приложение А. Представление чисел в ассемблере … 60
Приложение Б. Арифметико-логические операторы ассемблера … 60
Приложение В. Директивы ассемблера … 62
Приложение Г. Регистры микроконтроллера … 63
Приложение Д. Регистры специального назначения … 64
Библиографический список … 66

Скачать Марченко М.В. — Устройства на микроконтроллерах (2007)


.

Нашел ошибку? Есть жалоба? Жми!
Пожаловаться администрации

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Быстрый поиск микроконтроллера от ведущих мировых производителей

Тактовая частота, МГц

от

до

Блок арифметики с плавающей точкой (FPU) не важно да нет

Поддержка DSP-инструкций не важно да нет

Графический ускоритель, аппаратное декодирование видео не важно да нет

Блок управления памятью (MMU) не важно да нет

Каналы DMA

от

до

Блок защиты памяти (MPU) не важно да нет

Аппаратный блок шифрования не важно да нет

микроконтроллеров повсюду

микроконтроллеры повсюду

Микроконтроллеры везде ….. подробнее здесь

Используется во всем, от простейшего контроллера полива газона до очень сложные спутниковые системы, микроконтроллер стал вездесущий и невидимый. В среднем в домохозяйстве США около 60 встроенных микроконтроллеры. 1 BMW 7-й серии 1999 года выпуска имеет 65 микроконтроллеров. 2 Ежегодно сюда добавляется более 5 миллиардов микроконтроллеров.Хотя микроконтроллеры в ПК наиболее заметны, они составляют всего 6% от рынок микроконтроллеров. 3

Где используются микроконтроллеры

В офисе микроконтроллеры используются в компьютерных клавиатурах, мониторы, принтеры, копировальные аппараты, факсы и телефонные системы и многие другие. В вашем доме микроконтроллеры используются в микроволновых печах, стиральных и сушильных машинах, системы безопасности, контроллеры станций полива газонов, музыка / видео развлекательные компоненты.

Что такое микроконтроллеры?

Микроконтроллеры — это законченные компьютерные системы на микросхеме, обычно объединяет арифметико-логический блок (ALU), память, таймер / счетчики, последовательный порт, порты ввода / вывода (I / O) и тактовый генератор.

Микроконтроллеры используются в приложениях, требующих повторяющихся такие операции, как включение светофора на перекрестке. В этом приложения, единственная функция микроконтроллера — включать и выключать свет в предопределенное время.

Другой пример — микроволновая печь. Давайте посмотрим, как микроконтроллер функционирует при приготовлении пакета попкорна в микроволновой печи.

Вы открываете дверь и кладете внутрь пакет с попкорном. Ты близко дверь и нажмите кнопку с надписью «Попкорн». Через несколько минут прозвучал тон объявляет, что попкорн готов. Что произошло за кулисами?

Когда вы открыли дверь, микроконтроллер обнаружил дверь выключатель, включил свет и отключил магнетрон.Микроконтроллер постоянно сканирует клавиатуру. Когда вы нажимали кнопку «Попкорн», микроконтроллер подтвердил, что дверь закрыта и начал отсчет времени импульсов, запустил мотор для поворотного стола, установил уровень мощности магнетрон и управлял дисплеем. Когда таймер достиг нуля, микроконтроллер выключил магнетрон, остановил поворотный стол и подал сигнал ты.

Это простой пример приложения микроконтроллера.Доступны микроконтроллеры с дополнительными функциями, такими как аналого-цифровой. преобразователи (АЦП), широтно-импульсная модуляция (ШИМ), сторожевые таймеры, контроллер вычислительная сеть (CAN) и функции безопасности.

типов и применения микроконтроллеров — EIT | Инженерный технологический институт: EIT

Введение в микроконтроллер:
Микроконтроллер (микроконтроллер или микроконтроллер) — это микрокомпьютер с одиночной микросхемой, изготовленный на базе СБИС. Микроконтроллер также известен как встроенный контроллер.Сегодня на рынке доступны различные типы микроконтроллеров с разной длиной слова, такие как 4-битные, 8-битные, 64-битные и 128-битные микроконтроллеры. Микроконтроллер — это сжатый микрокомпьютер, предназначенный для управления функциями встроенных систем в офисных машинах, роботах, бытовой технике, автомобилях и ряде других устройств. Микроконтроллер состоит из таких компонентов, как память, периферийные устройства и, самое главное, процессор. Микроконтроллеры в основном используются в устройствах, которым требуется определенная степень контроля со стороны пользователя устройства.

Основы микроконтроллера:
Любое электрическое устройство, которое хранит, измеряет, отображает или вычисляет информацию, состоит из микросхемы микроконтроллера
внутри себя. Базовая структура микроконтроллера состоит из: —
1. ЦП — Мозг микроконтроллера называется ЦП. ЦП — это устройство, которое используется для получения данных, их декодирования и успешного завершения поставленной задачи. С помощью центрального процессора все компоненты микроконтроллера объединены в единую систему.Выборка
инструкций, редактируемая программируемой памятью, декодируется ЦП.
2. Память — В микроконтроллере микросхема памяти работает так же, как микропроцессор. Чип памяти хранит все программы и данные. Микроконтроллеры построены с определенным объемом ПЗУ или ОЗУ (EPROM, EEPROM и т. Д.) Или флэш-памятью для хранения исходных кодов программ.
3. Порты ввода / вывода — порты ввода / вывода в основном используются для взаимодействия или управления различными устройствами, такими как принтеры, ЖК-дисплеи, светодиоды и т. Д.

4.Последовательные порты — эти порты предоставляют последовательные интерфейсы между микроконтроллером и различными другими периферийными устройствами, такими как параллельный порт.
5. Таймеры — микроконтроллер может быть встроен с одним или несколькими таймерами или счетчиками. Таймеры и счетчики контролируют все операции подсчета и синхронизации в микроконтроллере. Таймеры используются для подсчета внешних импульсов. Основными операциями, выполняемыми таймерами, являются генерация импульсов, функции часов, измерение частоты, модуляция, создание колебаний и т. Д.
6.ADC (Аналого-цифровой преобразователь) –ADC используется для преобразования аналоговых сигналов в цифровые. Входные сигналы должны быть аналоговыми для АЦП. Производство цифровых сигналов может использоваться для различных цифровых приложений (например, для измерительных устройств).

7. ЦАП (цифро-аналоговый преобразователь) — этот преобразователь выполняет функции, противоположные АЦП. Это устройство обычно используется для контроля аналоговых устройств, таких как двигатели постоянного тока и т. Д.
8. Интерпретируемое управление. Этот контроллер используется для обеспечения отложенного управления рабочей программой.Интерпретация может быть внутренней или внешней.
9. Специальный функциональный блок — Некоторые специальные микроконтроллеры, изготовленные для специальных устройств, таких как космические системы, роботы и т. Д., Содержат этот специальный функциональный блок. Этот специальный блок имеет дополнительные порты для выполнения некоторых специальных операций.

Типы микроконтроллеров:
Микроконтроллеры делятся на категории в соответствии с их памятью, архитектурой, битами и наборами команд
.Итак, давайте обсудим типы микроконтроллеров:

бит:
8-битный микроконтроллер выполняет логические и арифметические операции. Примером 8-битного микроконтроллера является Intel 8031/8051. Микроконтроллер
16 бит работает с большей точностью и производительностью в отличие от 8-битного.
Примером 16-разрядного микроконтроллера является Intel 8096.

32-разрядный микроконтроллер используется в основном в устройствах с автоматическим управлением, таких как офисные машины, имплантируемые медицинские приборы и т. Д.Для выполнения любых логических или арифметических функций требуются 32 — битные инструкции.

Память:

  • Микроконтроллер с внешней памятью — когда встроенная структура построена с микроконтроллером, который не включает в себя все функционирующие блоки, существующие на микросхеме, он называется микроконтроллером внешней памяти. Для иллюстрации — микроконтроллер 8031 ​​не имеет памяти программ на микросхеме.
  • Микроконтроллер со встроенной памятью — когда встроенная структура построена с микроконтроллером, который состоит из всех функциональных блоков, существующих на микросхеме, он называется микроконтроллером встроенной памяти.Для иллюстрации — микроконтроллер 8051 имеет всю память программ и данных, счетчики и таймеры, прерывания, порты ввода / вывода и, следовательно, свой микроконтроллер встроенной памяти.

Набор инструкций:
CISC-CISC означает компьютер со сложным набором инструкций, он позволяет пользователю применять 1 инструкцию как
в качестве альтернативы многим простым инструкциям.

RISC-RISC означает компьютеры с сокращенным набором команд. RISC сокращает время работы на
, сокращая тактовый цикл на инструкцию.

Архитектура памяти:

  • Гарвардский микроконтроллер с архитектурой памяти
  • Принстонский микроконтроллер с архитектурой памяти

8051 микроконтроллер:
Наиболее широко используемый набор микроконтроллеров относится к семейству 8051. Микроконтроллеры 8051 по-прежнему остаются идеальным выбором для огромной группы любителей и экспертов. В течение 8051 года человечество стало свидетелем самого революционного набора микроконтроллеров. Первоначально микроконтроллер 8051 был изобретен Intel.Двое других членов этого семейства 8051 —

  • 8052-Этот микроконтроллер имеет 3 таймера и 256 байт ОЗУ. Кроме того, он имеет все функции традиционного микроконтроллера 8051. Микроконтроллер 8051 является частью микроконтроллера 8052.
  • 8031 ​​- Этот микроконтроллер меньше ПЗУ, за исключением того, что он имеет все функции традиционного микроконтроллера 8051. Для исполнения в его микросхему можно добавить внешнее ПЗУ размером 64 Кбайт.
Микроконтроллер

8051 задействует 2 различных типа памяти, такие как NV-RAM, UV-EPROM и Flash.

8051 Архитектура микроконтроллера:
Микроконтроллер 8051 — это восьмиразрядный микроконтроллер, выпущенный в 1981 году корпорацией Intel. Он доступен в 40-контактном DIP-корпусе (двухрядный корпус). Он имеет 4 КБ ПЗУ (программируемое пространство на кристалле) и 128 байтов встроенного ОЗУ, при желании 64 КБ внешней памяти могут быть связаны с микроконтроллером. Есть четыре параллельных 8-битных порта, которые легко программируются, а также адресуются. Встроенный кварцевый генератор интегрирован в микроконтроллер с тактовой частотой 12 МГц.В микроконтроллере есть последовательный порт ввода / вывода, который имеет 2 контакта. В него также встроены два таймера по 16 бит; эти таймеры могут использоваться как таймеры для внутреннего функционирования, а также как счетчики для внешнего функционирования. Микроконтроллер состоит из 5 источников прерываний, а именно: прерывание последовательного порта
, прерывание от таймера 1, внешнее прерывание 0, прерывание от таймера 0, внешнее прерывание 1. Режим программирования этого контроллера micro-
включает в себя GPR (регистры общего назначения), SFR (специальные регистры). регистры функций) и SPR (регистры специального назначения).

PIC Микроконтроллер:
Контроллер периферийного интерфейса (PIC), предоставленный Micro-chip Technology для классификации своих микроконтроллеров с одиночным чипом. Эти устройства оказались чрезвычайно успешными в 8-битных микроконтроллерах. Основная причина этого заключается в том, что Micro-Chip Technology постоянно модернизирует архитектуру устройства и включает в микроконтроллер столь необходимые периферийные устройства, чтобы удовлетворить потребности клиентов. Микроконтроллеры PIC очень популярны среди любителей и промышленников; это единственная причина широкой доступности, низкой стоимости, большой базы пользователей и возможности последовательного программирования.

Архитектура микроконтроллера PIC:
Архитектура 8-битных микроконтроллеров PIC может быть классифицирована следующим образом:
1. Архитектура базовой линии — В базовую архитектуру включены микроконтроллеры PIC семейства PIC10F, за исключением части PIC12 и PIC16. семьи также включены. Эти устройства используют 12-битную архитектуру программного слова с альтернативами от шести до двадцати восьми выводов.
Кратко определенный набор атрибутов базовой архитектуры позволяет получать наиболее прибыльные продуктовые решения.Эта архитектура идеально подходит для гаджетов с батарейным питанием. Серия PIC10F200 — еще один недорогой 8-битный микроконтроллер флэш-памяти с 6-контактным корпусом.

2. Архитектура среднего диапазона — в эту среднюю линию добавлены семейства PIC12 и PIC16, которые атрибутируют 14-битную архитектуру программного слова. Гаджеты среднего уровня PIC16 предлагают широкий спектр альтернативных пакетов (от 8 до 64 пакетов) с низким и высоким уровнем встраивания периферийных устройств
. Это устройство PIC16 поддерживает различные аналоговые, цифровые и последовательные периферийные устройства, такие как SPI, USART, I2C, USB, ЖК-дисплеи и аналого-цифровые преобразователи.Микроконтроллеры PIC16 среднего уровня обладают функцией приостановки управления с восьмиуровневой аппаратной нагрузкой.
3. Высокопроизводительная архитектура. Высокопроизводительная архитектура включала семейство устройств PIC18. Эти микроконтроллеры используют 16-битную архитектуру программного слова вместе с альтернативами от 18 до 100 выводов. Устройства PIC18 представляют собой высокопроизводительные микроконтроллеры со встроенными аналого-цифровыми преобразователями. Все микроконтроллеры PIC18 объединяют высокоразвитую архитектуру RISC, которая поддерживает флеш-устройства.PIC18 имеет улучшенные атрибуты фундамента, 32 уровня глубокой нагрузки и несколько внутренних и внешних прерываний.

Микроконтроллер AVR:
AVR, также известный как Advanced Virtual RISC, представляет собой 8-битный микроконтроллер с одиночным чипом RISC с 8-разрядной архитектурой Гарварда. Он был изобретен Атмелем в 1966 году. Архитектура Гарварда означает, что программа и данные накапливаются в разных местах и ​​используются одновременно. Это было одно из передовых семейств микроконтроллеров, в которых встроенная флэш-память использовалась в основном для хранения программ, в отличие от одноразовых программируемых EPROM, EEPROM или ROM, используемых другими микроконтроллерами одновременно.Флэш-память — это энергонезависимая (постоянная при отключении питания) программируемая память. Архитектура микроконтроллера AVR: Архитектура микроконтроллера AVR
была разработана Альф-Эгилем Богеном и Вегардом Волланом. Название AVR происходит от имен разработчиков архитектуры микроконтроллера. AT90S8515 был передовым микроконтроллером, основанным на архитектуре AVR; с другой стороны, первым микроконтроллером, который поразил коммерческий рынок, был AT90S1200, выпущенный в 1997 году.

Все SRAM, Flash и EEPROM объединены в одном кристалле, что устраняет потребность в любой другой внешней памяти в максимальном количестве устройств. Несколько устройств содержат альтернативу параллельной внешней шины, чтобы добавить дополнительные устройства памяти данных. Приблизительно все устройства, за исключением микросхем TinyAVR, имеют последовательный интерфейс, который используется для связи больших последовательных микросхем Flash и EEPROM.

AMR Микроконтроллер:
AMR — это название компании, которая разрабатывает архитектуру микропроцессоров.Он также занимается лицензированием их для производителей, которые производят настоящие чипы. На самом деле AMR — это настоящая 32-битная архитектура RISC. Первоначально он был разработан в 1980 году компанией Acorn Computers Ltd. Этот базовый микропроцессор AMR не имеет встроенной флэш-памяти. ARM специально разработан для устройств с микроконтроллерами, его легко обучить и использовать, но он достаточно мощный для самых сложных встраиваемых устройств.

Архитектура микроконтроллера AMR:
Архитектура AMR представляет собой 32-битный RISC-процессор, разработанный ARM Ltd.Благодаря своим характеристикам энергосбережения центральные процессоры ARM преобладают на рынке мобильной электроники, где снижение энергопотребления является жизненно важной целью при проектировании. Архитектура ARM состоит из нижележащих элементов RISC: —

  • Максимальное функционирование за один цикл
  • Постоянный регистровый файл размером 16 × 32 бита.
  • Загрузить или сохранить архитектуру.
  • Заданная ширина инструкции 32 бита для упрощения конвейерной обработки и декодирования при минимальной плотности кода.
  • Для несогласованного доступа к памяти нет поддержки
Применение микроконтроллера

: Микроконтроллеры
предназначены для встроенных устройств по сравнению с микропроцессорами, которые используются в ПК или других универсальных устройствах
.Микроконтроллеры используются в автоматически управляемых изобретениях и устройствах, таких как электроинструменты, имплантируемые медицинские устройства, системы управления автомобильными двигателями, офисные машины, устройства дистанционного управления, игрушки и многие другие
встроенных систем. Уменьшая размер и затраты по сравнению с конструкцией, в которой используются другой микропроцессор, устройства ввода-вывода и память, микроконтроллеры делают недорогой цифровой контроль все большего числа устройств и операций.Микроконтроллеры смешанного сигнала
являются общими; Сборка аналоговых компонентов требовала управления нецифровыми электронными структурами.

Применение микроконтроллера в повседневных устройствах:

  • Светочувствительные и управляющие устройства
  • Устройства измерения и контроля температуры
  • Устройства обнаружения пожара и безопасности
  • Промышленные контрольно-измерительные приборы
  • Устройства управления технологическим процессом


Применение микроконтроллера в промышленных устройствах управления:

  • Промышленные контрольно-измерительные приборы
  • Устройства управления технологическими процессами


Применение микроконтроллера в измерительных приборах:

  • Вольтметр
  • Измерение вращающихся объектов
  • Счетчик тока
  • Переносные измерительные системы

Источник: www.electronicshub.org/microcontrollers/

Устройства ввода и вывода (микроконтроллеры)

11,1

В этом разделе

мы представляем упрощенную модель оборудования, используемую для понимания процедур ввода-вывода. Мы также обсудим простые порты ввода и вывода, чтобы предоставить достаточно информации для последующих разделов этого руководства.

Рисунок 11.1. Упрощенная схема микрокомпьютера (идентичная рисунку 1.1)
Вспомните из темы 1, что компьютер разделен на свои основные компоненты: контроллер, оператор данных (арифметический / логический блок), память и блок ввода-вывода (см. Рисунок 11 .1). Инструкции ввода и вывода используют тот же адрес и шину данных, что и инструкции загрузки и сохранения с памятью, но действие инструкций ввода и вывода на оборудовании ввода-вывода немного отличается от действия инструкций загрузки и сохранения в памяти. Во многих микроконтроллерах для чтения или записи в память используются разные инструкции, чем для операций ввода или вывода, хотя по существу одни и те же контакты используются для каждой инструкции. Однако (см. Рисунок 11.2) в микроконтроллерах, таких как Motorola 6812, инструкция загрузки, используемая для чтения данных из памяти, таких как слова 1, 2 или 3, также может использоваться для ввода данных, таких как слово 0, и Команда store, используемая для хранения данных в памяти, таких как слова 1, 2 или 3, также может использоваться для вывода данных, таких как слово 0.

Рисунок 112. Память и ее подключение к MPU (сравните с рисунком 1.3)
Определенные 8-битные или 16-битные ячейки памяти выбираются в качестве портов вывода, соответствующих аппаратному компоненту, называемому устройством вывода, который имеет выходные линии подключены к внешнему миру. Определенные 8-битные или 16-битные ячейки памяти выбираются в качестве портов ввода, соответствующих аппаратному компоненту, называемому устройством ввода, у которого есть входные линии, идущие из внешнего мира.


С точки зрения устройства ввода-вывода, каждый адрес,

данных, или линия управления имеет сигнал, который является (логической) единицей, если напряжение выше определенного порогового уровня, и (логическим) нулем, если напряжение ниже этого уровня.Напряжения, соответствующие (логической) единице и (логическому) нулю, также называются высоким сигналом и низким сигналом соответственно. Тактовый сигнал попеременно то низкий, то высокий, периодически в виде прямоугольной волны. Тактовый сигнал между переходами от высокого к низкому называется тактовым циклом. В каждом тактовом цикле микроконтроллер может считывать слово из входного порта, например слово 3, помещая адрес слова, которое должно быть прочитано, на адресную шину и переводя строку чтения / записи в высокий уровень в течение тактового цикла.В конце тактового цикла устройство поместит данные на вход
строк на шине данных, а процессор скопирует слово на шине данных в некоторый регистр внутренней памяти. Микроконтроллер также может записывать слово в выходной порт, такое как слово 3, по определенному адресу за один такт, помещая адрес на адресную шину, помещая слово, которое будет записано на шину данных, и делая сигнал низким. на линии чтения / записи в течение тактового цикла. В конце такта микроконтроллер запишет слово на шину данных в устройство.Записанные данные будут доступны на выходных линиях устройства до тех пор, пока не будут изменены другой командой вывода.
Например, всякий раз, когда микроконтроллер записывает данные в ячейку $ 0000, например, в инструкции
STAA $ 00
, записанные данные помещаются в выходные линии устройства. Эта инструкция может использовать режим адресации нулевой страницы, потому что адрес находится в нулевой позиции. Простейший выходной порт доступен для записи, но не для чтения: эта «постоянная память» обычно является темой только для сборника анекдотов компьютерных ученых, но это реальная возможность для выходного порта.
Например, местоположение $ 0000 может быть портом ввода, и будет создано аппаратное устройство ввода для ввода данных с этого порта. Каждый раз, когда микроконтроллер считывает данные из ячейки $ 0000, как в инструкции
LDAA $ 00
, сигналы на входных линиях устройства ввода будут считываться в микроконтроллер точно так же, как слово, считываемое из памяти. Обратите внимание, что операция ввода «делает снимок» данных, подаваемых в устройство ввода, в конце последнего тактового цикла инструкции загрузки и нечувствительна к значениям данных до или после этой точки в последнем тактовом цикле.Последний аспект заключается в том, можно ли читать порт, записывать в него или и то, и другое.

В некотором смысле основные устройства ввода и вывода обманывают микроконтроллеры.

Микроконтроллер считает, что он читает или записывает слово в свою память по некоторому адресу. Однако разработчик микроконтроллера выбрал этот адрес в качестве порта ввода или вывода и построил оборудование для ввода или вывода данных, которые считываются или записываются в этот порт. С помощью оборудования разработчик обманом заставляет микроконтроллеры вводить данные, когда он читает слово по адресу входного порта, или выводить данные, когда он записывает данные в слово по адресу выходного порта.

Одно из наиболее распространенных ошибочных предположений в архитектуре портов — это то, что порты ввода-вывода имеют ширину восемь бит.

Например, в 6812 байтовые инструкции LDAB используются в программах ввода-вывода во многих текстах. На микросхемах ввода-вывода имеется ряд 16-битных портов ввода-вывода, предназначенных для 16-битных микроконтроллеров. Но ни 8, ни 16 бит не являются фундаментальной шириной. В этом разделе, где мы делаем упор на основы, мы избегаем этого предположения. Конечно, если порт имеет ширину 8 бит, можно использовать инструкцию LDAB и использовать ее в C, обращаясь к переменной типа char.Также есть 16-битные порты. Они могут быть прочитаны инструкциями LDD или как переменная типа int в C или C ++. Порт может иметь ширину 1 бит; если да, то 1-битный входной порт считывается в бите 7; его чтение установит бит кода состояния N, который легко проверяется инструкцией BMI. Многие порты читают или записывают данные ASCII. Данные ASCII имеют ширину 7 бит, а не 8 бит. Если вы читаете выход 10-битного аналого-цифрового преобразователя, вы должны читать 10-битный порт.

Как выбрать микроконтроллер для вашего нового продукта

Как выбрать подходящий микроконтроллер для конкретного оборудования? Эта статья покажет вам все факторы, которые нужно учитывать при выборе самого лучшего микроконтроллера.

При выборе подходящего микроконтроллера для проекта вы должны учитывать стоимость, производительность, энергопотребление и общий размер. Доступность соответствующих программных и аппаратных средств также является важным фактором.

Поддержка выбранной платформы также очень важна — не только со стороны поставщика, но и со стороны сообщества в целом. Также помогает, если у выбранного микроконтроллера есть легкодоступная плата для разработки.

Наконец, время разработки может быть значительно сокращено, если выбранный микроконтроллер имеет обширные, полностью отлаженные программные библиотеки с хорошо документированными интерфейсами прикладного программирования или API.

В этой статье будут представлены только микроконтроллеры, которые в целом соответствуют указанным выше критериям.

Все современные микроконтроллеры имеют общие основные функции. Помимо процессора, у них есть определенное количество флэш-памяти, которая используется для хранения кода приложения, некоторого количества SRAM и, в большинстве случаев, некоторого количества EEPROM.

Им нужен источник тактовой частоты, который обычно обеспечивается либо внутренним генератором резистора-конденсатора (RC), либо использованием внешнего кварцевого резонатора для более критичных по времени приложений.У них есть несколько цифровых портов ввода-вывода и как минимум один таймер / счетчик.

Кроме того, помимо микроконтроллеров очень низкого уровня, большинство из них имеют по крайней мере один UART для последовательной связи. Помимо этого, микроконтроллеры различаются объемом памяти, который они имеют, количеством и типом других периферийных устройств, интегрированных в чип, и скоростью, с которой они запускают пользовательские приложения.

Это зависит не только от исходной тактовой частоты; это также зависит от объема данных процессора и любых включенных функций аппаратного ускорения.

Микроконтроллеры для встраиваемых систем в основном делятся на три категории в зависимости от ширины их шин данных: 8-битные, 16-битные и 32-битные. Есть и другие, но самые популярные.

В общем, 8-разрядные микроконтроллеры предназначены для приложений нижнего уровня, 32-разрядные — для приложений более высокого уровня, а 16-разрядные — для приложений среднего уровня.

Безусловно, большинство продуктов, над которыми я работаю, как правило, включают 32-битные микроконтроллеры, но 8- или 16-битные микроконтроллеры могут быть хорошим выбором для недорогих продуктов низкого уровня.

8-битные микроконтроллеры

Если приложение не предъявляет очень высоких требований к вычислительной мощности и имеет относительно небольшой размер, то имеет смысл рассмотреть 8-битный микроконтроллер.

Для справки: большинство Arduinos основано на 8-битных микроконтроллерах. Итак, если вы создали свой ранний прототип с использованием Arduino, вы можете использовать 8-битный микроконтроллер в своем конечном продукте.

Не оставляйте без внимания цену, хотя и направляйте ваше решение, и во многих случаях 32-битные микроконтроллеры могут быть дешевле 8-битных чипов.

Например, Atmega328p — это 8-битный микроконтроллер, использующий Arduino Uno. При объемах порядка 10 тыс. Штук он стоит немногим более 1 доллара. Он работает на частоте 20 МГц и включает 32 КБ флэш-памяти и 2 КБ ОЗУ.

С другой стороны, вы можете купить 32-битный микроконтроллер, работающий на частоте 48 МГц, с аналогичной памятью всего за 60 центов. Вероятно, это связано с тем, что популярность 32-битных микроконтроллеров снижает их стоимость.

При этом доступны даже более дешевые 8-битные микроконтроллеры, которые стоят менее 25 центов при аналогичных объемах.

8-битные микроконтроллеры

обычно следует рассматривать для приложений, которые предназначены только для выполнения одной работы, с ограниченным пользовательским интерфейсом и небольшой обработкой данных.

8-битные микроконтроллеры

бывают всех размеров от небольших 6-контактных устройств до микросхем с 64-контактными контактами. Они имеют размеры флэш-памяти от 512 байт до 256 КБ, размеры SRAM от 32 до 8 КБ или более и EEPROM от 0 до 4 КБ или более. Минимальная система может быть такой же простой, как одна микросхема с байпасным конденсатором на шине питания.

Три самых популярных линейки 8-битных микроконтроллеров — это серия 8051, серия PIC от Microchip и серия AVR от Atmel, теперь часть Microchip.

Серия 8051

Первоначально от Intel, а теперь производимый другими, этот микроконтроллер до сих пор широко используется, он встроен во многие устройства.

Хотя они доступны как отдельные устройства, 8051 в настоящее время в основном используются в качестве ядер IP (интеллектуальной собственности), которые встроены в микросхемы специализированных микросхем для конкретных приложений, таких как некоторые беспроводные радиоприемопередатчики.

Очень редко 8051 может быть правильным выбором в качестве основного микроконтроллера для вашего продукта.

Серия PIC

Микроконтроллеры

PIC довольно популярны и имеют широкую поддержку как Microchip, так и сторонних производителей.

Microchip предоставляет свою интегрированную среду разработки (IDE) MPLAB ® X, которая включает в себя C-компилятор бесплатно. Также бесплатно в качестве подключаемого модуля IDE доступен конфигуратор кода MPLAB, который генерирует C-код для встроенных периферийных устройств.

Затем его можно интегрировать в код приложения. Существуют модели PIC с комбинациями интерфейсов USART, SPI, I 2 C, ADC, USB, LIN, CAN и другими. Microchip также предлагает несколько инструментов разработки, включая MPLAB PICkit 4, ICD 4 и Real ICE.

Также доступны более качественные коммерческие компиляторы с лучшей оптимизацией кода. Вот краткое справочное руководство по микроконтроллерам PIC в формате PDF.

Серия AVR

AVR — еще одна серия очень популярных 8-битных микроконтроллеров.Хотя они находятся в том же пространстве, что и описанные выше PIC, и имеют сопоставимые характеристики, у них есть одна большая претензия на славу: Arduino.

Рисунок 1. Большинство плат Arduino основаны на 8-битных микроконтроллерах AVR

Все оригинальные Arduinos, такие как Uno, Leonardo и Mega, используют микроконтроллеры AVR. Из-за очень широкого диапазона доступных библиотек для Arduinos, AVR заслуживают серьезного рассмотрения для 8-битных приложений, даже если только для подтверждения концептуальных прототипов.

Поскольку библиотеки Arduino написаны на C ++, их можно легко включить в любое приложение, написанное на C / C ++.

Инструменты разработки программного обеспечения включают AVR studio или, если используется Arduino, обычно используются Arduino IDE и Platform IO. Компилятор, используемый в этих IDE, — это AVR GCC, бесплатный, очень хорошо поддерживаемый и поддерживаемый компилятор C / C ++.

Инструменты разработки оборудования включают Atmel ICE и PICkit 4. Кроме того, все еще широко доступны зрелые инструменты, такие как STK600 и AVR Dragon.Вот ссылка на краткое справочное руководство по микроконтроллерам AVR в формате PDF.

16-битные микроконтроллеры

16-разрядные микроконтроллеры

— это следующий шаг по сравнению с 8-разрядными, при этом они имеют многие из тех же атрибутов. Они быстрее, поддерживают еще больше периферийных устройств и, как правило, предлагают больше памяти, как флэш-памяти, так и SRAM.

В дополнение к большему количеству контактов ввода-вывода, большинство из них также имеют аппаратные умножители, которые значительно быстрее и используют меньше программной памяти по сравнению с чисто программными реализациями.

Легко найти устройства, которые имеют как АЦП, так и ЦАП, или устройства с емкостными сенсорными датчиками, драйверами сегментированных ЖК-дисплеев и Ethernet.

Внутри эти устройства также имеют аппаратные блоки, которые обычно не встречаются в устройствах нижнего уровня. К ним относятся механизмы шифрования, операционные или программируемые усилители усиления и контроллеры прямого доступа к памяти.

Хотя 16-битные микроконтроллеры можно найти у различных производителей, таких как Microchip (их dsPIC33 — популярный выбор), NXP, Infineon или Cypress, серия TI MSP430 будет представлена ​​здесь как типичный пример этого сегмента микроконтроллеров.

TI MSP430 серии

MSP430 — это серия 16-разрядных микроконтроллеров с очень низким энергопотреблением, которые доступны во многих вариантах. Они варьируются от моделей общего назначения до очень специализированных.

Одна интересная особенность специализированных вариантов этих микроконтроллеров заключается в том, что они фактически разветвляются на две крайности: очень специализированные, очень недорогие модели и высокопроизводительные модели с интерфейсами аналоговых датчиков и цифровой обработкой сигналов (DSP).

Этот ультразвуковой датчик потока является примером высокотехнологичного применения.На нижнем уровне TI также производит микросхемы на базе MSP430, которые решают многие очень специфические аппаратные функции. Для получения более подробной информации см. Этот электронный документ.

Например, нужен интерфейс SPI-UART, расширитель ввода-вывода или мост UART-UART? Все это есть, и все это менее чем за 0,3 доллара за этот чип.

Наконец, конечно, MSP430 поддерживается рядом недорогих инструментов и наборов для разработки.

В таблице 1 ниже показаны дополнительные функции, доступные в некоторых основных версиях.

MSP430FR2x MSP430FR4x MSP430FR5x MSP430FR6x
Программная память До 32 КБ до 16 КБ До 256 КБ До 128 КБ
Количество контактов от 16 до 64 в различных упаковках от 48 до 64 в различных упаковках от 24 до 100 в различных упаковках от 56 до 100 в различных упаковках
Периферийные устройства обычно не доступны в 8-битных контроллерах ЦАП, PGA, трансимпедансные и операционные усилители Логика ИК-модуляции DMA, AES DMA, AES
Драйверы сегментов ЖК-дисплея вверх 256 до 320

Таблица 1 — Обзор основных функций MSP430

32-битные микроконтроллеры

32-разрядные микроконтроллеры

— это мощные устройства с функциями микропроцессора.Некоторые из расширенных функций включают конвейерную обработку команд, прогнозирование ветвлений, вложенные векторные прерывания (NVI), блоки с плавающей запятой (FPU), защиту памяти и встроенные отладчики.

ПРИМЕЧАНИЕ: Обязательно загрузите бесплатное руководство в формате PDF . 15 шагов для разработки нового электронного оборудования .

Конвейерная обработка инструкций означает, что ядро ​​процессора предварительно выбирает последующие инструкции, а прогнозирование ветвления предварительно выбирает следующие инструкции для обоих результатов условия if-else, тем самым ускоряя выполнение кода.

NVI обеспечивает приоритеты прерываний, при которых одно прерывание может вытеснить прерывание с более низким приоритетом.

FPU

могут выполнять вычисления с плавающей запятой намного быстрее, чем методы, реализованные в ПО.

Защита памяти гарантирует, что код приложения не сможет случайно перезаписать важные разделы, например, предназначенные для операционной системы.

Наконец, встроенная отладка позволяет заглядывать в регистры и другие области системы, чтобы облегчить отладку кода приложения.Все это вместе позволяет этим микроконтроллерам запускать большие, быстрые и надежные приложения.

Кроме того, их чистая вычислительная мощность означает, что они могут легко поддерживать операционные системы реального времени (RTOS), которые, в свою очередь, обеспечивают возможности многозадачности.

Несмотря на то, что на рынке представлено много 32-битных микроконтроллеров, в этой заметке основное внимание будет уделено устройствам на базе ARM Cortex M, с особым упоминанием ESP32 от Espressif.

ARM Holdings фактически разрабатывает только IP-адреса процессорных ядер, которые они затем лицензируют различным поставщикам полупроводников, которые включают их вместе с некоторыми периферийными устройствами в свои собственные кремниевые микросхемы.Многие производители микросхем предлагают микроконтроллеры на базе архитектуры Cortex-M.

Два известных производителя чипов на базе ARM — это Atmel со своей линейкой устройств SAM и STMicroelectronics со своей линейкой продуктов STM32.

Устройства SAM заслуживают упоминания здесь из-за их использования в некоторых Arduino-совместимых платах. Однако в целом устройства STM32 предлагают больше вариантов, и им следует уделять первоочередное внимание при проектировании встроенного 32-разрядного микроконтроллера.

Микроконтроллеры STM32

Ядра

ARM Cortex M бывают разных версий.Самыми популярными из них являются M0 / M0 +, M1, M3, M4 и M7, каждый из которых предлагает все более высокую производительность. Микроконтроллеры STM32 содержат ядра M0 / M0 +, M3, M4 или M7.

На рис. 1 показано семейство микроконтроллеров на базе ARM Cortex M STM32 и их предполагаемые сегменты приложений.


Рисунок 2 — Семейство микроконтроллеров STM32

В каждой из категорий, показанных на рисунке 1, есть много семейств, которые можно выбрать для более точного соответствия заданному приложению.

Например, на рисунке 2 показаны основные варианты, доступные в категории «мейнстрим», и их относительная кривая производительности. Обратите внимание, что внутри каждого семейства существует множество вариантов с различными комбинациями периферийных устройств и объемом памяти.

Фактически, в настоящее время существует более трехсот микроконтроллеров STM32, доступных в этой категории.


Рисунок 3 — Семейство микроконтроллеров в категории STM32 Mainstream

Поддержка оборудования STM32: Семейство STM32 поддерживается широким спектром аппаратных средств, предоставляемых как ST Microelectronics, так и сторонними производителями.

Недорогой внутрисхемный отладчик / программатор — STLink V2. Он сделан ST и доступен в таких местах, как Digi-Key; однако также доступны очень недорогие клоны.

ST Microelectronics также предлагает большой выбор плат для разработки семейств Nucleo и Discovery.

Оба содержат интерфейс отладки STLink. Все, что требуется, — это компьютер с USB-портом, на котором запущено соответствующее программное обеспечение для оценки выбранного микроконтроллера.

Платы

Discovery включают дополнительные внешние периферийные устройства, такие как датчики MEM и емкостные сенсорные панели.Однако у Nucleos есть заголовки, совместимые с щитами Arduino.

Рисунок 4 — Макетная плата ST Discovery для микроконтроллера STM32F407

Прежде чем покинуть этот раздел, стоит упомянуть еще об одной очень недорогой плате для разработки. Эта плата, обычно известная как Blue Pill, оснащена чипом на базе STM32F103 Cortex M3 и стоит менее 2 долларов США из некоторых источников.

Привлекательной особенностью этой платы является то, что ее можно сделать совместимой с Arduino, чтобы можно было использовать Arduino IDE или Platform IO для написания и загрузки кода для быстрой проверки концептуальных проектов.

Хотя процесс обеспечения совместимости с Arduino немного сложен, есть несколько мест, где продаются готовые к Arduino платы. Просто выполните поиск по запросу «STM32duino».

Чтобы узнать, как разработать собственную плату микроконтроллера на базе STM32, обязательно просмотрите это руководство и ознакомьтесь с этим подробным платным курсом.

Поддержка программного обеспечения STM32: STMicroelectronics предоставляет версию пакета разработки ARM Mbed для всей линейки продуктов STM32. Сюда входят IDE, компилятор и обширный набор библиотек.

Для разработчиков, которые предпочитают использовать другие компиляторы, ST предоставляет свой STMCube. Это программа-генератор кода, которая производит коды инициализации для периферийных устройств STM32.

При этом нет необходимости полностью настраивать биты нескольких регистров для настройки периферийных устройств, таких как, например, порты ввода-вывода или таймеры.

ESP32

ESP32 — это микроконтроллер от Espressif Systems. Как показано на рисунке 3, он имеет все функции типичного 32-разрядного микроконтроллера.

Рисунок 5 — Модуль Espressif ESP32

Однако то, что отличает этот конкретный микроконтроллер от других, — это наличие в микросхеме оборудования Wi-Fi и Bluetooth.

Это включает не только стеки протоколов, но и сами радиоприемопередатчики. ESP32 также доступен в виде небольшого предварительно сертифицированного модуля со встроенной антенной.

Для приложений, требующих подключения по Wi-Fi или Bluetooth, ESP32 заслуживает серьезного внимания.Цена ESP32 (как дискретного чипа, так и модуля) очень доступная, особенно с учетом количества функций и производительности, заложенных в этот чип.

Рисунок 6 — Функциональная блок-схема ESP32

Заключение

Микроконтроллер, пожалуй, самый важный компонент, который вы должны выбрать для своего продукта. Переход на новый микроконтроллер в середине проекта может стать кошмаром, поэтому убедитесь, что вы сделали этот выбор заранее.

Другие компоненты в конструкции, как правило, можно изменить, не требуя масштабных общесистемных изменений.Это не относится к микроконтроллеру, который служит ядром вашего продукта.

Выбирая микроконтроллер, вы обычно выбираете тот, который дает вашему продукту пространство для роста. Например, если вы определили, что вам требуется 16 контактов GPIO, вы не хотите выбирать микроконтроллер только с 16 контактами GPIO.

Что произойдет, если вы решите добавить новую кнопку в будущем, и вам понадобится еще один вывод GPIO? Если ваш микроконтроллер не дает вам возможности для роста, то вы можете обнаружить, что кажущиеся простыми обновления конструкции в будущем потребуют масштабной модернизации, поскольку необходим новый микроконтроллер.

С другой стороны, вы не хотите выбирать больше производительности или функций, чем вы когда-либо предполагали.

Например, если ваш продукт просто отслеживает температуру и влажность, вам никогда не понадобится усовершенствованный 32-битный микроконтроллер, работающий на сотнях МГц. Это было бы излишним, поскольку добавляло ненужных затрат и усложняло дизайн вашему продукту.

Вместо этого вам нужно найти золотую середину между наличием места для роста, если это необходимо, но при этом не платить за производительность или функции, которые вам никогда не понадобятся.

Наконец, не забудьте загрузить бесплатный PDF-файл : Ultimate Guide по разработке и продаже нового электронного оборудования . Вы также будете получать мой еженедельный информационный бюллетень, в котором я делюсь премиальным контентом, недоступным в моем блоге.

Другой контент, который может вам понравиться:

Процессоры

отвечают требованиям проектирования медицинских устройств

Медицинские устройства включают в себя широкий спектр продуктов, от ультразвукового оборудования и имплантируемых устройств до домашних глюкометров и фитнес-трекеров.Каждое приложение требует разных требований, но все они ищут микропроцессоры (MPU) и микроконтроллеры (MCU), которые могут обеспечить производительность в областях исполнения, надежности, безопасности, энергосбережения и подключения. Многие из этих улучшений производительности можно использовать в различных приложениях.

Растущее распространение носимой электроники и потребность в медицинской электронике, отслеживающей и контролирующей здоровье пациента, обусловлены старением населения и растущей осведомленностью о своем здоровье.Рост количества подключенных медицинских устройств также побуждает производителей микросхем устранять риски кибербезопасности на уровне микросхем.

Сверхнизкое энергопотребление особенно важно в приложениях, которым требуется доступ к сигналам в реальном времени, таким как температура, ускорение и скорость. Одна из тенденций, отмеченная в отчете MarketsandMarkets , — это потребность в микроконтроллерах со сверхнизким энергопотреблением с аналоговой периферией. Преимущества включают в себя высокую надежность, снижение шума, малую задержку и снижение затрат, что может быть выгодным для медицинских или медицинских устройств, таких как глюкометры, мониторы сердечного ритма и имплантируемые устройства.

Примером маломощного микроконтроллера со встроенным программируемым аналогом является серия микроконтроллеров Synergy S1 от Renesas Electronics Corp. Разработанный для упрощения конструкции и уменьшения количества материалов (BOM), микроконтроллер S1JA MCU Group оснащен корпусом Arm Cortex с частотой 48 МГц. -Ядро M23 и программируемые аналоговые функции и функции безопасности для высокоточного сбора и обработки сигнала датчика. Эти микроконтроллеры могут использоваться в ряде недорогих и маломощных промышленных датчиков Интернета вещей (IIoT).К ним относятся медицинские мониторы, расходомеры, мультисенсорные системы, контрольно-измерительные приборы и однофазные электросчетчики.

Группа S1JA включает пять микроконтроллеров с флеш-памятью 256 КБ, памятью SRAM 32 КБ и широким диапазоном рабочего напряжения от 1,6 В до 5,5 В. Каждый микроконтроллер включает блок смещения сенсора, который подает точную мощность на внешний сенсор, «Аналоговая матрица с широкими возможностями настройки, которая обрабатывает сложные алгоритмы для максимального преобразования сигнала и точных аналоговых измерений», — сказал Ренесас.

Микроконтроллеры S1JA обеспечивают расширенные аналоговые конфигурации, от базовых функций до более сложных аналоговых блоков, что позволяет разработчикам исключить несколько внешних аналоговых компонентов. Встроенные аналоговые компоненты включают высокоточный 16-битный аналого-цифровой преобразователь (АЦП), 24-битный сигма-дельта АЦП, 12-битный быстродействующий цифро-аналоговый преобразователь (ЦАП) операционные усилители с малым смещением на рельсах и компараторы высокой / малой мощности.


Микроконтроллеры Renesas S1JA обеспечивают расширенные аналоговые конфигурации, от базовых функций до более сложных аналоговых блоков.(Изображение: Renesas Electronics)

Сверхнизкое энергопотребление микроконтроллеров продлевает срок службы батарей для портативных устройств с батарейным питанием и для резервного питания. Программный режим ожидания потребляет всего 500 нА, что позволяет приложениям, работающим от батареи в течение 20 лет, длительное время находиться в спящем режиме.

Кроме того, микроконтроллеры оснащены функциями безопасности, в том числе встроенным ускорителем криптографии AES и генератором истинных случайных чисел (TRNG), а блоки защиты памяти обеспечивают фундаментальные блоки для разработки безопасной системы, которая подключается к облаку.

Программный пакет Renesas Synergy (SSP) поддерживает микроконтроллеры S1JA с драйверами HAL, платформами приложений и ОСРВ. SSP также включает шесть модулей, которые упрощают соединение настраиваемых внутренних аналоговых блоков. Разработчики встроенных систем могут использовать любую из сред разработки Renesas Synergy — e² studio или IAR Embedded Workbench — для создания и настройки своих проектов.

Renesas также разработала эталонный дизайн / решение , которое можно использовать для носимых продуктов для гальванической реакции кожи и портативных систем измерения состава тела.Измерения гальванического сопротивления кожи (GSR) и монитора состава тела (BCM) предоставляют биометрическую информацию, которая может использоваться для определения эмоционального состояния и расчета массы жира соответственно.

Это устройство с батарейным питанием выполняет измерения проводимости постоянного тока в режиме GSR и высокоточные измерения импеданса переменного тока в режиме BCM при низком энергопотреблении. По словам Ренесаса, разрешение и скорость АЦП имеют решающее значение для точности измерений GSR-BCM, наряду с компенсацией температуры кожи.

Решение GSR-BCM использует микроконтроллер Synergy S1JA для его аналоговых функций и функций с низким энергопотреблением. Он также включает Renesas RL78 / G1D для подключения по Bluetooth и ISL9203A для зарядки литий-ионных аккумуляторов.

RL78 / G1D — это 16-битный микроконтроллер с поддержкой Bluetooth с низким энергопотреблением и низким потреблением тока при токе передачи 4,3 мА (выход 0 дБм) и токе приема 3,5 мА. Элементы схемы, необходимые для подключения антенны, встроены, что упрощает схемотехнику и снижает стоимость за счет устранения необходимости во внешних деталях.Стек программного обеспечения поддерживает обновления программного обеспечения по беспроводной сети.

ISL9203A — это встроенное одноэлементное зарядное устройство для литий-ионных или литий-полимерных аккумуляторов, способное работать с входным напряжением до 2,4 В. Оно работает с различными типами адаптеров переменного тока.

Для портативных и беспроводных устройств, таких как фитнес-трекеры, эти приложения требуют низкого энергопотребления, повышенной безопасности и поддержки нескольких протоколов.

Недавним примером является модель Exynos i T100 от Samsung Electronics, которая объединяет процессор и память в одном чипе и поддерживает Bluetooth 5 Low Energy, Zigbee 3.0 и протоколы потоков. Для расширенной функциональности беспроводной связи чип предлагает режим одновременной работы с несколькими радиомодулями, который поддерживает два разных протокола одновременно. Таким образом, он может одновременно поддерживать Bluetooth и Zigbee или Bluetooth и Thread.

Разработанный для повышения безопасности и надежности устройств для связи на малых расстояниях, таких как носимые устройства для фитнеса, интеллектуальное освещение, домашняя безопасность и мониторинг, чип предлагает функции безопасности, которые защищают от потенциального взлома и других угроз.Решение предоставляет отдельный аппаратный блок подсистемы безопасности (SSS) для шифрования данных и физическую неклонируемую функцию (PUF), которая создает уникальный идентификатор для каждого набора микросхем.

Exynos i T100 состоит из Arm Cortex-M4F, который работает с тактовой частотой до 100 МГц, и памяти высокой плотности, включая флэш-память 1,2 МБ и SRAM, обеспечивающую 192 КБ и 24 КБ. Кроме того, он может работать при экстремальных температурах от -40 ° C до 125 ° C.

Samsung также предлагает эталонное решение для более быстрой разработки.Эталонная плата поддерживает интерфейс Shields, который можно подключить к плате Arduino для тестирования и управления датчиками. Он также предоставляет операционную систему и встроенные API-интерфейсы для протоколов подключения для разработки пользовательских приложений.

Разработанные для высокопроизводительных приложений для здоровья и благополучия, умного дома, промышленных и бытовых приложений, серия многоядерных микропроцессоров STMicroelectronics STM32MP1 с дистрибутивом Linux расширяет портфель микроконтроллеров STM32 за счет повышенной производительности, ресурсов и программного обеспечения с открытым исходным кодом.STM32MP1 с поддержкой вычислений и графики предлагает энергоэффективное управление в реальном времени и интеграцию с широкими возможностями.

Серия STM32MP1 позволяет разработчикам разрабатывать новый диапазон приложений с использованием гетерогенной архитектуры STM32, сочетающей ядра Arm Cortex-A и Cortex-M. Эта архитектура обеспечивает быструю обработку и выполнение задач в реальном времени на одном кристалле, обеспечивая при этом высокую энергоэффективность.


STMicroelectronics STM32MP1 обеспечивает повышенную производительность, ресурсы и программное обеспечение с открытым исходным кодом.(Изображение: STMicroelectronics)

ST приводит примеры экономии энергии. Остановив выполнение Cortex-A7 и запустив только более эффективный Cortex-M4, мощность обычно можно снизить на 25%. Переход из этого режима в режим ожидания дополнительно снижает энергопотребление в 2,5 тыс. Раз, поддерживая возобновление выполнения Linux за 1–3 секунды, в зависимости от приложения.

В STM32MP1 встроен процессор трехмерной графики (GPU) для отображения человеко-машинного интерфейса (HMI).Он поддерживает ряд внешних DDR SDRAM и флеш-памяти. Он также включает в себя большой набор периферийных устройств, которые могут быть выделены либо для Cortex-A / Linux, либо для Cortex-M / операций в реальном времени. Серия STM32MP1 доступна в различных корпусах BGA.

ST предлагает две оценочные платы ( STM32MP157A-EV1 и STM32MP157C-EV1 ) и два комплекта Discovery ( STM32MP157A-DK1 и STM32MP157C-DK2 ).

Кроме того, доступны три пакета разработчика, в зависимости от потребностей дизайнера:

Большие данные

Перемещение и анализ огромных объемов данных — большая проблема на многих конечных рынках.Эти сегменты включают медицинскую визуализацию, медицинские устройства, беспроводную бытовую электронику, а также автоматизацию заводов и зданий. Совместное использование большего количества данных требует более высокой безопасности, лучшей совместимости, более быстрой обработки, а также согласованной и более качественной связи.

Компания

Texas Instruments Inc. (TI) представила в начале этого года два устройства, использующих технологию на основе объемных акустических волн (BAW) , предназначенную для использования в приложениях с высокой скоростью передачи данных, например, в подключенном медицинском оборудовании.Эти новые устройства — это беспроводной MCU SimpleLink CC2652RB и сетевой синхронизатор LMK05318 для высокопроизводительной доставки данных.

Технология BAW объединяет опорные резонаторы тактовой частоты для обеспечения максимальной частоты при небольшом размере, что улучшает характеристики и увеличивает устойчивость к механическим воздействиям, таким как вибрация и удары. Это приводит к стабильной и непрерывной передаче данных, обеспечивая более точную синхронизацию данных проводных и беспроводных сигналов, поэтому данные можно обрабатывать быстро для повышения эффективности.

Сочетая в себе полную радиочастотную систему и встроенный преобразователь постоянного тока в постоянный, CC2652RB позиционируется как первый в отрасли беспроводной микроконтроллер без кристалла. Он объединяет резонатор BAW в корпусе QFN и устраняет необходимость во внешнем высокоскоростном кристалле с частотой 48 МГц. Более высокая степень интеграции также обеспечивает экономию места на печатной плате (PCB) от 10% до 15%.

Устройство CC2652RB обеспечивает отличное время автономной работы и позволяет работать с небольшими плоскими батареями и в приложениях для сбора энергии благодаря очень низкому активному РЧ-току и току микроконтроллера, а также току сна менее мкА с до 80 КБ четности защищенное хранение RAM.

Устройство CC2652RB сочетает в себе радиочастотный приемопередатчик с очень низким энергопотреблением и процессор Arm Cortex-M4F с частотой 48 МГц в платформе, поддерживающей несколько физических уровней и радиочастотных стандартов. Выделенный радиоконтроллер (Arm Cortex-M0) обрабатывает команды протокола RF низкого уровня, которые хранятся в ПЗУ или ОЗУ для сверхнизкого энергопотребления и большей гибкости. Контроллер датчика с его быстрым пробуждением и режимом сверхнизкого энергопотребления 2 МГц предназначен для выборки, буферизации и обработки как аналоговых, так и цифровых данных датчиков, сказал TI, что максимизирует время ожидания и снижает активную мощность в системе MCU. .

Кроме того, чип претендует на звание самого низкопотребляющего, мультистандартного устройства, поддерживающего Zigbee, Thread, Bluetooth Low Energy и проприетарные решения для подключения на частоте 2,4 ГГц на одном кристалле. Он работает в диапазоне температур от -40 ° C до 85 ° C, в отличие от многих решений на основе кристаллов, представленных в настоящее время на рынке. Доступен комплект разработчика TI LaunchPad на базе MCU CC2652B SimpleLink.

Производители микросхем

, такие как Intel Corp., также видят, что искусственный интеллект (AI) перемещается в приложения для медицинской визуализации и другие области, включая неотложную и неотложную помощь и диагностику, которые требуют большой вычислительной мощности.В свое время единственными реальными аппаратными решениями для глубокого обучения были графические процессоры.

Сегодня Intel предлагает процессоры Xeon Scalable (представленные в 2017 году), которые могут обрабатывать сложные гибридные рабочие нагрузки, включая модели с интенсивным использованием памяти, которые обычно используются в медицинской визуализации.

Корпорация Intel работала с Philips , чтобы показать, что серверы, использующие процессоры Intel Xeon Scalable, могут выполнять логический вывод для рентгеновских снимков и компьютерной томографии (КТ) без необходимости использования аппаратных ускорителей.Тесты показывают, что для многих рабочих нагрузок AI процессоры Xeon Scalable работают лучше, чем системы на базе графических процессоров.

Компании протестировали два медицинских изображения, подтверждающих концепцию : одно на рентгеновских снимках костей для моделирования прогнозирования костного возраста, а другое на компьютерной томографии легких для сегментации легких. Используя набор инструментов Intel Distribution of OpenVINO и другие программные оптимизации , Philips смогла повысить скорость в 188 раз для изображений в секунду для модели прогнозирования костного возраста и в 37 раз для модели сегментации легких по сравнению с исходными измерениями.

>> Эта статья изначально была опубликована на нашем дочернем сайте Electronic Products.

Продолжить чтение

Как выбрать микроконтроллер для Интернета вещей

Большинство приложений Интернета вещей требуют большего, чем просто добавление датчика к физическому объекту. Когда люди говорят об «умных объектах», они обычно имеют в виду добавление микроконтроллера, подключенного к Интернету (также известного как MCU ).

Микроконтроллеры

можно рассматривать как крошечные компьютеры, которые добавляются к любому физическому объекту или пространству, чтобы придать ему «мозг». Они содержат один или несколько компьютерных процессоров, а также память и программируемые периферийные устройства ввода / вывода — все в одной интегральной схеме.

Микропроцессоры

отличаются от микропроцессоров, которые используются в персональных компьютерах, поскольку они специально разработаны для встроенных приложений, в которых вычисления не являются единственной целью приложения.

Хотя микроконтроллеры обладают меньшими возможностями, чем стандартный компьютерный процессор, их низкая стоимость делает их более практичным вариантом для добавления вычислительных возможностей к объекту, пространству или процессу, у которого их нет.

Представьте себе склад, мост или промышленную машину, в которой обычно нет компьютера. В подобных случаях добавление микроконтроллера, подключенного к Интернету, обеспечивает достаточную вычислительную мощность для улучшения этих возможностей без увеличения стоимости и сложности стандартных компьютерных процессоров.

Основные характеристики микроконтроллеров

Чтобы определить, какой микроконтроллер лучше всего работает с вашим приложением, вам необходимо знать некоторые ключевые особенности микроконтроллеров и то, что они делают. Ниже приведены некоторые из спецификаций, с которыми вы столкнетесь и которые должны понять, глядя на лист данных для MCU:

  • Биты : Микроконтроллеры обычно продаются по количеству битов, которые они предлагают. Это влияет на скорость, с которой они могут выполнять нетривиальные вычисления.

  • RAM : RAM — это память с быстрым доступом, которая не сохраняет данные при отсутствии питания. Все микроконтроллеры поставляются с определенным объемом оперативной памяти, что позволяет микроконтроллеру быстро выполнять различные действия. Чем больше у вас есть, тем лучше, но добавленная оперативная память увеличивает стоимость MCU.

  • Флэш-память : Флэш-память — это память компьютера, которая сохраняет данные при отсутствии питания. По крайней мере, некоторые из них необходимы, и они очень полезны для таких функций, как автономное хранилище.

  • GPIO : GPIO обозначает контакты ввода / вывода общего назначения. Это контакты, которые вы будете использовать для подключения ваших датчиков и исполнительных механизмов к MCU и Интернету. Количество выводов может варьироваться от одного до сотен, в зависимости от микроконтроллера.

  • Возможности подключения: Таким образом плата (и приложение) подключается к Интернету через Wi-Fi, Ethernet или другие средства. Это важный аспект приложений подключенных датчиков, поэтому мы рассмотрим эту тему более подробно позже.
  • Потребляемая мощность: Энергопотребление критически важно для приложений с подключенными датчиками, особенно когда вашему устройству необходимо использовать что-то вроде батареи или солнечной энергии. Эта спецификация расскажет вам, насколько энергоемким MCU является по умолчанию и поддерживает ли он методы программирования, требующие экономии энергии.
  • Инструменты разработки и сообщество: Важно наличие зрелого набора инструментов, документации и поддержки сообщества, которые помогут создавать программы, которые будут работать на MCU, выбранном для вашего приложения.

Микроконтроллер Операционные системы

Теперь давайте поговорим об операционной системе, которая работает на микроконтроллере. Так же, как на персональных компьютерах работает такая операционная система, как Windows, микроконтроллеры работают под управлением операционной системы.

У вас есть три основных варианта:

  • Bare Metal означает, что на самом деле операционной системы нет. Это был оригинальный подход к работе с микроконтроллерами, и он до сих пор пользуется большой популярностью, поскольку он экономичен и эффективен.Основным недостатком этого варианта является то, что он обеспечивает меньшую поддержку разработчика программного обеспечения.

  • RTOS означает «Операционная система реального времени». Система RTOS предоставляет точные гарантии в отношении времени, в течение которого операции будут завершены. Это очень важно для координации физических механизмов.

  • Linux намного проще программировать и подключаться к Интернету. Он больше похож на «настоящий компьютер» в том виде, в каком он может быть знаком обычному человеку, что хорошо по многим из ранее заявленных причин.Однако по этой причине никаких гарантий по срокам не дается.

Металл без покрытия

ОСРВ

Linux

Оригинальный и максимально простой подход

Обеспечивает гарантии по времени обработки событий ввода / вывода

Популярная операционная система с открытым исходным кодом на основе UNIX, первоначально для персональных компьютеров

Без операционной системы

Программа работает в операционной системе

Значительно доступнее и проще программировать

Код взаимодействует напрямую с вычислительными компонентами

Возможность приостановить задачу и выполнить задачу с высоким приоритетом

Крепкое сообщество людей, которые могут помочь с поддержкой

Ограниченная поддержка программирования

Быстрая установка, но отладка требует много времени

Сложнее получить производительность в реальном времени

Макетные платы

Микроконтроллеры

обычно поставляются вместе с так называемой платой разработки .»Плата для разработки предоставляет все необходимое для программирования MCU. Они являются идеальной отправной точкой для создания подключенных систем.

Платы разработки

— это печатные платы, содержащие MCU и вспомогательные компоненты, необходимые для программирования MCU.

Они включают в себя такие вещи, как источник питания, поддержку для подключения датчиков, а иногда даже встроенные датчики и исполнительные механизмы.

Они полезны для создания прототипов перед окончательным производством индивидуального решения и популярны среди инженеров, работающих над разработкой встроенных систем.

Платы разработки

позволяют пользователям быстро подключать датчики и исполнительные механизмы (если они еще не включены в плату), а сопутствующее программное обеспечение облегчает создание и развертывание кода.

Выбор микроконтроллера для вашей системы Интернета вещей

Существует множество различных плат для разработки и микроконтроллеров от различных компаний: TI, Samsung, Arduino, Raspberry Pi и других. Выбор подходящего для вас зависит от ряда факторов, которые зависят от характера вашего приложения.

  • Совместимость : Поддерживает ли MCU датчики и исполнительные механизмы, которые вы хотите использовать? В зависимости от ваших датчиков и исполнительных механизмов вам может понадобиться много или всего несколько портов. Убедитесь, что у вас достаточно портов ввода / вывода.

  • Архитектура: Достаточно ли сложна архитектура, чтобы справиться со сложностью вашей программы? Большинство приложений используют ARM, MIPS или X86. Выбор одного из них зависит от функциональных требований вашего приложения и от того, сколько вычислительной мощности требуется вашей системе.
  • Память : Имеет ли MCU достаточно памяти — RAM и Flash — для вашей программы? Настоятельно рекомендуется выбирать MCU с удобным объемом дополнительной памяти для будущих обновлений. Это сэкономит вам время, деньги и избавит от головной боли в долгосрочной перспективе!
  • Наличие : Можете ли вы легко получить MCU, который вам нужен, и в том количестве, которое вам нужно? Это важно учитывать в начале процесса, особенно если вы планируете масштабировать свою систему позже.
  • Питание : Какая мощность потребуется MCU? Нужно ли будет подключать проводку или можно использовать батарейки? Энергоэффективность чрезвычайно важна для промышленных приложений Интернета вещей, потому что вам нужно свести к минимуму необходимость отправки бригад технического обслуживания для проверки периферийной инфраструктуры.
  • Стоимость : Сколько стоит каждая единица? Имеет ли смысл цена в зависимости от ценности, которую она принесет? Опять же, вы захотите подумать о расширении проекта позже.Убедитесь, что ваш бюджет IoT включает большее количество выбранных вами MCU.
  • Комплект разработчика : Доступен ли комплект разработчика? Комплекты разработчика — отличный способ начать работу с выбранным вами MCU, потому что они созданы для того, чтобы дать клиентам возможность готово к работе. Это значительно упростит разработку вашего IoT-приложения!
  • Поддержка разработки : Доступна ли хорошая документация для вашего MCU? Каково сообщество, окружающее эту доску? Эти факторы имеют решающее значение для принятия обоснованных решений о том, как правильно использовать ваш MCU.Хорошее онлайн-сообщество может помочь вам, когда вы застряли или столкнетесь с проблемой при реализации.

В конце концов, вы можете и должны провести исследование, чтобы принять обоснованное решение. Но, как и в случае со всеми новыми технологиями, вы будете учиться, экспериментируя.

TinyML позволяет использовать самые маленькие устройства искусственного интеллекта

TinyML — доказательство того, что хорошие вещи приходят небольшие пакеты. Вместо того, чтобы запускать сложные модели машинного обучения (ML) в облако, на больших энергоемких компьютерах этот новый подход предполагает запуск оптимизированные модели для распознавания образов в оконечных устройствах, на микроконтроллеры размером не больше рисового зерна, потребляющие всего милливатт мощность.

Этот развивающийся сегмент, tinyML, поддерживаемый Arm и лидерами отрасли Google, Qualcomm и другими, может изменить наш подход к работе с данными Интернета вещей (IoT), где миллиарды крошечных устройств уже используются для обеспечения большего понимание и эффективность в таких секторах, как потребительский, медицинский, автомобильный и промышленный.

Зачем нужен tinyML для микроконтроллеров?

Микроконтроллеры, такие как Arm Cortex-M family — идеальная платформа для машинного обучения, потому что они уже используются повсюду.Они выполняют вычисления в режиме реального времени быстро и эффективно, поэтому они надежны. и отзывчивые, и поскольку они потребляют очень мало энергии, могут быть развернуты в места, где замена батареи затруднена или неудобна. Возможно даже Что еще более важно, они достаточно дешевы, чтобы их можно было использовать где угодно. В аналитик рынка IDC сообщает, что 28,1 млрд микроконтроллеров были проданы в 2018 г. и прогнозирует, что годовой объем отгрузки вырастет до 38,2 млрд. 2023.

ML на микроконтроллерах дает нам новые методы анализа и осмысления огромного количества данных генерируется Интернетом вещей.В частности, методы глубокого обучения могут использоваться для обрабатывать информацию и анализировать данные с датчиков, которые выполняют такие действия, как обнаруживать звуки, захватывать изображения и отслеживать движение.

Расширенное распознавание образов в очень компактном формате

Глядя на математику, используемую в машине обучения, специалисты по обработке данных обнаружили, что они могут снизить сложность, если изменения, такие как замена вычислений с плавающей запятой на простые 8-битные операции. Эти изменения создали модели машинного обучения, которые работают намного эффективнее. и требуют гораздо меньше ресурсов обработки и памяти.

Технология TinyML быстро развивается благодаря новым технологиям и заинтересованной базе преданных разработчиков. Только несколько лет назад мы праздновали нашу способность запустить модель распознавания речи способный разбудить систему, если она обнаруживает определенные слова на ограниченной руке Микроконтроллер Cortex-M3 использует всего 15 килобайт (КБ) кода и 22 КБ данных.

С тех пор Arm выпустила новые процессоры машинного обучения (ML), названные Ethos-U55 и Ethos-U65, microNPU, специально разработанные для ускорения вывода машинного обучения во встроенных устройствах и устройствах IoT.

Ethos-U55 в сочетании с процессором Cortex-M55 с поддержкой искусственного интеллекта обеспечит значительное повышение производительности машинного обучения и повышение энергоэффективности по сравнению с уже впечатляющими примерами, которые мы наблюдаем сегодня. Мы ожидаем кремний в ближайшие 12 месяцев, так что следите за этой страницей!

TinyML выводит конечные устройства на новый уровень

Потенциальные варианты использования tinyML практически безграничны. Разработчики уже работают с tinyML, чтобы исследовать всевозможные новые идеи: реагирующие светофоры, которые изменяют сигнализацию, чтобы уменьшить заторы, промышленные машины, которые могут предсказать, когда им понадобится обслуживание, датчики, которые могут контролировать посевы на наличие вредных насекомых, внутри полки магазинов, которые могут запросить пополнение запасов при низком уровне запасов, медицинские мониторы, отслеживающие жизненно важные показатели при сохранении конфиденциальности.Этот список можно продолжить.

TinyML может сделать конечные устройства более согласованными и надежными, так как меньше необходимости полагаться на загруженные, переполненные интернет-соединения для отправки данных туда и обратно в облако. Уменьшение или даже устранение взаимодействий с облаком дает важные преимущества, включая снижение энергопотребления, значительное сокращение задержки при обработке данных и преимущества безопасности, поскольку данные, которые не перемещаются, гораздо меньше подвержены атакам.

Ничего не стоит, что эти модели tinyML, выполняющие логический вывод на микроконтроллере, не предназначены для замены более сложного вывода, который в настоящее время происходит в облаке.Вместо этого они переносят определенные возможности из облака на конечное устройство. Таким образом, разработчики могут сохранить взаимодействие с облаком на случай, если и когда оно понадобится.

TinyML также предоставляет разработчикам новый мощный набор инструментов для решения проблем. Машинное обучение позволяет обнаруживать сложные события, которые сложно идентифицировать системам, основанным на правилах, поэтому конечные устройства ИИ могут начать вносить свой вклад по-новому. Кроме того, поскольку машинное обучение позволяет управлять устройствами с помощью слов или жестов, а не с помощью кнопок или смартфона, конечные устройства могут быть построены более надежными и пригодными для развертывания в более сложных операционных средах.

TinyML набирает обороты с расширяющейся экосистемой

Игроки отрасли быстро осознали ценность tinyML и быстро перешли к созданию поддерживающей экосистемы. Разработчики на всех уровнях, от энтузиастов-любителей до опытных профессионалов, теперь могут получить доступ к инструментам, которые упрощают начало работы. Все, что требуется, — это портативный компьютер, библиотека программного обеспечения с открытым исходным кодом и USB-кабель для подключения ноутбука к одной из нескольких недорогих плат для разработки по цене всего в несколько долларов.Фактически, в начале 2021 года Raspberry Pi выпустила свою самую первую плату микроконтроллера, одну из самых доступных плат для разработки, доступных на рынке всего за 4 доллара! Под названием Raspberry PiPico работает SoC RP2040, удивительно мощный процессор Dual Arm Cortex-M0 +. MCU RP2040 может запускать TensorFlow Lite Micro, и мы ожидаем увидеть широкий спектр вариантов использования машинного обучения для этой платы в ближайшие месяцы.

Arm является ярым сторонником tinyML, потому что архитектура наших микроконтроллеров занимает центральное место в IoT и потому, что мы видим потенциал вывода на устройстве.Сотрудничество Arm с Google упрощает разработчикам развертывание машинного обучения конечных точек в средах с ограниченным энергопотреблением. Комбинация библиотек Arm CMSIS-NN с фреймворком Google TensorFlow Lite Micro (TFLu) позволяет специалистам по обработке данных и разработчикам программного обеспечения использовать преимущества аппаратной оптимизации Arm без необходимости становиться экспертами по встроенному программированию. Вдобавок к этому Arm вкладывает значительные средства в свой оптимизированный инструментарий для оборудования Cortex-M, Keil MDK, а также в нашу операционную систему IoT, Mbed OS, чтобы помочь разработчикам быстро перейти от прототипа к производству при развертывании приложений машинного обучения.

TinyML был бы невозможен без ряда первых влиятельных лиц. Пит Уорден, «отец-основатель» tinyML и технический руководитель TensorFlow Lite Micro в Google, Arm Innovator, Квабена Агьеман, разработавшая OpenMV, проект, посвященный недорогим расширяемым модулям машинного зрения на базе Python, которые поддерживают алгоритмы машинного обучения и Arm Innovator, Дэниел Ситунаяке, основатель tinyML, инженер и разработчик из Edge Impulse, компании, которая предлагает полный конвейер tinyML, который охватывает сбор данных, обучение модели и оптимизацию модели.Кроме того, партнеры Arm, такие как Cartesiam.ai, компания, предлагающая NanoEdge AI, инструмент, который создает программные модели на конечной точке на основе поведения сенсора, наблюдаемого в реальных условиях, выводят возможности tinyML на новый уровень.

Arm также является партнером TinyML Foundation, открытого сообщества, которое координирует встречи, чтобы помочь людям общаться, обмениваться идеями и участвовать. Есть много локализованных встреч tinyML, охватывающих Великобританию, Израиль и Сиэтл, и это лишь некоторые из них, а также глобальная серия саммитов tinyML.Для получения дополнительной информации посетите веб-сайт tinyML Foundation.

Подробнее о разработке TinyML

Посмотрите наше последнее видео, чтобы увидеть, что возможно с tinyML. Кроме того, если вы разработчик, вы можете впоследствии следовать руководству, чтобы создать демонстрацию обнаружения человека с помощью Arduino Portenta H7, TensorFlow Lite для микроконтроллеров и Mbed OS.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *