Довольно часто можно встретить статьи, посвященные использованию режимов пониженного энергопотребления. В большинстве случаев в них описываются достоинства и недостатки конкретного микроконтроллера, а все рекомендации сводятся к обобщенной фразе — используй режимы сна.
Читать полностью »
Рубрика «программирование микроконтроллеров» - 67
Опыт разработки low power устройств на STM32L
2017-11-16 в 16:08, admin, рубрики: low power, stm32, программирование микроконтроллеровAtmega328p + ENC28J60 = мост между UART и Ethernet
2017-11-15 в 7:27, admin, рубрики: ATMEGA328P, avr, ENC28J60, Беспроводные технологии, программирование микроконтроллеровСоздавая различную электронику и программируя AVR, STM и т.п. всегда встает вопрос как ее подключить к другой периферии для управления и передачи информации, например, к компьютеру.
Есть много различных решений: COM, RS482, WiFi, Zigbee, ZWave, Ethernet и т.п. Из всех вариантов я пробовал WiFi, Zigbee, Ethernet, все остальное крайне неудобно или устарело.
Я хочу рассказать и поделиться, как можно использовать чип ENC28J60 от Microchip и Atmega328p для создания «моста» (далее по тексту) между UART и Ethernet.
Читать полностью »
Избранные главы теории управления на пальцах: линейные наблюдатели динамических систем
2017-11-13 в 19:49, admin, рубрики: lqr, Алгоритмы, математика, Программирование, программирование микроконтроллеров, Разработка робототехники, теория управления, фильтр калманаПродолжаю писать о теории управления «на пальцах». Для понимания текущего текста необходимо прочитать две предыдущие статьи:
- Методы наименьших квадратов
- Линейно-квадратичный регулятор, вводная
- Линейно-квадратичный регулятор и линейные наблюдатели
Я совсем не являюсь специалистом в теории управления, лишь читаю учебники. Моя задача — понять теорию и применить на практике. В этой статье только теория (ну, немножко сопутствующего кода), в следующей будем разговаривать о практике, маленький кусочек которой можно посмотреть тут:
Автоматное программирование. Часть 3. Диаграмма состояний и переходов. Продолжение
2017-11-11 в 5:21, admin, рубрики: автоматное программирование, Алгоритмы, Анализ и проектирование систем, диаграмма состояний, программирование микроконтроллеров, программные структуры, Совершенный кодВ предыдущей статье речь шла о психологических аспектах описания динамических процессов при помощи диаграммы состояний и переходов (то есть в автоматном стиле) и о том, что диаграмма состояний и переходов даёт лучшее понимание динамического процесса. Сегодня я продолжу рассмотрение диаграммы состояний, олицетворяющей автоматный подход, и способы её воплощения в код. Тема предыдущей статьи органично перетекает в сегодняшний материал, поэтому я рекомендую ознакомится с ней.
Читать полностью »
Подарок от Гика — делаем кухонный таймер
2017-11-07 в 14:12, admin, рубрики: diy или сделай сам, stm8, гаджеты, кухонный гаджет, микроконтроллеры, Программирование, программирование микроконтроллеров, Электроника для начинающихВыбираем подарок
У бабушки моего сына скоро будет день рождения. Так как я его увлёк микроконтроллерами, то пришла идея подарить какой-то прибор, естественно, на микроконтроллере и сделанный своими руками. Как и все бабушки, наша бабушка не является продвинутым пользователем всяких устройств, и в принципе у нее ничего особенного из электроники нет. Так что, можно сделать любой, не очень сложный прибор.
Когда мы приезжаем к ней в гости, нас всегда встречает богатый стол, с большим количеством блюд. Поэтому, мы сразу решили делать прибор, полезный на кухне. Вместе мы часто играем в различные настольные игры — лото, различные игры с кубиком. Значит, наш прибор должен и тут помогать.
Подумав немного, сын решил делать продвинутый кухонный таймер.Читать полностью »
Работа с COM-портом Arduino из Java-приложения
2017-10-21 в 11:27, admin, рубрики: arduino, java, serial port, программирование микроконтроллеров, Разработка для интернета вещейСап. Возможно, людям, начинающим изучать arduino, будет интересно, как легко и быстро организовать передачу информации между микроконтроллером и Java приложением. Данная связка открывает кучу интересных возможностей по сбору и обработке данных с датчиков, управлению различными свистелками-перделками, а также созданию своих первых IoT проектов.
Недавно на просторах интернета наткнулся на весьма простую библиотеку Java-Arduino Communication Library. Не найдя публикаций на эту тему здесь, решил поделиться с вами опытом использования. Для работы нам понадобятся установленные Arduino IDE, IntelliJ IDEA, Java SE Development Kit и, собственно, сам микроконтроллер (я тестировал на китайской Arduino Nano и Strela на базе Leonardo от Амперки, на обоих все все работало отлично).
Читать полностью »
Ардуино головного мозга: импульсный датчик положения
2017-10-18 в 19:18, admin, рубрики: c++, quadrature decoder, Алгоритмы, ардуино головного мозга, Программирование, программирование микроконтроллеров, Разработка робототехникиЗадача на сегодня: как определить угол поворота инкрементального энкодера?
Сегодня в серии публикаций про ардуино головного мозга коротенькая статья с небольшим экспериментом и парой рецептов. В комментариях к одной из моих прошлых статей меня обвинили в том, что ардуиной подсчитывать импульсы энкодера — фу так делать:
Оптически энкодер 1000/оборот и ATMega не имеющая аппаратной схемы работы с энкодером (как у серий STM32, например) — это тупик.
Дальше в комментариях было много теоретизирования, которое лучше пропустить. Давайте лучше попробуем протестировать в железе, насколько это тупик. Для начала, что такое инкрементальный энкодер? Тот, кто помнит эпоху до-оптических мышек, ответ знает точно.
Внутри энкодера есть диск с прорезями, вот для наглядности я сделал фотографию диска с пятьюстами прорезями:
К вопросу о странностях и невозможном
2017-10-18 в 12:08, admin, рубрики: программирование микроконтроллеров, разработка электроники, электроникаИнженеру не следует тратить время на высказывание «Этого не может быть», поскольку это уже случилось. Ему следует искать объективную причину происходящего.
К сожалению, не смог найти точной цитаты, так что Вы видите ее в моей интерпретации.
Продолжим рассказ о интересных дефектах в области электроники. Сегодня речь пойдет о «промышленной» сети в АТС (изображена на КДПВ) на основе интерфейса RS485.
Далее в рассказе будут активно использоваться аббревиатуры, но пугаться не надо, в скобках будут даваться их расшифровки, так что добро пожаловать под кат.
Читать полностью »
Обзор одной российской RTOS, часть 8. Работа с прерываниями
2017-10-18 в 8:56, admin, рубрики: ОСРВ МАКС MAKS RTOS, программирование микроконтроллеровПубликую последнюю статью из первого тома «Книги знаний» ОСРВ МАКС. Надеюсь, это неформальное руководство поможет вам, коллеги, в случае, если придется работать с этой RTOS.
Предыдущие статьи:
Часть 1. Общие сведения
Часть 2. Ядро ОСРВ МАКС
Часть 3. Структура простейшей программы
Часть 4. Полезная теория
Часть 5. Первое приложение
Часть 6. Средства синхронизации потоков
Часть 7. Средства обмена данными между задачами
Часть 8. Работа с прерываниями (настоящая статья)
Почему прерывания жизненно необходимы
Преподаватели информатики очень любят рассказывать о том, что существует работа по опросу, а также — по прерыванию, после чего обычно приводят небольшой примерчик обработки прерываний и забывают о теме. Дальше, при реальном программировании, приходится постигать основы этого дела не собственной шкуре.
При программировании в однозадачных системах, очень часто удаётся «выкрутиться» за счёт работы с оборудованием по опросу. В многозадачных системах это становится всё труднее.
Рассмотрим простейший пример. Пусть идёт приём из последовательного порта с ужасно низкой скоростью 9600 БОД. Реальные скорости давно находятся в районе 250 КБОД, но чтобы не возникало желания просто снизить скорость для решения проблемы, давайте рассмотрим именно сверхмедленный вариант. Читать полностью »
Такое железное и такое безымянное
2017-10-17 в 16:13, admin, рубрики: arduino, Goto Camp, Блог компании Школа GoTo, обучение программированию, Программирование, программирование микроконтроллеров, Разработка для интернета вещей, Разработка робототехники, робототехника, школа goto, школа программированияПривет! Настала осень, птицы потянулись на юг, нормальные люди — на диван, а мы, «железное безымянное направление» проектной исследовательской школы GoTo, сердито курлыча и ощетинясь паяльниками, зажатыми в стальных руках-крыльях, сбиваемся в бронированный клин, чтобы лететь 28 октября в Питер на осеннюю школу в ИТМО.
Почему железное, почему безымянное, и что будет на школе — обо всем по порядку.
Читать полностью »