Как стать автором
Обновить

Компания Embox временно не ведёт блог на Хабре

Сначала показывать
  • Новые
  • Лучшие

Сохраняем настройки и лог файл во внутренней памяти микроконтроллера

Блог компании Embox Программирование *Системное программирование *Программирование микроконтроллеров *
image Задача сохранения настроек встречается в подавляющем большинстве современных устройств. Реже, но тоже очень часто, требуется хранение лог-файлов. Если речь идет о большом устройстве построенном на Линукс и содержащей как минимум SD карту, то с этими задачами не возникает проблем. Но если все устройство представляет из себя микроконтроллер, то возникает вопрос, где и в каком виде хранить подобные данные. В этом случае, обычно для настроек предлагают использовать сырые данные размещенные во внешнем eeprom. Но такой подход гораздо менее удобен чем вариант с файловой системой пусть даже с сильно ограниченными свойствами. Кроме того он плохо подходит для задач логирования. В данной статье мы расскажем как можно организовать удобное хранение файлов настроек и лог-файлов во внутренней флеш памяти микроконтроллера.
Читать дальше →
Всего голосов 15: ↑13 и ↓2 +11
Просмотры 3K
Комментарии 12

Путешествие Embox на Baikal

Блог компании Embox Open source *Системное программирование *Процессоры


Всем привет.

Многие знают, что мы в проекте Embox любим портироваться на отечественные платформы. Статьи об этом можно посмотреть у нас в блоге. Например, Embox уже успешно восходил на Эльбрус. Теперь очередь за еще одним известным географическим названием и по совместимости процессором — Байкалом. У компании Байкал Электроникс есть два процессора (Baikal-M и Baikail-T1), поскольку Embox ориентирован на встроенные системы, начать мы решили с MIPS32 и запустились на Baikal-T1
Читать дальше →
Всего голосов 16: ↑14 и ↓2 +12
Просмотры 2K
Комментарии 0

Benchmark OpenCV на STM32

Блог компании Embox Ненормальное программирование *Open source *Обработка изображений *Программирование микроконтроллеров *
Сегодня обработка изображений прочно вошла в нашу жизнь. Никого не удивляет распознавание лиц или дорожной разметки. Самой распространенной библиотекой для этих целей на данный момент является OpenCV. На сегодняшний день OpenCV ориентирован прежде всего на большие платформы. И хотя старшие модели современных микроконтроллеров обладают ресурсами сопоставимыми с Pentium II, запуск на них OpenCV все еще является очень редким, даже экзотическим явлением.

Какое-то время назад мы показали, что существует принципиальная возможность использовать OpenCV на STM32 (и других микроконтроллерах подобного класса). Тогда нашей целью было продемонстрировать возможность использования данной библиотеки на подобных аппаратных платформах. Поэтому, хотя мы и получили очень низкую производительность, мы не стали разбираться в ее причинах. На текущий момент мы исправили очевидные недостатки первого решения, что позволило добиться приемлемой производительности. В данной статье приведены результаты замеров производительности для различных примеров использования OpenCV на платформе STM32F7.
Всего голосов 10: ↑10 и ↓0 +10
Просмотры 2.4K
Комментарии 5

Запуск Qt на STM32. Часть 2. Теперь с псевдо 3d и тачскрином

Блог компании Embox Программирование *Системное программирование *Qt *Программирование микроконтроллеров *
Мы в проекте Embox некоторое время назад запустили Qt на платформе STM32. Примером было приложение moveblocks — анимация с четырьмя синими квадратами, которые перемещаются по экрану. Нам захотелось большего, например, добавить интерактивность, ведь на плате доступен тачскрин. Мы выбрали приложение animatedtiles просто потому, что оно и на компьютере круто смотрится. По нажатию виртуальных кнопок множество иконок плавно перемещаются по экрану, собираясь в различные фигуры. Причем выглядит это вполне как 3d анимация и у нас даже были сомнения, справится ли микроконтроллер с подобной задачей.
Всего голосов 18: ↑17 и ↓1 +16
Просмотры 4.3K
Комментарии 10

