
Прошивку для внутренностей современной встраиваемой электроники написать с нуля практически нереально. На это просто не дают времени. Поэтому ПО для встраиваемых систем создается на базе
готовых программных платформ — фреймворков. Чем более развит фреймворк, тем быстрее идет разработка. Здесь пойдет речь о фреймворке созданном мной специально для модулей управления моторами и успешно применяемом уже в течении некоторого времени.
Читать полностью »
Рубрика «embedded systems» - 2
Открытый проект модуля управления электрическими моторами. Технология разработки ПО
2017-05-01 в 14:25, admin, рубрики: diy или сделай сам, embedded systems, MQX, open source, rtos, Программирование, Производство и разработка электроники, Электроника для начинающихНачало разработки на микроконтроллерах Kinetis. Быстрый старт
2015-10-10 в 20:20, admin, рубрики: diy или сделай сам, embedded systems, Kinetis, Интернет вещей, микроконтроллеры, программирование микроконтроллеров, Разработка для интернета вещей, Электроника для начинающих 
Продолжаем освоение микроконтроллеров Kinetis. На этот раз освоим среду разработки KDS и запрограммируем вывод меандра. Выясним сколько на это нужно времени. Узнаем какой максимальной частоты меандра можем добиться и обнаружим удивительное быстродействие портов Kinetis. И конечно же напишем классический «Hello, world!» с выводом через UART на скорости в 1.5 Мбит/c.
Предыдущие статьи:
Железячники vs. Программисты
2015-04-15 в 11:57, admin, рубрики: embedded, embedded systems, embox, linux, open source, Блог компании Embox, встроенное по, встроенные системы, микроконтроллеры, Программирование, программирование микроконтроллеров, метки: Embox, Linux
Всем привет!
Я — один из основателей открытого проекта Embox, и по совместительству являюсь генеральным директором компании ООО “Ембокс”. Как не трудно догадаться, её основная цель — это оказание коммерческих услуг на базе нашего проекта.
Собственно, блог — это своего рода мой подарок проекту. Поводом для этого послужило появление пятого пользователя, готового оплачивать наши услуги. В итоге мне показалось, что могут существовать и другие компании с проблемами, которые можно решить именно с помощью нашего проекта.
Эта статья первая в нашем блоге, и мне кажется, что будет уместно рассказать не столько о технических решениях и находках, которые мы применяем в нашем проекте, это, безусловно, будет в последующих статьях, а сделать своего рода статью-приветствие. И поскольку Embox — операционная система для встраиваемых решений, речь в статье пойдет прежде всего о сфере embedded systems. По сути дела, в статье я хочу поделиться своим представлением о возможном направлении развития встраиваемого ПО, конечно, подкреплять всё это я буду реальными ситуациями, с которыми мы сталкивались в процессе работы над проектом. Поэтому те, кто интересуется встраиваемыми системами и кому не лень прочитать пару страниц жалоб на трудное детство рассуждений, прошу под кат.Читать полностью »
Лучшие подходы переноса кода MATLAB в фиксированную точку
2015-04-14 в 7:13, admin, рубрики: c++, embedded systems, fixed-point, Matlab, встраиваемые системы, разработка, метки: fixed-point, matlabПри конвертации проекта из плавающей точки в фиксированную точку инженеры должны определить оптимальные типы данных в фиксированной точке. Эти типы данных должны удовлетворять ограничениям встраиваемой аппаратуры, при этом удовлетворяя системным требованиям по точности вычислений. Fixed-Point Designer™ помогает разрабатывать алгоритмы в фиксированной точке и конвертировать алгоритмы из плавающей точки в фиксированную точку, автоматически предлагая типы данных и атрибуты арифметики в фиксированной точке. При этом предоставляется возможность сравнения результатов симуляции в фиксированной точке с точностью до бита с эталонными результатами в плавающей точке.
В этой статье приводятся оптимальные приемы подготовки кода MATLAB® для конвертации, непосредственной конвертации кода MATLAB в фиксированную точку и оптимизации алгоритмов для эффективности и производительности. Если вы разрабатываете алгоритмы в фиксированной точке в MATLAB для последующего ручного написания кода или конвертируете в фиксированную точку для автоматической генерации кода, то описанные приемы помогут вам превратить ваш код MATLAB общего назначения в эффективный код в фиксированной точке.
Подготовка кода к переводу в фиксированную точку
Есть три шага, которые следует предпринять для обеспечения плавного процесса конвертации:
- Отделить основной алгоритм от остального кода.
- Подготовить код для инструментирования и ускорения.
- Проверить используемые функции на поддержку фиксированной точки.
fork() vs. vfork()
2014-08-07 в 13:56, admin, рубрики: embedded systems, embox, fork, vfork, встраеваемые системы, встроенные системы, операционные системы, ОС, системное программирование
Послушайте!
Ведь, если звезды зажигают — значит — это кому-нибудь нужно?В. В. Маяковский, 1914
Я занимаюсь программированием для встроенных систем, и данную статью решил написать для того, чтобы лучше разобраться с проблемой использования системных вызовов fork() и vfork(). Второй из них часто советуют не использовать, но ясно, что появился он не просто так.
Давайте разберёмся, когда и почему лучше использовать тот или иной вызов.
В качестве бонуса будет приведено описание реализаций vfork()/fork() в нашем проекте. Прежде всего, мой интерес связан с применением этих вызовов во встроенных системах, и главной особенностью приведённых реализаций является отсутствие виртуальной памяти. Возможно, хорошо разбирающиеся в системном программировании и во встроенных системах, дадут советы и поделятся опытом.
Кому интересно, прошу под кат.
Читать полностью »
ChibiOS: легковесная RTOS
2013-06-03 в 7:22, admin, рубрики: ChibiOS, embedded systems, rtos, операционные системы, Песочница, Программинг микроконтроллеров, метки: ChibiOS, embedded systems, rtos 
В этой статье я хочу представить и вкратце описать члена семейства ОС реального времени — ChibiOS.
Читать полностью »
Wiren Board — встраиваемый компьютер с Wi-Fi, GPRS, GPS, NFC и Ethernet из коробки
2013-04-11 в 14:06, admin, рубрики: diy или сделай сам, embedded, embedded linux, embedded systems, NFC, OLinuXino, Raspberry Pi, RFID, SoC, wiren board, Железо, одноплатный компьютер, разработка, метки: embedded, embedded linux, embedded systems, NFC, OLinuXino, Raspberry Pi, RFID, SoC, wiren board, АРМ, одноплатный компьютер 
TL;DR (Abstract)
Мы сделали маленький «одноплатный» встраиваемый компьютер с хорошим набором периферии, в основном беспроводной (GSM/GPRS, NFC, Wi-Fi, GPS, Ethernet, etc). Рабочее название — Wiren Board (от Wireless Enabled)
Предполагается, что использоваться он будет для всяческой автоматизации — то есть в качестве «мозга» для оборудования. Если вы хотите сделать умное устройство, не разрабатывая целиком собственное сложное железо, то это для вас. Впрочем, для DIY наш компьютер тоже весьма полезен, и об этом направлении мы не забыли при разработке. Если понадобится дополнить чем-то специфическим — функциональность можно расширять готовыми модулями. Что ещё приятно, стоимость компьютера мы планируем сделать всего около $100.
Первая версия уже готова, открыт предзаказ.
Что привело нас к разработке встраиваемого компьютера, через какие этапы мы прошли, и что в итоге получилось — читайте дальше.
Читать полностью »
Контроллер «Virt2real», или просто — Виртурилка
2012-10-30 в 6:09, admin, рубрики: diy или сделай сам, embedded linux, embedded systems, микроконтроллеры, Программинг микроконтроллеров, разработка, метки: embedded linux, embedded systems, микроконтроллеры— Ты пил пиво, — тихо заговорил Джо. — Плохо работал консервный нож.
Ты сказал, что сам смастеришь консервный нож, побольше и получше. Это я и есть.
© Генри Каттнер, «Робот-зазнайка»
Кто-бы мог подумать, что мы своими руками сможем разработать такую красавицу и умницу. Мало того — не просто разработать на бумаге, а ещё и получить десяток работающих образцов.
Картинка Для Привлечения Внимания

