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

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

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

Стена группы

Загрузка...
3 года назад
#
Программируем Arduino на чистом Си

habrahabr.ru

В жизни ардуинщика рано или поздно наступает момент, когда в штатной среде разработки становится тесно. Если скетчам перестает хватать памяти, требуется жесткий реалтайм и работа с прерываниями или просто хочется быть ближе к железу — значит пришло время переходить на C. Бывалые электронщики при упоминании Arduino презрительно поморщатся и отправят новичка в радиомагазин за паяльником. Возможно, это не самый плохой совет, но мы пока не будем ему следовать. Если отбросить Arduino IDE и язык wiring/processing, у нас в руках останется прекрасная отладочная плата, уже оснащенная всем необходимым для работы микроконтроллера. И, что немаловажно, в память контроллера уже зашит бутлоадер, позволяющий загружать прошивку без использования программатора.

Для программирования на языке C нам понадобится AVR GCC Toolchain.

Windows:
Устанавливаем WinAVR, который содержит все необходимое.

Debian и Ubuntu:
sudo apt-get install gcc-avr binutils-avr avr-libc

MacOs X:
Устанавливаем CrossPack for AVR Development

Также нам потребуется установленная Arduino IDE, т.к. она содержит утилиту avrdude, которая нужна для загрузки прошивки в контроллер. CrossPack тоже содержит avrdude, но версия, идущая с ним, не умеет работать с Arduino.

Загрузка...
3 года назад
#
Программирование Arduino в CLion

habrahabr.ru

В этой статье я расскажу о небольшом how to о разработке для Arduino в CLion www.jetbrains.com/clion/.
CLion — новая IDE для C/C++ от JetBrains. По стилю и поведению очень похожа на IDEA (IDE для Java). А так как я пишу на Java под IDEA с использованием «фишек» это IDE, то хотелось бы все эти «фишки» и use case разработки перенести на разработку для Arduino.

Вообще я пробовал разные IDE для Arduino — Arduino IDE, Eclipse с плагином для Arduino, Eclipse с плагином для AVR, Atmel Studio, Visual Studio с плагином VisualMicro и ReSharper C++. Последнее время остановился на Eclipse с плагином для Arduino. Но всё же некоторых привычных возможностей из IDEA не хватало.

И вот наконец JetBrainse сделали IDE для C\C++ — CLion. Но пока без Arduino плагина. Но с поддержкой CMake. Вот этим можно воспользоваться!

arduino-cmake

В задаче по поддержке Arduino youtrack.jetbrains.com/issue/CPP-364 упоминается сборка CMake для Arduino github.com/queezythegreat/arduino-cmake вот ей то и воспользуемся…

Загрузка...
4 года назад
#
Пишем прошивку для Arduino на С++ с REST управлением через последовательный порт и экранчиком

Arduino LCD

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

То есть, например, отправив в последовательный порт что-то типа
/battery?act=status
получим в ответ что-то типа
{ «status»: «OK», «minValue»: 600, «maxValue»: 900, «value»:750, «percent»: 50 }

Для тех, кому лень читать статью, сразу ссылка на github и Яндекс-диск, у кого гитхаб залочен (спасибо MaximChistov).

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

Что имелось в начале

На старте имелось следующее:

  • Arduino Nano

  • LCD экран 16x2 с переходником на I2C как тут

  • Библиотека I2C экрана



Список задач:
  • Управление по типу HTTP REST

  • Отображение на экране сообщений, уведомлений (больше приоритет) и иконок по типу system tray

  • Определение уровня заряда батарейки

  • Управление питанием и выстрелом пушки



Загрузка...
4 года назад
#
Как мы сделали умнее наш настольный футбол и себя

habrahabr.ru

Настольный футбол

Чтобы сделать умный настольный футбол, нам понадобится:

  • обычный глупый настольный футбол — 1шт.,

  • контроллер Arduino — 1шт.,

  • лазер — 2шт.,

  • фоторезистор — 2шт.,

  • несколько заинтересованных людей,

  • свободные выходные.



Предыстория

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

И вот, однажды, когда путаница с очередью всем порядком надоела, нам в голову пришла идея:
Программисты

А давайте сделаем электронную очередь!
  • И чтобы стол сам голы считал!

  • И мог определить кто из нас круче!

  • И смски пусть присылает, что освободился!




Загрузка...
4 года назад
#
Управление микроклиматом на Arduino

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

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

Задача: «Осушить» гараж.

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

Arduino

Загрузка...
4 года назад
#
Контроль температуры в серверных шкафах с помощью Ардуино

habrahabr.ru

server

В одном из предыдущих постов я рассказывал о проектах созданных пользователями программы FLProg. А сегодня я хочу рассказать о системе созданной мною самим.
Серверная на станции где я работаю, как и положено находится в отдельном помещении. Для охлаждения серверов там установлено два кондиционера. К сожалению это обычные бытовые модели, так что регулярно то один, то другой находятся в ремонте. Руководство отдела, зная о моей работе над проектом FLProg, предложило создать систему мониторинга температуры в серверных шкафах, и управления работой их вентиляторов. Информация о текущей температуре должна отображаться на табло в помещении дежурных инженеров, и в случае повышения температуры свыше определенного порога выдавать звуковую сигнализацию. Я взялся за эту работу, и вот что получилось…

