Обновить
210.01

Программирование микроконтроллеров *

Учимся программировать микроконтроллеры

Сначала показывать
Порог рейтинга
Уровень сложности

Практическое применение MSP430 для web-разработчика

Время на прочтение8 мин
Количество просмотров56K
На хабре предостаточно статей для начинающих о том, какой волшебный и замечательный этот MSP430 LaunchPad от Texas Instruments. Однако дальше стандартной мигалки светодиодом обычно никто не заходит. Пора исправлять эту ситуацию.
Работая в команде, мы пользуемся старым добрым SVN для контроля версий. Казалось бы, причём тут микроконтроллеры?
Как раз для сигнализации очередного коммита в репозиторий я и приспособил эту дивную штуковину.

Читать дальше →

Альтернативный подход к проектированию ПО для Embedded

Время на прочтение7 мин
Количество просмотров15K
Данный топик я решил написать после ознакомления со статьей «Два подхода к проектированию ПО для embedded». При прочтении которой я наткнулся на фразу: «Если же система собирается стать большой, соединяющей в себе много разных действий и реакций, которые к тому же критичны ко времени – то альтернативы использования ОС реального времени нет». «Как это нет?», — подумал я. Конечно, если речь идет о больших высоконагруженных системах реального времени, где используются большие процессоры, то без ОС может не обойтись, а вот для более скромных микроконтроллерных решений вполне существует альтернативный вариант. Ведь задачки можно выполнять при помощи обычного switch-case и при этом обеспечивать необходимое время реакции.

В данной статье я расскажу как это бывает

Два подхода к проектированию ПО для embedded

Время на прочтение9 мин
Количество просмотров37K
Хочу немного рассказать о двух подходах проектирования ПО в embedded. Два подхода эти – c использованием суперцикла или же с использованием RTOS (Real-Time Operation System, операционная система реального времени).

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

Надеюсь, будет интересно всем тем, кто хочет заглянуть в мир разработки для встраиваемых систем. Для тех, кто в embedded уже собаку съел, скорее всего, не будет ничего нового.
Читать дальше →

Почему бы я не рекомендовал Atmel или о непонимании успеха Arduino

Время на прочтение5 мин
Количество просмотров122K
Хочу немного поделиться негативным опытом использования микроконтроллеров Atmel в промышленной разработке.

Atmel как целевую платформу выбрал заказчик, хотя мы его и отговаривали (еще даже не зная, что нам предстоит — интуиция, что ли?). Ну что же, «заказчик всегда прав».

В продукте было два контроллера — 32-битный UC3A3 и 8-битный ATMega164. В качестве дебаггера выбрали AVR One!, в качестве среды разработки — AVR Studio 5.0 (последняя версия на момент старта).

И началось!

Читать дальше →

Мультимедиа центр на Arduino UNO

