Все потоки
Поиск
Написать публикацию
Обновить
156.54

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

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

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

KatWalk C2: ч.4: поиграемся с прошивкой

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров1.3K

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

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

Давайте что-нибудь в нём пропатчим!

Сортировка Конфигов для Make Сборок

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.3K

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

Все передают конфиги по-разному.

В этом тексте представлен способ передавать конфиги через скрипты сборки.

Читать далее

Artery AT32F403A. Завершение знакомства

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров4K

Заключительная часть знакомства с программированием микроконтроллера Artery AT32F403A в среде Keil

Читать далее

Настройка Пошаговой Отладки JLink+Eclipse

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров7.7K

Записали прошивку через интерфейс SWD/JTAG и... ничего не происходит. HeartBeat LED не мигает. Логи в UART(е) не появляются. CLI не отвечает. Очевидно, что прошивка где-то зависла.

Что же делать? Как понять, где ошибка?

Тут выручит пошаговая GDB отладка с подсветкой в eclipse.

Читать далее

Какой датчик лучше подходит для хлопкового выключателя KY — 038 или GY — MAX9814?

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров4.3K

За последнее время я нахожу множество статей и видио про самодельные хлопковые выключатели поэтому я решил провести исследование темой которого является изучение сигнала и сравнение датчиков GY - MAX9814 и KY - 038 , так как данные датчики довольно популярны у радиолюбителей.

Читать далее

Продолжение тестирования i.MX RT на плате MIMXRT1170-EVK

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

В прошлой статье было начато тестирование чипов семейства i.MX RT. Здесь продолжаем тестировать.

Читать далее

Как на Azure RTOS сделать Wi-Fi маршрутизатор для IoT

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

IoT маршрутизатор нужен для сбора и передачи данных в облака от различных проводных локальных шин (CAN, RS485, USB …) и беспроводных локальных сетей (Bluetooth, LoRa …).

Используя Azure RTOS сделать свой маршрутизатор достаточно просто. Нужно только правильно выбрать пару ингредиентов: Wi-Fi модуль и универсальный, быстрый, защищённый, экономичный микроконтроллер с открытой архитектурой.

Читать далее

Микроэлектроника, взгляд изнутри: автоматическая машина для сборки и размещения Zheng Bang ZB3245TSS с сюрпризом

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


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

Assembler Editor Plus: Добавление нового микроконтроллера

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

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

Дальше будет много картинок.

Читать далее

Root-of-Trust для IoT и другие тенденции безопасности устройств интернета вещей

Время на прочтение12 мин
Количество просмотров4.3K
Тема информационной безопасности становится всё более актуальной с каждым годом. Хаб про информационную безопасность находится на первом месте по рейтингу и втором по числу подписчиков. Однако в основном материалы посвящены различным сетевым, веб, облачным и другим технологиям, традиционно рассматриваемым в контексте безопасности. И почти не касаются встраиваемых применений, особенно с ограниченными ресурсами. В то время, как количество последних больше на порядки. В этой статье мы рассмотрим некоторые особенности и тенденции безопасности интернета вещей, берущие своё начало в разработке и модели распространения.

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

Практика в работе с нестандартными шинами комплекса Redd

Время на прочтение15 мин
Количество просмотров1.9K
В прошлой статье мы рассмотрели теорию по управлению тысячей мелочей в комплексе Redd, но чтобы не раздувать объём, отложили практику на следующий раз. Пришла пора провести практические опыты. Те же, кто не пользуется комплексом Redd, тоже смогут найти в этой статье полезные знания, а именно — методику подачи Vendor команд в USB накопители из ОС Linux, ведь как уже говорилось, контроллер STM32 в комплексе выполняет функцию SD-ридера, то есть — накопителя.


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

К вопросу о быстродействии и измерении его в Ардуино

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