Добавляем modbus в Embox RTOS и используем на STM32 и не только

Блог компании Embox Программирование *Системное программирование *Промышленное программирование *Программирование микроконтроллеров *
image
Нас часто спрашивают, чем Embox отличается от других ОС для микроконтроллеров, например, FreeRTOS? Сравнивать проекты между собой, конечно, правильно. Но параметры, по которым порой предлагают сравнение, лично меня повергают в легкое недоумение. Например, сколько нужно памяти для работы Embox? А какое время переключения между задачами? А в Embox поддерживается modbus? В данной статье на примере вопроса про modbus мы хотим показать, что отличием Embox является другой подход к процессу разработки.
Всего голосов 13: ↑12 и ↓1 +11
Просмотры 2.5K
Комментарии 26

Разрабатываем web-site для микроконтроллера

Блог компании Embox Разработка веб-сайтов *Программирование *Сетевые технологии *Программирование микроконтроллеров *

С приходом в нашу жизнь различного рода умных розеток, лампочек и других подобных устройств, необходимость наличия веб-сайтов на микроконтроллерах стала неоспоримой. А благодаря проекту lwIP (и его младшему брату uIP) подобным функционалом никого не удивишь. Но поскольку lwIP направлен на минимизацию ресурсов, то с точки зрения дизайна, функционала, а также удобства использования и разработки, подобные сайты сильно отстают от тех, к которым мы привыкли. Даже для встроенных систем, сравнить, например, с сайтом для администрирования на самых дешевых роутерах. В данной статье мы попробуем разработать сайт на Линуксе для какого-нибудь умного устройства и запустить его на микроконтроллере.
Всего голосов 17: ↑16 и ↓1 +15
Просмотры 9.2K
Комментарии 31

Запуск сложных C++ приложений на микроконтроллерах

Блог компании Embox C++ *Системное программирование *Программирование микроконтроллеров *
image Сегодня никого не удивить возможностью разрабатывать на C++ под микроконтроллеры. Проект mbed полностью ориентирован на этот язык. Ряд других RTOS предоставляют возможности разработки на С++. Это удобно, ведь программисту доступны средства объектно-ориентированного программирования. Вместе с тем, многие RTOS накладывают различные ограничения на использование C++. В данной статье мы рассмотрим внутреннюю организацию C++ и выясним причины этих ограничений.
Читать дальше →
Всего голосов 22: ↑21 и ↓1 +20
Просмотры 8.3K
Комментарии 14

SIP-телефон c GUI на STM32F7

Блог компании Embox Системное программирование *Разработка систем связи *Программирование микроконтроллеров *
Был один из короновирусных вечеров проводимых мной в самоизоляции. На столе лежала плата STM32F769I-Discovery. Я посмотрел на нее и подумал, ведь это же смартфон. Есть экран c тачскрином 800x480, есть аудио интерфейс, есть сетевой интерфейс, пусть даже и не беспроводной. Все это основано на микроконтроллере, поэтому более надежно с точки зрения температурных режимов. И имеет меньшее потребление. Не хватает только программного обеспечения. Конечно, никакой Android даже близко не встанет на данную плату. И я решил попробовать насколько быстро требуемый для телефона функционал может быть разработан под данную плату на Embox.

Всего голосов 17: ↑16 и ↓1 +15
Просмотры 4.6K
Комментарии 15

Embox на плате EFM32ZG_STK3200. Как уместить RTOS в 4кБ ОЗУ

Блог компании Embox Системное программирование *Программирование микроконтроллеров *
image
Embox является сильно конфигурируемой RTOS. Основная идея Embox — прозрачный запуск Linux программного обеспечения везде, в том числе и на микроконтроллерах. Из достижений стоит привести OpenCV, Qt, PJSIP, запущенные на микроконтроллерах STM32F7. Конечно, запуск подразумевает, что в данные проекты не вносились изменения и использовались только опции при конфигурации оригинальных проектов и параметры задаваемые в самой конфигурации Embox. Но возникает естественный вопрос насколько Embox позволяет экономить ресурсы по сравнению с тем же Linux? Ведь последний также достаточно хорошо конфигурируется.
Всего голосов 20: ↑19 и ↓1 +18
Просмотры 3.4K
Комментарии 26