Пролог
Давным-давно мы с коллегой начали заниматься управлением через Интернет всякими штуковинами типа вебкамер и маленьких машинок. Чуть позже у нас появились ездящие девайсы посерьёзнее, способные нести на борту свой контроллер и ёмкую батарею. К тому же я увлёкся всякими летающими штуковинами — самолётами и коптерами, что внесло дополнительную лепту в список хотелок.
Не покидала мысль о том что хорошо бы сделать видео не «вид сбоку или сверху», а вид с борта девайса, от первого лица. То что самолётчики/коптеристы называют FPV. Было это примерно пару лет назад. Пробовали ставить на машинку аналоговую камеру и передатчик, принимали видео на ТВ-тюнер, далее отдавали на видеосервер для раздачи рулящим машинками. Но сразу всплыли нюансы — одновременно можно транслировать только 3-4 видеопотока, иначе появляются наводки с одного канала на другой. Плюс дороговизна такого решения, плюс проблемы с разрешёнными частотами, плюс паршивое качество картинки с постоянно появляющимися помехами… В общем, попробовали и забили на это дело. К тому же, возможностей управляющего контроллера (тогда всё было сделано на базе всем известной Ардуинки) начало нехватать. Стали искать другие варианты, чтоб было недорого, дёшево, удобно и практично. Но имеющиеся в продаже (за границей, само собой и с довольно высокой стомостью) на тот момент железки для нужд не подходили. Одни умели всё кроме видео, другие умели только видео, но не позволяли подключать периферию, и т.д. и т.п.
Open Source и беспроводные сенсорные сети у вас дома
2012-07-29 в 17:34, admin, рубрики: diy или сделай сам, embedded systems, internet of things, linux, open source, метки: diy или сделай сам, embedded systems, internet of things, linuxОткрытый код проникает везде — начав с небольшого количества энтузиастов лет 30-40 назад, захватил затем множество интернет серверов, а в не столь отдалённом прошлом вторгся на десктопы больших компаний. И совсем уж недавно попал в руки огромных толп пользователей с помощью Google и платформы Android.
Не так заметно, что лишь малая часть встроенных систем обходится сейчас без участия открытого кода. Системы управления автомобилем (телематика и прочее), развлекательные терминалы в салонах самолётов и другие, иногда напрочь лишённые пользовательского интерфейса системы строятся на базе Linux и его младших братьев, работающих в реальном времени.
И случилось это не только из-за дешевизны разработки, надёжности или поддержки сообщества. Просто открытые системы, в отличие от их закрытых собратьев — бессмертны и почти бесконечно расширяемы. Никогда не уволится последний знающий разработчик и постоянно улучшаемая система не становится слишком сложной для того, чтобы каждая новая фича стала требовать огромных усилий на реализацию и тестирование.
С каждым годом открытые технологии вытесняют проприетарные стандарты и следующий этап будет происходить прямо у вас дома. А мы надеемся принять в этом активное участие, создавая Flexibity Open Sensors Toolkit — открытую платформу для домашней автоматизации.

