Рубрика «микроконтроллеры» - 5
Неблокирующая обработка тактовой кнопки для Arduino. Как использовать прерывание таймера «в два клика» в стиле ардуино
2022-12-14 в 8:10, admin, рубрики: arduino, isis proteus, Proteus, timeweb_статьи, байт, Блог компании Timeweb Cloud, гайд, кнопка, код, микроконтроллеры, Программирование, программирование микроконтроллеров, Разработка под Arduino, Си, схема, электроника, Электроника для начинающихВ своей прошлой статье я писал про блокирующие способы обработки кнопки. Реакция была, наверное, больше положительная, чем отрицательная. Хотя минусов мне поднасовали… Но, тем не менее, я решил продолжить. И в этой статье я хочу поделиться с вами своим опытом по неблокирующей обработке кнопок на Arduino. Напишем несложную библиотеку в стиле Си. Но, боюсь, что закрыть свой гештальт этой статьей тоже не получится…
Чтобы сохранить общую концепцию, пришлось разобраться с обработкой прерываний таймеров-счетчиков в стиле Arduino. Если вы не сталкивались с этим, и работаете напрямую с регистрами, рекомендую посмотреть, как это выглядит. HAL-драйвер для STM32 в этом плане нервно курит в сторонке.
Заранее предупреждаю, что материал рассчитан для начинающих. Но комментарии от бывалых программистов микроконтроллеров только приветствуются. Читать полностью »
Блокирующая обработка тактовой кнопки для Arduino. Настолько полный гайд, что ты устанешь его читать
2022-12-02 в 8:15, admin, рубрики: arduino, GND, isis proteus, Proteus, timeweb_статьи, байт, Блог компании Timeweb Cloud, гайд, кнопка, код, микроконтроллеры, Программирование, программирование микроконтроллеров, Разработка под Arduino, Си, схема, электроника, Электроника для начинающихВ одной из своих прошлых статей я писал про подключение тактовой тактильной кнопки. И, казалось бы, такой простой вопрос, вызвал «бурю» в комментариях. Публика разделилась на два лагеря: на тех, кто все знает, но обычно молчит; и тех, кто не знает, и стесняется спросить. А я так и не понял, к какому лагерю отношусь!
Поиски в интернете по запросу «программирование кнопки для Arduino» выдает весьма противоречивый контент. Где-то код очень крутой, но из-за скудного описания не понятный. А где-то код очень простой, и от того не понятно, что с ним можно делать.
В общем, так бывает достаточно часто, когда простые (может даже и примитивные) задачи на просторах интернетов освещены поверхностно. И это вполне закономерно. Те, кто только начинает что-то изучать, с радостью делятся новыми знаниями. Кем-то движет гордость за свои достижения, а у кого-то просто язык чешется. Но как только человек поднаторел в вопросе, груз профессионализма не позволяет ему писать про такие мелочи. Или нет на это свободного времени, или приходит чувство самодостаточности.
Вот я и решил собраться с мыслями и обобщить свой опыт программирования обработчика кнопки для Arduino. Если вам интересно пополнить/проверить свои знания в данном вопросе, ну или проверить мои знания, то приглашаю под кат.
Дисклеймер. Текст рассчитан на публику, которая только начинает познавать азы программирования контроллеров Arduino. Запрещено к просмотру людям с ослабленной психикой или психикой с долголетней инженерной выдержкой и беременным женщинам (это так, на всякий случай, а то мало ли… британские ученые пока до исследований на эту тему не добрались). Материал предназначен исключительно для просмотра лицам, не достигшим 21 года.Читать полностью »
Необычный случай восстановления данных или немного реверс-инжиниринга PLC Siemens Simatic S7-300
2022-10-29 в 10:27, admin, рубрики: plc контроллер, siemens, simatic, Восстановление данных, восстановление информации, Компьютерное железо, микроконтроллеры, плк, программирование микроконтроллеров, реверс-инжиниринг, системное администрированиеLavritech V7.1 Lite: младший брат Wirenboard на ESP32
2022-09-26 в 7:12, admin, рубрики: arduino, diy или сделай сам, esp32, IoT, Lavritech, Lavritech V7.1 Lite, smart home, автоматизация, Блог компании Timeweb Cloud, Интернет вещей, микроконтроллеры, Программирование, Разработка для интернета вещей, Разработка под Arduino, умный домВ своём блоге я рассмотрел десятки контроллеров разных компаний, среди которых Kincony, Norvi, RobotDyn, LILYGO и т. д., всё это замечательные изделия, но есть у них одна общая черта — все они созданы зарубежными производителями. Само по себе это неплохо, но хотелось бы уже познакомиться с чем-то, созданным нашими IT-умельцами.
На самом деле, в России разрабатывается и производится множество различных и весьма интересных контроллеров, сегодня мы познакомимся с одним из них — это контроллер Lavritech V7.1 Lite на основе ESP32, созданный для рынка DIY автоматизации. То есть как раз того направления, которое интересно мне и постоянным читателям моего блога.
Lavritech V7.1 Lite интересен ещё и тем, что совместим с блоками популярной экосистемы контроллеров Wirenboard и имеет необычную модульную архитектуру, что резко выделяет его на фоне ранее рассмотренных «обычных» контроллеров. По сути, это «младший брат Wirenboard» на ESP32 с архитектурой а-ля IBM PC, но только в мире контроллеров.
Ну и ещё одна отличная новость: для того, чтобы узнать об этом чуде инженерной мысли, вам достаточно просто нажать на кнопку «Читать дальше», что я и предлагаю вам незамедлительно сделать (уже завидую).
Итак, приступим…
Читать полностью »
Микроконтроллеры по 5 рублей. Программируем микросхемы PADAUK
2022-07-31 в 6:59, admin, рубрики: diy или сделай сам, микроконтроллеры, программирование микроконтроллеров, робототехника, схемотехникаПролог
Мой интерес к дешёвым микроконтроллерам, которые могут применяться в серийных изделиях, возник не на пустом месте. Разрабатывая электронику для одного из своих проектов, я столкнулся с тем, что себестоимость одного изделия (даже при оптовом заказе комплектующих) получается неприемлемо высокой.
В основу изделия заложены микроконтроллеры ATtiny13 в корпусах DFN10. И как сейчас помню, закупался этими контроллерами в розницу (ДКО Электронщик) по цене 28,7 рублей за штуку (июнь 2020 года). С тех пор многое изменилось…
44 Атрибута Хорошего С-кода
2022-07-27 в 0:20, admin, рубрики: C, devops, mcu, микроконтроллеры, Программирование, программирование микроконтроллеровЭтот текст адресован когорте программистов на С(ях). Это не академические атрибуты из учебников это скорее правила буравчика оформления сорцов из реального prod(а). Некоторые приемы совпали с MISRA, некоторые с CERT-C. А кое-что является результатом множества итераций инспекций программ и перестроек после реальных инцидентов. В общем тут представлен обогащенный концентрат полезных практик программирования на С(ях).
*1–Все функции должны быть менее 45 строк. Так каждая функция сможет уместиться на одном экране. Это позволит легко анализировать алгоритм и управлять модульностью кода.
*2–Не допускать всяческих Читать полностью »
Коллоквиум по программированию микроконтроллеров
2022-07-09 в 17:51, admin, рубрики: bash, C, devops, rtos, tdd, Карьера в IT-индустрии, микроконтроллеры, Программирование, программирование микроконтроллеров, системное программирование, собеседование вопросы, собеседования, собеседования задачи, электроникаЭто список вопросов на которые должен уметь ответить тот кто программирует микроконтроллеры и заниматься разработкой электроники. Вопросы в частности взяты из технических собеседований при устройстве на работу в разные компании. Постарался отобрать только самые приближенные к практике вопросы, которые можно выделить после 10 лет InSider(ского) опыта. Тут не будет моветонных вопросов из серии "как инвертировать связанный список". Тут всё исключительно только по делу.
По коду
--Зачем static?
--Зачем ключевое слово volatile C
--Всё ли в порядке с кодом?
int square(volatile int *ptr) {
return *ptr * *ptr;
}Читать полностью »
Что общего у тополога с художником и при чем тут литография
2022-07-06 в 8:11, admin, рубрики: fpga, risc-v, Блог компании YADRO, микроконтроллеры, микропроцессоры, Производство и разработка электроники, Процессоры, топология, хакатон, Хакатоны, электроникаПривет, я Александр Калёнов, аспирант и инженер кафедры интегральной электроники и микросистем в МИЭТ, работаю дизайнером СБИС в «НИИМА «Прогресс». Для хакатона YADRO SoC Design Challenge я создавал задание по топологии, которое мы тут и рассмотрим.
Принципы домашнего танкостроения
2022-06-13 в 11:07, admin, рубрики: arduino, DIY, diy или сделай сам, esp32, esp32-cam, дистанционное управления, микроконтроллеры, программирование микроконтроллеров, Разработка под Arduino, робототехника, роботы, Электроника для начинающихХотели бы свой дистанционно управляемый танк? В этой статье я расскажу про общие принципы танкостроения из доступных материалов.
Я опишу процесс создания танка с камерой который управляется со смартфона по Wi-Fi. В ходе статьи я буду так же описывать и альтернативные решения, чтобы вы имея теоретическую базу могли создать что-то свое.