Время на прочтение1 мин
Количество просмотров13K
В этой статье я хочу рассказать о том, как построить довольно продвинутый недорогой мультимедиа центр, используя плату Arduino UNO (http://www.arduino.cc). Выполненный по данной схеме центр может пригодиться в разных задачах, например в «умном доме».

Читать дальше →

Распознавание речи на STM32F4-Discovery

Время на прочтение4 мин
Количество просмотров117K
image
В этой статье я хочу рассказать о том, как можно распознавать речь на микроконтроллере, используя отладочную плату STM32F4-Discovery. Поскольку распознавание речи — достаточно сложная задача даже для компьютера, то в данном случае оно проводится при помощи сервиса Google. Распознавание речи таким способом может пригодится в разных задачах, например в одном из устройств «умного дома».
Читать дальше →

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

Время на прочтение3 мин
Количество просмотров19K
Привет, Хабраюзер!
Данную статью меня попросил опубликовать мой друг, Евгений, у которого пока нет аккаунта на habrahabr. Поэтому ниже представляю вашему взору его статью.

В последние время, на работе, мне довольно часто приходилось иметь дело с таким семейством микроконтроллеров как PSoC Cypress (http://www.cypress.com). До этого я ни разу не то что не работал с этим семейством МК, я, если честно, даже о них ничего не слышал. Собственно, первым делом, как обычно, я начал с изучения всей документации, чтения статей, поиска примеров и т.п., думаю, так делают все. И я столкнулся с такой проблемой, как катастрофический недостаток русскоязычного материала по этой тематике. На мой взгляд, это довольно серьезный пробел. Именно поэтому хотелось бы попробовать написать статью или даже цикл статей на эту тему. Сразу хотелось бы сказать, что написание статей, это для меня нечто новое, поэтому прошу не серчать за подачу материала и другие огрехи, надеюсь, со временем исправлю это. Итак, поехали…
Читать дальше →

Обработка сообщений в ОСРВ на примере FreeRTOS

Время на прочтение5 мин
Количество просмотров12K
Лого_FreeRTOS Здравствуйте. Данная статья описывает одну из возможных реализаций паттерна Handler для FreeRTOS, предназначенного для обмена сообщениями между потоками. Статья предназначена в первую очередь для людей, использующих операционные системы в проектах для микроконтроллеров, энтузиастов DIY и людей изучающий ОСРВ и микроконтроллеры.
Предполагается, что читатель знаком с основными терминами, относящимися к ОСРВ, такими как очередь и поток. Более подробно ознакомиться с FreeRTOS можно в постах qdx FreeRTOS: введение и FreeRTOS: межпроцессное взаимодействие.
Те, кто участвовал а проектах для микроконтроллеров, используя FreeRTOS, возможно, сталкивался с тем, что стандартный API достаточно скуден, что приводит к необходимости написания дополнительного кода, который во многом повторяется. В моем случае ощущался недостаток инструментов для взаимодействия между потоками, а именно отсутствие унифицированной системы обмена сообщениями. Обычно для обмена инфомацией между потоками и синхронизации используются те или иные формы очередей. При этом тип информации, содержащейся в очереди, каждый раз разный, что снижает возможность повторного использования кода.
Использование унифицированной формы сообщения часто позволяет объединить несколько потоков в один Worker Thread, который обрабатывает полученные сообщения в порядке очереди.
Читать дальше →

STM32: Clock Security System

Время на прочтение4 мин
Количество просмотров22K
image
Доброго времени суток!
В данной статье речь пойдет о системе самодиагностики микроконтроллера STM32, в частности — STM32F100RB, который входит в отладочный комплект STM32-Discovery. Но так как микроконтроллеры STM32 во многом схожи, и отличаются в основном своей периферией — написанное будет верно и для других контроллеров (возможно с небольшими изменениями). Статья расчитана на людей, уже немного знакомых с STM32, но постараюсь рассказывать по возможности подробнее.
Читать дальше →

Atmel Studio 6 поддерживает как AVR, так и ARM

Время на прочтение1 мин
Количество просмотров43K
На официальном сайте Atmel появилась бета-версия Atmel Studio 6 (ранее носившая название «AVR Studio»). Теперь студия включает поддержку Atmel ARM и Atmel AVR, а также около 1000 проектов, которые помогут вам при разработке. Распространяется она, как и прошлые версии, бесплатно на сайте компании и всевозможных трекерах.



Читать дальше →

Автомобильные супер-часы

Время на прочтение2 мин
Количество просмотров15K
В один прекрасный день выяснилось что нужны в автомобиль часы. Автомобиль десятого семейства оснащен стандартными механическими часами с очень удобным корпусом. Выкидываем всю механику и садимся за паяльник.



Читать дальше →

STM32F1xx — Инструменты разработчика и FreeRTOS

Время на прочтение10 мин
Количество просмотров151K
Добрый день, уважаемые хабровчане. В своих прошлых статьях (STM32F1xx — лечимся от ардуинозависимости вместе, STM32F1хх — продолжаем лечение от ардуинозависимости при помощи LCD) я постарался осветить вопросы перехода с 8-битных микроконтроллеров на новые 32-битные STM32F1xx.
В процессе работы с ними, я, разумеется выбирал инструменты себе «по руке» — то есть, старался найти наиболее удобные для меня отладочные платы, программаторы, IDE. В этой статье я хочу поделиться с вами несколькими соображениями на этот счет, а также описать процесс сборки в выбранной IDE операционной системы реального времени FreeRTOS.
Читать дальше →

ПЛК — что это такое?

Время на прочтение5 мин
Количество просмотров154K
Доброго времени суток, уважаемые жители Хабра!
Прочитав пост про программирование ПЛК Siemens серии S7, я залез в поиск по Хабру, и был весьма удивлен, что тема промышленной автоматики вообще, и программирования ПЛК в частности, освещена весьма и весьма скудно. Возьму на себя смелость поделиться своим опытом в данной области, описав базовые принципы программирования ПЛК, в частности, производства компании Beckhoff.
Читать дальше →

Ближайшие события

STM32F1хх — продолжаем лечение от ардуинозависимости при помощи LCD

Время на прочтение14 мин
Количество просмотров127K
Добрый день, уважаемые хабровчане. В своей прошлой статье я рассмотрел применение замечательных микроконтроллеров STM32F1xx на примере управления сервоприводами. В этой статье мы обратимся к более интересному вопросу – управлению цветным графическим LCD-дисплеем. Помимо стандартной работы с дисплеем я постараюсь осветить вопросы использования особенностей микроконтроллеров STM32F для эффективного решения данного вопроса. Итак, начнем.
Читать дальше →

Программирование ПЛК Siemens на Simatic Step7

Время на прочтение4 мин
Количество просмотров460K
Добрый день, хабровчане! Полазив по Хабру, мною было обнаружено всего несколько топиков, в котором упоминалось бы словосочетание «Simatic Step 7». Хочу поделиться с Вами небольшой частью информации, накопленной мною за все время работы с программируемыми логическими контроллерами, и показать, что из себя представляют ПЛК, оболочка и что мне приходилось на них строить.

Данный пост содержит общую ознакомительную информацию о программировании ПЛК Siemens.
Читать дальше →

Знакомство с TCP стеком для микроконтроллеров фирмы Microchip

Время на прочтение8 мин
Количество просмотров71K
Предположим, у нас возникла необходимость в создании устройства с возможностью подключения к сети Ethernet. Вариантов имеется довольно много, но все их можно условно разделить на 3 вида.
Читать дальше

Две стороны повсеместного применения микроконтроллеров

Время на прочтение8 мин
Количество просмотров25K
Микроконтроллеры (старое красивое название — однокристалльные микро-ЭВМ) в настоящее время имеют невероятно много областей применения. От промышленной автоматики до бытовых приборов, от управления ядерными станциями до детских игрушек, от секретных военных систем до переключения каналов в вашем радиоприемнике. Одним словом, проще перечислить, где они не применяются.

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

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

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

Простая автоматизация: программируемые реле Easy

Время на прочтение16 мин
Количество просмотров162K
Здравствуйте, уважаемое сообщество!
На Хабре уже много сказано слов о различных устройствах автоматизации, начиная от простых Arduino, заканчивая промышленными многопроцессорными системами. Я же хочу закрасить очередное белое пятно на карте хабро-автоматики статьей о промежуточных устройствах — программируемых реле, на примере микропроцессорных устройств Easy производства корпорации Eaton (Moeller).
Прошло уже достаточно много времени с моего первого знакомства с данным типом устройств, но по-прежнему, эти «электронные малыши» остаются незаменимыми помощниками для реализации широкого спектра инженерных и бытовых задач.


Читать дальше →

MSP430, учимся программировать и отлаживать железо (часть 3)

Время на прочтение6 мин
Количество просмотров57K

Возможно Вы уже не первый раз садитесь за программирование Вашего MSP430. Если это не так, то рекомендую ознакомиться с предыдущими статьями по данной тематике: часть 1, часть 2.
В этой статье мы рассмотрим инструмент для графической настройки периферии нашего микроконтроллера — Grace, познакомимся с принципом работы watchdog и поработаем с виртуальным COM-портом (через программатор). Уже традиционно будет рассмотрен небольшой пример кода, и предоставлены все необходимые для понимания ссылки.

Читать дальше →

Спутниковый спидометр на STM32F1 и FreeRTOS

Время на прочтение8 мин
Количество просмотров68K
В статье речь пойдёт о самодельном спидометре, получающем сведения о текущей скорости автомобиля, его координатах и времени со спутников GPS. Статья также, надеюсь, поможет тем, что делает первые шаги в освоении 32х-разрядных микроконтроллеров с ядром Cortex M и хочет освоить одну из операционных систем реального времени (RTOS) для применения в своих наработках.
Читать дальше →

Вклад авторов