[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Как стать автором
Обновить
136
40.5

Embedded SW/Firmware Engineer

Отправить сообщение

Настройка ToolChain-нa для Разработки на Микроконтроллерах YTM32x

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

Абсолютно все микроконтроллеры программируются одинаково, если собирать код из make файлов.

Настало время освоить очередное семейство ARM-совместимых микроконтроллеров. За плечами уже AVR, MSP430x, LPC21x, STM32x, MDR32x, ESP32x, SPC58x, CC26x2, NRF53x, AT32Fx. Теперь вот YTM32x от компании YUN TU (Suzhou YTM Semiconductor Co Ltd).

С какой же стороны следует подходить к микроконтроллерам YTM32x?
Давайте разбираться...

Читать далее

Сонар из Диктофона

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

Что если из диктофона сделать акустический локатор?

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

Все вычисления осуществлены в пост обработке.

Читать далее

Стилистический-Анализатор: Проверка Наличия Комментария в Конце Фигурной Скобки (или Исполнение Капризов)

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

Настал тот первый день, когда в программировании микроконтроллеров наконец пригодилась такая абстрактная структура данных как стек LIFO.

У нас в организации существует обязательное внутреннее требование к оформлению исходных кодов на языке программирования Си для микроконтроллеров, которое звучит так:

В конце каждого блока if(...) {...} ; switch(...) {...} ; for(...) {...} и т.п. необходимо пиcать комментарий // end of if(...). end of switch(...) end of for(...) соответственно.

Я написал утилиту-локатор, которая автоматически находит аномалии в коде согласно этому странному правилу.

Читать далее

Вёрстка Учебника (LaTeX + CPP + GNU Make + Jenkins = Учебник)

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

Вы, наверное удивитесь, но чтобы написать учебник, надо знать системы сборки из софтверного БигТеха и, как ни странно, старый добрый сишный препроцессор (cpp).

Да, господа... Именно так...

В этой заметке я покажу несколько трюков по работе с LaTeX.

Читать далее

Пуск ПасТильды на Плате Olimex-H407

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

Существует одна очень замечательная учебно-треннировочная электронная плата Olimex-STM32-H407.

В этом тексте я покажу как на этой PCB можно запустить прошивку культового российского аппаратного хранителя паролей Пастильда (Pas~).

Читать далее

Калибровка MEMS Акселерометра [Часть 2]

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

В этом тексте я написал про то какая математика скрыта за алгоритмом калибровки трёх осевого MEMS акселерометров.

Этот текст является продолжением предыдущего текста Геометрия Стенда для Калибровки MEMS Акселерометра.

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

Читать далее

Геометрия Стенда для Калибровки MEMS Акселерометра

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

В этом тексте я решил полезную логическую задачу по стереометрии: расчет прямоугольной пирамиды.

Эта фигура очень полезна при калибровки MEMS акселерометров. Поэтому и пришлось ее решить.

Читать далее

Обновление Прошивки из Make Скрипта

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

В этом тексте показано как можно обновить прошивку из-под GNU Make скрипта.

По сути система сборки это интерпретируемый язык программирования. А значит на нём можно писать код, который может делать что угодно.

Вот например можно на GNU Make написать код загрузки *.bin (аря) в микроконтроллер

Легко...

Читать далее

Конечный Aвтомат Аппаратного I2C-Трансивера

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

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

Меня удивляет, что в оригинальном коде от вендоров микроконтроллеров программисты прошли мимо конечных автоматов при написании I2C кода внутри своих официальных uHAL. Непорядок...

В связи с этим мне пришлось разрабатывать собственный полноценный драйвер I2C буквально на физических регистрах I2C трансивера.

Читать далее

Обзор Акселерометра LIS3DH

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

В этом тексте я написал о своем опыте работы с акселерометром LIS3DH. Это трёх-осевой цифровой 12-битный MEMS акселерометр с перегрузкой 16g и управлением по I2C.

В этой заметке я изложил с какой стороны следует подходить к ASIC акселерометрам.

Читать далее

Синтез Цифрового БИХ Фильтра Низких Частот

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

Мне потребовалось синтезировать быстрый цифровой фильтр нижних частот. Причем этот фильтр должен работать в реальном времени на микроконтроллере. Тут я понял, что надо вспоминать с какой стороны следует подходить к цифровым IIR фильтрам.

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

Далее я покажу некоторые приёмы расчета IIR фильтра по известным коэффициентам.

Читать далее

Декодирование BPSK Модуляции из Звука (или передача данных по воздуху)

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

В этом тексте я реализовал возможность передачи бинарных данных звуком через BPSK модуляцию. Написал инструкцию как это можно делать.

Вся обработка происходит в post processing режиме на PC над записанным wav файлом.

Изучение ЦОС на примере работы со звуком - это доступная каждому возможность для экспериментов с различными алгоритмами DSP.

Читать далее

Звуковой Фазовый Дальномер (Микрофон = Датчик Расстояния)

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

Что если из микрофона можно сделать пассивный дальномер?

В этом тексте я проверил работу фазового детектора для звука.

Я собрал прототип фазового дальномера из двух обыкновенных мобильных телефонов.

Читать далее

Стилистический анализатор: синхронизация объявлений и определений static функций

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

Представлена утилита-надзиратель, что последовательность определения static функций совпадает с последовательностью объявляения static функций.

Читать далее

Аппаратный таймер в качестве датчика звука

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

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

В этом тексте я показал простой способ провернуть такой тест.

Читать далее

Стилистический Анализатор: Синхронизация порядка объявлений и определений функций

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

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

Порядок объявления С-функций должен совпадать с порядком определения С-функций.

В этом тексте представлен алгоритм работы консольной программы, которая автоматически выявляет нарушения этого странного правила.

Читать далее

Интеграция Стилистического Анализа в общий Make Скрипт Сборки Проекта

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

В некоторых компаниях есть внутренние требования к стилю оформления исходных кодов на Си.

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

Читать далее

Как Выигрывать в Игре Быки и Коровы

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

Существует старинная народная логическая игра. Называется быки и коровы. Её ещё называют mastermind.

В этом тексте я представил мой алгоритм для поиска решения в этой игре. Я назвал этот метод: Матрица возможных решений.

Суть алгоритма покажу в частном виде, то есть на примере.

Читать далее

Доплеровское Cмещение Несущей Спутников GPS

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

В этом тексте я намерен выяснить, как быстро меняется частота несущей спутников GPS в результате эффекта Доплера.

Также намерен выяснить в каких диапазонах стоит ожидать варьирование значения несущей частоты для GPS спутников и почему. Задачу буду решать в упрощенном виде, численно.

Для решения этой задачи достаточно обыкновенной школьной математики и физики.

Читать далее

Дымовая Завеса в Eclipse IDE

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

Прошивки часто пишут в Eclipse.

В Eclipse есть такая возможность как серая дымка неиспользуемых сейчас кусков кода. Якобы то, что не используется в коде визуально становится серой зоной отчуждения.

Именно этот аргумент огромная fun база Eclipse плагинов и приводит в качестве главного за Eclipse плагины.

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

Читать далее
1
23 ...

Информация

В рейтинге
169-й
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность

Специализация

Embedded Software Engineer, DevOps
Senior
Git
Bash
CI/CD
C
Embedded system
Programming microcontrollers
Software development
Algorithms and data structures
System Programming
Development of drivers