Ни для кого не секрет, что для российской электроники наступили очень непростые времена. И хотя власти обещают, что теперь эта отрасль в приоритете и получить колоссальное финансирование, пока ситуация развивается по самому негативному сценарию. Что бы исправить ситуацию необходимо сначала понять и проанализировать какие ошибки были допущены ранее, но тогда статья превратится в поток хейта. Кроме того публично критиковать своих подчинённых мне запрещает устав, критика конкурентов слишком дорого стоит для открытой публикации, ну а критиковать органы власти можно только если планируешь или готов занять их место. Поэтому вместо недостатков поговорим о удачных практиках...
Программирование микроконтроллеров *
Учимся программировать микроконтроллеры
Новости
Прием RDS данных (Или чип распознающий песенки)
Радиостанции посылают не только звук, но и текстовые данные.
Существует бинарный протокол RDS (Radio Data System). Вся его спецификация 132 страницы. Протокол RDS многообещающий. Там указано, что радиостанции могут посылать название станции, название песни, классификатор контента и даже дату и время. Пакеты крохотные: по 8 байт. RDS как мозаика. Текст принимается по кусочкам.
Попробуем разобраться, что же приходит из воздуха по RDS на самом деле.
Разработка флешки с функцией самоуничтожения
Ведь всем нам известно, что лучший способ сохранить данные в безопасности – это их уничтожить, не так ли?
Что ж, для большинства из нас более актуальным ответом стало бы шифрование. Но задумайтесь о случаях, в которых устройство может попасть в руки тех, кого шифрование не остановит…
Мой замысел – создать USB-накопитель, который косметически и функционально будет полностью идентичен типичной флешке, за одним отличием – при подключении стандартным образом он не будет показывать никаких данных.
А что разумный человек точно не станет делать, прежде чем подключать обычную флешку? Лизать пальцы!
Всё верно. Носитель будет оснащён скрытыми электродами, измеряющими сопротивление вставляющего его в устройство пальца. В обычном состоянии сопротивление пальца равно 1.5МОм, а вот во влажном около 500кОм. При загрузке такая флешка будет отображаться пустой, если сопротивление между парой электродов окажется выше заданного порога. Это не самое изящное решение, но, на мой взгляд, оно удачно балансирует между смехотворностью и функциональностью. Что же касается людей с гермофобией, то они могут смачивать палец под краном.
Альтернативная прошивка для датчика температуры и влажности Sonoff SNZB-02 Zigbee
Звездой этого проекта является датчик температуры и влажности воздуха SONOFF SNZB-02 от компании ITEAD. Этот датчик появился на рынке около 2 лет назад, это было по сути первой попыткой компании ITEAD войти в сегмент Zigbee устройств. Компанией была выпущена серия датчиков в количестве 4 штук и шлюз к ним.
Edge AI чипы от Kneron. Собираем оригинальный девайс
Привет, я Антон Маслов, ведущий разработчик в MTS AI.
В предыдущих статьях я рассказывал о том, как работает распознавание изображений на чипе KL520 с помощью нейросети Tiny YOLOv3, а так же о том, как устроена, из чего состоит и как собирается прошивка чипов KL520. И вот теперь, когда мы познакомились с технологией Edge AI в общих чертах, мы можем отправиться в самое увлекательное путешествие и создать на базе KL520 собственный оригинальный девайс!
Что Должно Быть в Каждом FirmWare Pепозитории
В этом тексте я предлагаю порассуждать, что же должно быть в нормальном взрослом firmware репозитории безотносительно к конкретному проекту.
То есть перечислить самые универсальные и переносимые программные компоненты (кирпичики), которые могут пригодиться в практически любой сборке.
AMD проводит суперкомпьютерный день в Казахстане. Можно подсоединиться по Зуму
AMD проводит суперкомпьютерный день в Назарбаевском Университете в Астане, в Казахстане. 29 сентября. Можно подсоединиться по Зуму. Зарегистрироваться можно до 27 сентября по ссылке.
Вообще приезжающие в Астану замечали, что в городе есть амальгамация духа советских городов с духом американского Лас-Вегаса, в частности в элементах архитектуры.
Теперь можно добавить и другое сходство: в Лас-Вегасе помимо казино есть университет, в котором еще в допотопные времена стояли суперкомпьютеры и велись конкурсы на качество распознавания образов. Также там сейчас преподает Сара Харрис, соавтор известного учебника. Кроме этого в Лас-Вегасе иногда проводится конференция DAC по автоматизации проектирования электроники. Почему бы не превратить Астану в евразийский центр такого рода?
Тестирование DC/DC преобразователя на чипе LTC3789
Оправдались ли теоретические расчёты КПД конвертера, открытый проект которого был представлен в этой статье? Там я обещал КПД 99% при выходной мощности 300 Вт и перегрев не более 90 °C без использования радиаторов.
Тандем Cpp/Dot для Описания Сложных ToolСhain(ов)
Разработка современного софта это далеко не только про код.
Разработка современного софта это во многом про ToolСhain(ы). Прежде чем начать исполняться исходники проходят гигантский путь. C каждым поколением выходят все более и более массивные системы сборки.
Современные технологии разработки софта это многостадийные конвейеры из различных утилит. Понять их весьма сложно, но можно. А поможет нам в этом хипстерский язык программирования Dot.
Паттерн внедрение зависимостей в .NET nanoFramework для микроконтроллеров
Сегодня сломаем привычный мир инженеров и разработчиков встраиваемых систем на микроконтроллерах. В .NET существует замечательный паттерн программирования, как внедрение зависимостей (Dependency injection, DI). Суть паттерна заключается в предоставление механизма, который позволяет сделать взаимодействующие в приложение объекты слабосвязанными. Эти объекты будут связаны между собой через абстракции, например, через интерфейсы, что делает всю систему более гибкой, более адаптируемой и расширяемой. Но когда ведется разработка для микроконтроллеров, все зависимости обычно жестко завязаны на используемых устройствах, и замена датчика иногда приводит к существенному переписыванию программного кода. Напишем приложение на .NET nanoFramework для микроконтроллера ESP32, используя паттерн DI с возможностью легкой замены датчиков и LCD экрана.
Установка универсальной прошивки OpenIPC на примере IP камеры с процессором HI3516DV100 и сенсором OV4689
Наш мир кишит камерами видеонаблюдения, и большинство из нас сами добровольно окружают себя этими устройствами. Камерами, которые имеют как случайные дыры в безопасности, так и намеренно внедренные компоненты которые отстукивают своему хозяину. Одни производители стараются по максимуму предвидеть и решить проблемы, другие же делают вид, что и проблем особо нет, если камера показывает изображение. Но если начать приглядываться, то лишь требование ActiveX и Internet Explorer для пользования камерой в XXI веке это нечто из пучин ада.
Решают проблемы производители каждый по своему. Как вариант, через облако, через своё приложение Android с приватными протоколами. Но через несколько лет после продажи облачной камеры, бесплатное облако вполне может стать платным, приложение обрастает рекламой до безобразия. А если проект производителя не зашел, то прописанные в ней сервера отключаются и ваша камера, возможно даже с отличным оборудованием внутри, становится бесполезным кирпичём, потому как способов использования больше нет.
В случае с зоопарком рутеров, ворох проблем заставил энтузиастов собраться с силами и создать открытую платформу OpenWRT на базе Linux. И ради тех, кто ждет решения для камер, сейчас кипит работа над аналогичным открытым проектом OpenIPC - универсальной встраиваемой платформы на базе Linux для IP камер. Проделан колоссальный труд, и есть уже ряд камер, на которые можно установить новую прошивку, получив базовый функционал.
Дальше рассказываю на какие камеры какими способами и зачем можно установить систему OpenIPC на примерах.
Блок удаленного выключения зажигания двухтактных ДВС
Макетная плата SPI NOR Flash
Большинство современных CPU позволяют производить начальную загрузку с разных источников (media booting), одним из которых может быть SPI NOR Flash. Микросхемы энергонезависимой памяти NOR Flash с последовательным интерфейсом SPI используются на материнских платах для хранения образов BIOS, BMC, а так же данных различного назначения. Если же речь идет о популярных платах, постороенных на различных SoCs, таких как Raspberry Pi, Orange Pi и так далее, то на них SPI-интерфейс может быть выведен на контактные площадки для того, чтобы пользователь мог самостоятельно подключить ту или иную микросхему в качестве внешнего носителя.
Открытый проект по тестированию файловой системы exFAT и SD карт на встраиваемых устройствах с помощью MATLAB
Для тестирования выбрана аппаратная платформа на базе чипа STM32H753VIH с частотой ядра 480 МГц. Подключение к SD карте выполнено через интерфейс SDMMC с частотой 60 МГц. В качестве драйвера работает стандартная библиотека STM32H7xx_HAL. Используется промежуточное программное обеспечение FileX из пакета Azure RTOS поддерживающее exFAT.
Корутины C++20 и многозадачность на примере контроллеров stm32
На Хабре уже неоднократно появлялись статьи, посвященные применению современных стандартов C++ при программировании микроконтроллеров, в том числе и появившихся в c++20 корутин.
Предлагаю спуститься со сложных решений типа целой операционной системы и рассмотреть вопросы примитивного планирования задач с применением сопрограмм.
Шлюз Modbus RTU с поддержкой Ethernet
Существует большое разнообразие WI-FI модулей на основе чипа ESP32. Как правило, основной канал передачи и получения данных WI-FI, реже Bluetooth, т.е. беспроводные технологии, не требующие дополнительного «обвеса». Достаточно создать web страницу и используя браузер управлять всеми настройками. Используя эту концепцию мне удалось создать серию интерфейсных плат в разном форм-факторе, от встраиваемых до внешних универсальных с дополнительными функциями. Пришло время добавить и проверить работу проводного интерфейса Ethernet.
Чем интересуется западная молодежь (в микроэлектронике)
Design Automation Conference (DAC) - главная выставка софтверных компаний, которые создают средства проектирования чипов. Именно на ней появляются стартапы, которые определяют проектирование через 10-15 лет (например появление Synopsys на рубеже 1980-1990-х привело к появлению iPhone в середине 2000-х).
На DAC помимо выставки и официальных докладов есть также и poster session - молодые исследователи из университетов вывешивают в виде плакатов, чем они занимаются. Я методически сфотографировал все постеры во время последней конференции DAC в Сан-Франциско, и вот перед вами картина маслом:
(я также выложил версию этой заметки с большими картинками - если вы хотите покопаться детальнее, а не просто обозреть с птичьего полета, это лучше делать там)
Микроконтроллеры Megawin серии MG32F02: RTC и сторожевые таймеры IWDT, WWDT
Продолжая цикл публикаций по микроконтроллерам на ядре Cortex-M0 компании Megawin (см. предыдущие статьи 1, 2, 3 и 4), сегодня рассмотрим часы реального времени RTC, сторожевые таймеры IWDT и WWDT, а также стандартный для Cortex-M0 таймер SysTick.
Также отметим изменения в организации исходного кода. В структуру кода добавлен файл src/core.h
, включающий короткие макросы доступа к регистрам МК:
Вклад авторов
-
YuriPanchul 1328.5 -
EasyLy 1152.6 -
order227 957.0 -
iliasam 930.6 -
dlinyj 741.0 -
smart_alex 712.0 -
Indemsys 697.0 -
GarryC 597.4 -
haqreu 575.0 -
Bright_Translate 456.6