Опыт Embox как менторской организации в программе GSoC2020

Блог компании Embox Open source *
image Всем привет!

В этом году Embox участвовал в качестве менторской организации в программе GSoC. В статье я бы хотел рассказать об этом, на наш взгляд, очень интересном опыте.
Читать дальше →
Всего голосов 13: ↑11 и ↓2 +9
Просмотры 517
Комментарии 4

О кэшах в микроконтроллерах ARM

Блог компании Embox Open source *Системное программирование *Программирование микроконтроллеров *Процессоры
image Привет!

В предыдущей статье мы для ускорения графики на микроконтроллере в Embox применяли процессорный кэш. При этом мы использовали режим «write-through». Тогда мы писали о некоторых преимуществах и недостатках связанных с «write-through» режимом, но это был лишь беглый обзор. В этой статье я, как и обещал, хочу подробней рассмотреть типы кэшей в ARM микроконтроллерах, а также сравнить их. Конечно, все это будет рассмотрено с точки зрения программиста, и вдаваться в детали работы контроллера памяти в данной статье мы не планируем.
Читать дальше →
Всего голосов 31: ↑30 и ↓1 +29
Просмотры 7.4K
Комментарии 6

Разбираемся в особенностях графической подсистемы микроконтроллеров

Блог компании Embox Open source *Системное программирование *Программирование микроконтроллеров *
Привет!

В этой статье я бы хотел рассказать об особенностях реализации графического пользовательского интерфейса с виджетами на микроконтроллере и как при этом иметь и привычный пользовательский интерфейс и приличный FPS. Внимание я хотел бы акцентировать не на какой-то конкретной графической библиотеке, а на общих вещах — память, кэш процессора, dma и так далее. Поскольку я являюсь разработчиком команды Embox, приведенные примеры и эксперименты будут на данной ОС РВ.

Читать дальше →
Всего голосов 36: ↑34 и ↓2 +32
Просмотры 11K
Комментарии 46

Свободное или отечественное ПО. Стандартное или свободное обучение

Блог компании Embox Open source *Учебный процесс в IT Конференции
В начале февраля в Переславль-Залесском прошла пятнадцатая конференция “Свободное программное обеспечение в высшей школе” организованная компанией “Базальт СПО”. В данной статье я хочу поднять несколько вопросов, которые мне показались наиболее важными, а именно, какое ПО лучше: свободное или отечественное, и, что важнее при обучении специалистов в IT области: следование стандартам или развитие самостоятельности.
Читать дальше →
Всего голосов 12: ↑11 и ↓1 +10
Просмотры 2.7K
Комментарии 6

Lua на STM32

Блог компании Embox Open source *Системное программирование *Lua *Программирование микроконтроллеров *
Привет!

Иногда хочется быстро что-то попробовать на микроконтроллере, запрограммировать маленький работающий прототип какой-то идеи. Для этих целей, как известно, хорошо подходят скриптовые языки. В этой статье я хочу рассказать, как с помощью Embox запустить интерпретатор Lua (cтандартный, не eLua) на STM32. Для демонстрации помигаем светодиодом по сети с помощью библиотеки luasocket, а также немного поработаем с http.

Читать дальше →
Всего голосов 15: ↑15 и ↓0 +15
Просмотры 4.6K
Комментарии 0

Embox RTOS на Raspberry Pi

Блог компании Embox Open source *Системное программирование *Разработка на Raspberry Pi *
image Привет!

У нас часто спрашивают есть ли в Embox поддержка Raspberry Pi. Да, есть. Описание как запустить теперь тут. В этой статье я хочу чуть подробней об этом рассказать.
Читать дальше →
Всего голосов 23: ↑21 и ↓2 +19
Просмотры 8.7K
Комментарии 9

Уменьшение времени отклика при передаче данных по UDP

Блог компании Embox Системное программирование *Программирование микроконтроллеров *