Загрузка...
4 года назад
#
Простейший кардиограф на Arduino

habrahabr.ru

Arduino

Покопавшись в гугле, можно найти самый распространенный и простой способ замерить пульс — фотоплетизмографию. Подсвечиваем капилляры под кожей инфракрасным излучением. Кровь, проходит по капиллярам толчками, синхронно с биениями сердца. При этом меняется количество отраженного инфракрасного излучения, которое мы принимает фототранзистором. В место подсвечивания и отражения может использоваться просвечивание на сквозь (мочки уха или пальца). Можно даже найти несколько вариантов схем, например вот эту. Однако во всех их используются операционные усилители, а их под рукой не нашлось. Зато под рукой оказалась плата Arduino Due, у которой точность АЦП 12 бит против 10 у прочих.
Методом научного подбора была собрана простенькая схема:

Схема измерителя пульса



Загрузка...
4 года назад
#
Белый Куб на страже чистоты воздуха, часть 2

hanrahabr.ru

Вторая часть публикации о Белом Кубе.

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

Конструкция Белого Куба

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

Конструкция белого куба на Arduino

Конструкция белого куба на Arduino

Ардуино Нано, модуль Wi-Fi и модуль с датчиками давления и пр. смонтированы на вертикально установленных планках. На планках сделаны контактные площадки путем прорезывания фольги, с боков припаяны разъемы. Разъемы куплены в Буром Медведе. Модуль Wi-Fi имеет разъем с шагом 2 мм, а не стандартные 2.54. По высоте планки сделаны больше, чем высота модулей, оставшееся место использовано для размещения дискретных элементов (транзистора управления нагревом датчика СО, резисторов подтяжки I2C и 1Wire и т.д. На снимке видно также петельку из провода, ее я использовал при отладке системы для присоединения земляного вывода щупа осциллографа и щупа тестера…

Загрузка...
4 года назад
#
Белый Куб на страже чистоты воздуха, часть 1

habrahabr.ru

Устройство для мониторинга параметров домашней среды с передачей данных по Wi-Fi.

Белый куб на страже чистоты воздуха

В статье описывается устройство для измерения, индикации на встроенном дисплее и передачи в сеть по Wi-Fi параметров окружающей среды:

• уровень СО2 (углекислый газ)
• уровень СО (угарный газ)
• содержание паров этилового спирта (С2Н5ОН)
• уровень горючих газов (LPG)
• уровень аммиака (NH3)
• содержание водорода(H2)
• значения атмосферного давления
• влажности и температуры воздуха
• уровня освещенности
• уровня магнитного поля по трем осям
• уровня гравитации по трем осям
• уровня ускорений по трем осям
• температуры произвольного количества цифровых датчиков температуры типа DS18B20.

Изюминкой БК является способ смены экранов по двойному постукиванию по корпусу. Видео как это происходит:



Загрузка...
4 года назад
#
Электронный тортик в кармане: дневник разработки

habrahabr.ru

Arduino

Около года назад, когда я игрался с официальным Arduino Starter Kit, мне пришла в голову мысль сделать в подарок жене «схемотехнический тортик», а именно плату со светодиодами-свечками, которые можно задувать. Эта задача показалась мне хорошим учебным проектом для понимания того, как программировать микроконтроллеры и как воплощать программы в материю (ведь электроникой я стал увлекаться относительно недавно, а программировать начал еще в школе, поэтому ощущал огромный пробел в своем образовании)…

Загрузка...
4 года назад
#
Arduino на службе здоровья — 2

habrahabr.ru

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


Загрузка...
4 года назад
#
Ардуино на службе здоровья

habrahabr.ru

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

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

Измеритель CO2

Загрузка...
4 года назад
#
Слежение за статистикой в WoT c помощью Arduino

Arduino

Вспоминая свою инженерную молодость, захотелось снова поковыряться с железками. Возвращаться к PIC'акм и программингу на асме было откровенно лень (травматические детские воспоминания о ручной работе без сторонних библиотек с шиной i2c и HD44780), по этому полез в интернет и узнал о существовании платформы Arduino…

Загрузка...
4 года назад
#
Комнатная метеостанция на Arduino

habrahabr.ru

Однажды, исследуя просторы интернета наткнулся я на интересную плату Arduino. Меня очень заинтересовала эта плата. С ее помощью можно сделать самому робота, метеостанцию, сигнализацию и даже что-то посерьезней, например — «Умный Дом».

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

Загрузка...
4 года назад
#
Подключаем датчики к Raspberry Pi без проводов и с Arduino

habrahabr.ru

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

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

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

Загрузка...
6 7

Авторизация

Пользователи

naikdij88
NewEXE
Георгiй Москвитинъ
Andpyxa Tutunnik
Andrey_fox
Jane linch
genagy
Pasha Radiuk
KotikBSD

Именинники

IvanNik

GeekBrains

Нетология

Нетология