Рубрика «микроконтроллеры» - 10

Привет! Хочу рассказать об одном из своих любимых DIY проектов, который я реализовал еще пару лет назад. Данным проектом я хотел закрыть две цели: во-первых, подготовить подарок на день рождения своей племяннице (Ксюша, привет!), во-вторых, переползти с микроконтроллеров Atmel на ST. Также хотел получить опыт в использовании С++ во embedded устройствах.

Читать полностью »

image

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

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

Как всегда, под катом вас ждет беспощадная схемотехника на основе только жесткой логики и не менее жестких операционниках.Читать полностью »

image

В ноябре 2022 года Arduino объявили, что MicroPython стал частью их экосистемы. Вместе с этим разработчики выпустили новую IDE — Arduino Lab for MicroPython. Но чем она лучше той же Thonny, которую до сих пор используют для программирования микроконтроллеров на Python? Давайте разбираться.
Читать полностью »

Задача

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

Идея

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

Веб-сервер на Flask и бота будем размещать на ReplIt. Как это сделать бесплатно с работой 24/7 описано в статье Читать полностью »

Вот появилось желание написать небольшой проектик для себя с применением микроконтроллера. В CodeVisionAVR команды не подсвечиваются по Ctrl+Пробел, да и Си что-то начал забывать, вспоминать - лень... Конечно, вспомнить Си - это 10-30 минут, но лень... Поэтому, было решено начать проект в родной IDE Lazarus, она же кросс-компилируемая! Правда, понять, как включить avr в Lazarus, чтоб компилировался hex-файл ушло 3 дня :), поэтому пишу здесь, чтоб другие не мучались, а сразу пользовались.


Использование кросс-компиляции было основано на этой статьеЧитать полностью »

Неблокирующая обработка тактовой кнопки для Arduino. Как использовать прерывание таймера «в два клика» в стиле ардуино - 1

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

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

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

image

В одной из своих прошлых статей я писал про подключение тактовой тактильной кнопки. И, казалось бы, такой простой вопрос, вызвал «бурю» в комментариях. Публика разделилась на два лагеря: на тех, кто все знает, но обычно молчит; и тех, кто не знает, и стесняется спросить. А я так и не понял, к какому лагерю отношусь!

Поиски в интернете по запросу «программирование кнопки для Arduino» выдает весьма противоречивый контент. Где-то код очень крутой, но из-за скудного описания не понятный. А где-то код очень простой, и от того не понятно, что с ним можно делать.

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

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

Дисклеймер. Текст рассчитан на публику, которая только начинает познавать азы программирования контроллеров Arduino. Запрещено к просмотру людям с ослабленной психикой или психикой с долголетней инженерной выдержкой и беременным женщинам (это так, на всякий случай, а то мало ли… британские ученые пока до исследований на эту тему не добрались). Материал предназначен исключительно для просмотра лицам, не достигшим 21 года.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js