Что делаем
Драйверы и периферия
Работа с АЦП, ЦАП, таймерами, дисплеями, памятью, датчиками и исполнительными устройствами.
Измерения и обработка сигналов
Фильтрация, калибровка, расчёт измеряемых величин, контроль достоверности данных.
Протоколы связи
Проводные и беспроводные интерфейсы, обмен с ПК, контроллерами верхнего уровня и облаком.
Архитектура ПО
Работа без ОС или на RTOS, разделение на модули, обработка ошибок и аварийных режимов.
Загрузчик и обновление
Обновление через интерфейс или по воздуху, проверка целостности образа, откат версии.
Энергопотребление
Режимы сна и пробуждения для приборов на батарейном питании, оценка времени автономной работы.
Как проходит работа
| Этап | Что делаем | Результат |
|---|---|---|
| 1. Требования | Разбираем функции устройства, интерфейсы, режимы работы и аварийные ситуации | Требования к ПО |
| 2. Архитектура | Выбираем подход (без ОС или RTOS), делим ПО на модули, описываем протокол обмена | Описание архитектуры и протокола |
| 3. Разработка | Пишем код по модулям, ведём историю изменений в системе контроля версий | Рабочие версии прошивки |
| 4. Отладка на плате | Проверяем на реальной электронике, исправляем ошибки | Прошивка, работающая на образце |
| 5. Тестирование | Модульные тесты, стендовые проверки, граничные и аварийные режимы | Протокол тестирования |
| 6. Передача | Исходный код, бинарные файлы, инструкция по сборке и прошивке | Комплект для выпуска и сопровождения |
Что вы получаете
Код и файлы
- Исходный код с историей изменений
- Собранные файлы прошивки
- Инструкция по сборке и прошивке устройства
- Утилиты для прошивки на производстве — по задаче
Документация
- Описание архитектуры ПО
- Описание протокола обмена
- Протокол тестирования
- Программная документация по ЕСПД — если требуется
Требования, которые учитываем
| Документ | Когда важен |
|---|---|
| ТР ТС 020/2011 (ЭМС) | Режимы работы прошивки влияют на помехи от прибора и устойчивость к ним — учитываем при отладке перед испытаниями |
| Стандарты ЕСПД (серия ГОСТ 19) | Когда заказчику нужна программная документация по государственным стандартам |
| МЭК 62304 | Процессы жизненного цикла ПО медицинских изделий — для прошивок медицинских приборов |
Вопросы и ответы
Можно заказать только прошивку под нашу плату?
Да. Нужны схема платы, образцы и описание того, что должно делать устройство. Если в ходе работы найдём аппаратные проблемы, сообщим и предложим доработку.
Доработаете прошивку, написанную другим разработчиком?
Да. Начинаем с разбора исходного кода: структура, известные ошибки, возможность сборки. По итогам предлагаем доработку или переписывание проблемных модулей.
Передаёте исходный код?
Да, условия передачи исходного кода и прав на него фиксируем в договоре до начала работ. Передаём код с историей изменений и инструкцией по сборке и прошивке.
Делаете обновление прошивки по воздуху?
Да, если это позволяет аппаратная часть: закладываем загрузчик, проверку целостности образа и возможность отката к предыдущей версии при сбое обновления.
Как вы тестируете прошивку?
Модульные тесты для логики и обработки данных, проверка на стенде с реальной платой, проверка граничных режимов: пропадание питания, обрыв связи, некорректные данные. Результаты оформляем протоколом.