Детали Двигателя на Пропане
В этом тексте я попробовал выполнить обзор аппаратной начинки автомобилей, которые работают на сжиженном пропане. Попробовал разобраться, что там из агрегатов и зачем.
Embedded SW/Firmware Engineer
В этом тексте я попробовал выполнить обзор аппаратной начинки автомобилей, которые работают на сжиженном пропане. Попробовал разобраться, что там из агрегатов и зачем.
Настал второй за 11 лет случай, когда в профессии программист‑микроконтроллеров понадобилась математика. Она нужна чтобы решить задачу из радиотехники.
В этом тексте показан алгоритм определения дальности между радио трансиверами.
В России бытует мнение, что программистам микроконтроллеров не нужна никакая схемотехника. Особенно в таких организациях, которые изначально долго занимались web(ом), а потом вдруг решили прикинуться электрониками.
Что из документации нужно программисту микроконтроллеров для полноценной работы с электронной платой?
Попробуем разобраться.

При разработке прошивок микроконтроллеров приходится отлаживаться на прототипах. Прототип это просто набор отладочных плат соединенных перемычками.
Далее следует инструкция как сделать качественное основание для прототипа.
Настал тот редчайший случай, когда в работе программиста микроконтроллеров появилась нужда в знании математики и даже физики.
При управлении шаговыми двигателями важно решать кинематическую задачу. Правда по уровню сложности её можно отнести к школьной программе 6 класса.
В этом тексте я написал как диагностировать и тестировать такую электрическую цепочку как H-мост (спинер моторов).
Как в Run-Time(е) определять Fault(ы) в H-мосте?
Это необходимо, чтобы вовремя отключить ключи и перевести всю цепь в безопасное состояние тем самым спасти дорогое оборудование (PCB, транзисторы, нагрузка, разъемы) от сгорания.

В разработке на микроконтроллерах хорошей практикой считается, когда в прошивке есть энергонезависимое число-хранилище для запоминания чиселок между пере сбросом питания.
В этом тексте представлено текстовое описание возможной простой реализации компонента энергонезависимой key-value map(ки)

Это негласные правила этикета среди офисных белых воротничков. Об этом не расскажут ни в школе ни в университете. Как вести себя в офисах IT стартапа или корпорации?
Представлен обогащенный концентрат полезных подсказок, полученный в результате работы в трех западных организациях.
Эти правила написаны кровью!

Существует чип WM8731. Это стерео аудиокодек или однокристальная звуковая карта. В сущности 2 пары ADC/DAC на 24бит каждый с настройкой по I2C.
Чип знаменит тем, что его в свое время заложили в культовую отладочную плату Altera-DE1 для FPGA и чип WM8731 стал известен во всех технических вузах мира.
Посмотрим на что на самом деле способен чипок WM8731.
В этом тексте я напишу о своём опыте работы с чипом WM8731, частично восполню нехватку документации на китайскую отладочную плату Alinx и отмечу решения основных сбоев при работе с WM8731.
В этом тексте я написал про свой опыт поездки на это мероприятие из России в Израиле. Написал немного про Израиль и про само мероприятие тоже.
Разработчик микроконтроллеров Nordic Semiconductor в этом году провели целую компанию мастер классов по всей Eвропе про свои новые продукты.
Сейчас очень просто сделать BlueTooth колонку. Буквально из подручных компонентов. Обзор отладочной платы FSC-DB102 Ver: 1.4 от Feasycom на основе модуля FSC-BT1026C V1.2.

Часто в РФ приходится слышать мнение, что в Embedded разработке якобы в принципе не может быть никакого модульного тестирования. Инженеры за 40 в (7 случаях из 10) даже никогда не слышали термина unit testing. В России бытует даже расхожее мнение
Не нужны никакие тесты. Если программист хороший, то и код он пишет без ошибок.
Попробуем разобраться какие есть плюсы и минусы в модульном тестировании и понять надо это или нет.
Пере прошивка Пастильды обернулась настоящим квестом. Как пере прошить Pastild(у) или бег с препятствиями.
Инструкция для обыкновенного пользователя компьютером.
В этом тексте я написал про особенности интерфейса I2S и про то как можно тестировать и отлаживать интерфейс I2S.
Итак в вашем репозитории накопилось количество сборок превысившее число 1. Настало время задуматься о DevOps(е). Как же уследить за всеми этими сборками?
Классическое решение это запустить сервер сборки. Есть готовая технология, называется Jenkins.
Идея проста. Сервер сборки это инфраструктурный прикладной процесс, который периодически запускает скрипты построения конкретных программных проектов и затем сохраняет *.bin(ари) в конкретную папку или архив. Обычно сервер сборки работает автономно 24/7 и собирает артефакты из репозитория с кодом.
В этом тексте я написал инструкцию-методичку для разворачивания Jenkins на Windows компьютере.

Решил купить себе Pastild(у). Это аппаратный хранитель паролей и одновременно USB Flash(ка). Также понравилась возможность съёмной SD карты. Идея аппаратного менеджера паролей, который не требует отдельного USB просто великолепная!
Какие же впечатления от использования Пастильды (User experience)?
Иногда бывает ситуация когда надо срочно что-то пошагово отладить. При этом нет времени и желания ставить какие-то тяжелые IDE. В таких случаях может помочь пошаговая GDB отладка ARM Cortex M33 из командной строки Windows. В этом тексте я расписал пошаговое руководство того как это сделать.
Есть такая классическая и одновременно забытая технология отладки FirmWare как интерфейс командной строки поверх UART.
В этом тексте я напишу про достоинства и недостатки отладки через UART Shell.
Радиостанции посылают не только звук, но и текстовые данные.
Существует бинарный протокол RDS (Radio Data System). Вся его спецификация 132 страницы. Протокол RDS многообещающий. Там указано, что радиостанции могут посылать название станции, название песни, классификатор контента и даже дату и время. Пакеты крохотные: по 8 байт. RDS как мозаика. Текст принимается по кусочкам.
Попробуем разобраться, что же приходит из воздуха по RDS на самом деле.
В этом тексте я предлагаю порассуждать, что же должно быть в нормальном взрослом firmware репозитории безотносительно к конкретному проекту.
То есть перечислить самые универсальные и переносимые программные компоненты (кирпичики), которые могут пригодиться в практически любой сборке.