Привет, Хабр! В этой статье я хочу рассказать о решении одной из типичных проблем, с которой Embox справляется лучше GNU/Linux. Речь идет о времени реакции на пакет, переданный по протоколу Ethernet. Как известно, основной характеристикой передачи данных по сети является пропускная способность, и с ней у GNU/Linux все хорошо. Но когда речь заходит об уменьшении времени на прием/передачу единичного сетевого пакета, могут возникнуть проблемы. В частности, у заказчика была плата DE0-Nano-SoC с Linux, и с помощью этой платы хотелось управлять неким объектом по сети. Топология сети — точка-точка, никаких роутеров и хабов нет. По модели управления время реакции должно быть меньше 100 мкс, а на базе Linux удавалось добиться только 500 мкс.

Читать дальше →
Всего голосов 21: ↑19 и ↓2 +17
Просмотры 8.1K
Комментарии 22

Embox на процессоре Эльбрус. Или никогда не забывайте о том, что получили при разведке

Блог компании Embox Open source *Системное программирование *Процессоры
Данная статья является логическим завершением серии статьей “восхождение на Эльбрус” об ознакомлении Embox с процессорной архитектурой Эльбрус (E2K) . Почему логическим завершением, потому что в результате удалось через telnet запустить приложение, которое выводит на экран изображение, то есть добиться полноценной работы Embox на данной архитектуре. Дальнейшие исследования, вряд ли можно назвать ознакомлением, хотя конечно, многое осталось не ясно. И сама архитектура имеет много интересных особенностей, которые также на данный момент не изучены. В данной статье речь пойдет об организации виртуальной памяти, затронем PCI, немного поговорим о сетевой карте и коснемся видеокарты на конкретном железе, которое есть у нас.
Всего голосов 28: ↑27 и ↓1 +26
Просмотры 9.5K
Комментарии 23

XVI конференция разработчиков свободных программ или где взять бесплатных контрибьютеров

Блог компании Embox Open source *Конференции
Недавно в славном городе Калуге проходила XVI конференция разработчиков свободных программ. Конференцию организовывала компания “Базальт-СПО”. Embox, являясь свободным проектом, также выступал на конференции. Я, традиционно, не буду делать обзора всех докладов, а расскажу о тех вопросах, поднятых на конференции, которые были интересны мне лично.
Читать дальше →
Всего голосов 17: ↑17 и ↓0 +17
Просмотры 1.6K
Комментарии 10

Запускаем “десктопное” ПО на микроконтроллере

Блог компании Embox Ненормальное программирование *Системное администрирование *Программирование микроконтроллеров *Конференции

Embox принимал участие в IT фестивале TechTrain. Мы как и в первый раз привезли железки и вживую показали наши достижения. О некоторых мы уже писали на хабре, но мало ли кто не поверил :). Были показаны VoIP телефон, Qt и OpenCV, все на базе STM32F7-Discovery. Кроме стенда мы сделали три доклада. Идеи первого про открытый проект я уже описывал на хабре. В данной статье хочу рассказать идеи еще одного нашего доклада, который назывался “Запускаем “десктопное” ПО на микроконтроллерах”. Ну и пользуясь случаем, немного расскажу про свои ощущения о фестивале.
Читать дальше →
Всего голосов 19: ↑17 и ↓2 +15
Просмотры 9.3K
Комментарии 8

Как создать open source проект

Блог компании Embox Open source *
Уже на этой неделе в Санкт-Петербурге пройдет IT-фестиваль TechTrain. Одним из спикеров будет Ричард Столлман. Embox тоже участвует в фестивале, и конечно мы не могли обойти вниманием тему СПО. Поэтому один из наших докладов называется “От студенческой поделки до opensource проекта. Опыт Embox”. Он будет посвящен истории развития Embox как проекта с открытым кодом. В данной статье я хочу поведать об основных идеях, которые по моему мнению влияют на развитие opensource проектов. Статья, как и доклад, основана на личном опыте.
Читать дальше →
Всего голосов 21: ↑19 и ↓2 +17
Просмотры 8.1K
Комментарии 12