Данная задачка возникла при исследовании быстродействия работы Ардуино при выполнении различных команд (об этом в отдельном посте). В процессе исследования возникли сомнения относительно постоянности времени работы отдельных команд при изменении значения операндов (как выяснилось позже, небезосновательные) и было принято решение попытаться оценить время исполнения отдельной команды. Для этого была написана небольшая программа (кто сказал скетч — выйти из класса), которая, на первый взгляд, подтвердила гипотезу. В выводе можно наблюдать значения 16 и 20, но иногда встречаются и 28 и даже 32мксек. Если умножить полученные данные на 16 (тактовую частоту МК), получим время исполнения в тактах МК (от 256 до 512). К сожалению, повторный прогон основного цикла программы (с теми же исходными данными), при сохранении общей картины, дает уже иное распределение времени исполнения, так что действительно имеющие место вариации времени не связаны с исходными данными. Исходная гипотеза опровергнута, но становится интересно, а с чем именно связан столь значительный разброс.
Читать дальше →

Выбрать мониторинг ДГУ легко!.. Или нет?

Время на прочтение5 мин
Количество просмотров3.3K
Увы, но ответ неоднозначный – и да, и нет. Выбрать-то, конечно, легко, но запутаться еще проще. Так вот, о том, как не запутаться, и пойдет речь.

ДГУ у вас или другое оборудование — универсального решения по дистанционному мониторингу и управлению, которое подходит всем, умеет все и стоит дешево, не существует. Ограничения есть всегда. Один вариант предлагает скудный набор функций, но за копейки, другой наоборот – требует высокой цены, но за большие возможности. А между ними будут бесчисленные вариации, сочетающие в себе функциональность и цену в разных пропорциях. И кажется, что можно легко потеряться в этом море решений. Хотя…



Но на самом деле все проще, ведь вариантов решений всего 3, и в них можно разобраться.

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

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

Целочисленная арифметика. Делим с округлением результата. Часть 1

Время на прочтение2 мин
Количество просмотров22K
Чем проще, на первый взгляд, задача, тем меньше разработчик вдумывается в то, как грамотно её реализовать, и допущенную ошибку, в лучшем случае, обнаруживает поздно, в худшем — не замечает вовсе. Речь пойдет об одной из таких задач, а именно, о дробном делении и о масштабировании в контроллерах, поддерживающих исключительно целочисленную арифметику.

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

Обзор одной российской RTOS, часть 3. Структура простейшей программы

Время на прочтение11 мин
Количество просмотров8.1K
Я продолжаю публиковать цикл статей из «Книги знаний ОСРВ МАКС». Это неформальное руководство программиста, для тех, кто предпочитает живой язык сухому языку документации.

В этой части пришла пора положить теорию на реальный код. Рассмотрим, как всё сказанное раньше записывается на языке С++ (именно он является основным для разработки программ под ОСРВ МАКС). Здесь мы поговорим только о минимально необходимых вещах, без которых невозможна ни одна программа.

Содержание (опубликованные и неопубликованные статьи):

Часть 1. Общие сведения
Часть 2. Ядро ОСРВ МАКС
Часть 3. Структура простейшей программы (настоящая статья)
Часть 4. Полезная теория
Часть 5. Первое приложение
Часть 6. Средства синхронизации потоков
Часть 7. Средства обмена данными между задачами
Часть 8. Работа с прерываниями

Код


Так как у ОСРВ МАКС объектно-ориентированная модель, то и программа должна содержать классы. При этом базовые классы уже имеются в составе ОС, прикладной программист должен лишь создать от них наследников и дописать требуемую функциональность.
Читать дальше →

Опыт аппроксимации экспериментальных данных

Время на прочтение2 мин
Количество просмотров6.7K
На днях встала задача запрограммировать устройство для измерения скорости потока воздуха. В качестве измеряющего элемента — датчик не понятно какого производителя, нет ни характеристик ни каких-либо адекватных параметров. Выбора не было, пришлось снимать градуировочные характеристики и выводить передаточную функцию «отсчеты АЦП-поток».
Читать дальше →
12 ...
127

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