Читал Habrahabr. Наткнулся на статью.
первая статья - http://habrahabr.ru/post/198672/
вторая статья - http://habrahabr.ru/post/201472/
цитата:
первая статья - http://habrahabr.ru/post/198672/
вторая статья - http://habrahabr.ru/post/201472/
цитата:
rusEfi это opensource проект по созданию универсального блока управления двигателем внутреннего сгорания. Под универсальным подразумевается поддержка широкого спектра конфигураций, датчиков и исполнительных устройств. Это значит, что этот блок можно будет установить на любой двигатель и получить полный контроль, без закрытых прошивок, недокументированных возможностей и всего остального. Если вы программист, то возможности еще шире — можно будет самому править алгоритмы, а не только доступные карты и настройки. От других подобных проектов rusEfi отличается акцентом на мощном, но недорогом железе и благодаря этому возможности писать наиболее прозрачный и переносимый код.
был выбран STM32 — недорогой, но мощный.
По нескольким причинам я считаю, что на текущем этапе, а возможно и вообще навсегда, железо должно быть модульным. В данный момент используется отладочная плата STM32F4DISCOVERY и два модуля — модуль силовых драйверов и модуль аналоговых входов.
Размеры платы разработки позволяют подключить к ней с разных углов как минимум четыре небольших модуля. Сейчас у нас есть модуль аналоговых входов
Софт
Для лучшей модульности система использует небольшую RTOS ChibiOS/RT, ценную еще и наличием уровня абстракции от оборудования. ChibiOS даёт нам во-первых потоки и примитивы блокировик — это функционал ядра RTOS, а во-вторых — драйвера железа с удобным и единым для разных МК API. За счёт этого не приходится углубляться в шины и регистры и есть надежда на переносимость. При этом большой связи конкретно с этой RTOS нет, если придётся — можно будет переехать на другую.
Главный принцип этого проекта: максимально читаемый исходный код. Всё что можно делается максимально модульно и прямолинейно: очень хочется нигде ничего не хакать, а просто честно имплементировать. При минимальной завязанности на выбранную аппаратную платформу переход на другую платформу в будущем должен быть достаточно прост.
В данный момент проект нуждается в Вашей поддержке. Нужно писать код, работать над электроникой и делать другие увлекательные и полезные вещи. Помочь может каждый!
Код проекта расположен на Sourceforge — там же живёт и трекер
Схемы текущей версии железа
Есть форум