Кейс · Контроллер Stm / заказчик кастомных решений для Toyota

Прошивка CAN-модуля для кастомной коробки Toyota

Разработка и переписывание прошивки STM32 для CAN-модуля: шесть входов — шесть команд по шине, поддержка новых автомобилей Toyota

Клиент
Контроллер Stm / заказчик кастомных решений для Toyota
Отрасль
Автомобильная электроника, Embedded, CAN
  • Embedded
  • STM32
  • CAN
  • Автомобили
  • Прошивка
  • C
  • HAL
Прошивка CAN-модуля для кастомной коробки Toyota

Кейс

О проекте

О проекте

Клиент обратился с готовым устройством — CAN-модулем для кастомной коробки (адаптер/интерфейс под автомобили Toyota). С расширением парка поддерживаемых автомобилей потребовалось обновить логику устройства. Исходный код был утерян, поэтому мы с нуля восстановили и переписали прошивку под актуальные требования.

Задачи

  • Восстановить логику работы устройства без исходников (реверс по ТЗ и поведению)
  • Реализовать отправку шести разных команд по CAN при задействовании шести цифровых входов
  • Добавить седьмую команду при одновременном нажатии нескольких входов или отсутствии сигнала
  • Обеспечить обработку входов по прерываниям с периодом 100 мс
  • Сохранить совместимость с существующим железом и разводкой (PA11/PA12 — CAN, PA13/PA14 — прошивка по SWD)

Техническая платформа

  • Микроконтроллер: STM32F042F6P6
  • Тактирование: внешний кварц 8 МГц
  • CAN: 500 кбит/с, приём (PA11) и передача (PA12)
  • Входы: PA0, PA1, PA2, PA3, PA4, PA5 — по высокому уровню с прерыванием
  • Прошивка: через SWD (PA13, PA14), автономная работа без ПК

Реализованная логика

Каждому входу соответствует своя CAN-команда (ID 0x3F7, DLC 4, уникальный байт данных). При отсутствии активных сигналов или при нескольких активных входах отправляется отдельная команда — устройство ведёт себя предсказуемо в любом сочетании нажатий.

Интеграция с экосистемой заказчика

В рамках проекта учитывалась связка с TunerStudio и INI-файлами для калибровки и отладки (Torneo/электроника автомобиля). Параметры и адреса согласовывались с конфигурацией на стороне заказчика, что позволило быстро проверять работу на стенде и в автомобиле.

Результаты

  • Прошивка полностью переписана под актуальное ТЗ, исходники переданы заказчику
  • Корректная работа с тактированием и CAN на 500 кбит/с
  • Надёжная обработка входов по прерываниям с интервалом 100 мс
  • Учтены особенности железа (в т.ч. вывод PB8 на GND по мануалу для стабильного запуска)
  • Устройство готово к работе с новыми автомобилями Toyota в составе кастомной коробки

Технологии

  • C
  • STM32 HAL
  • STM32CubeMX
  • CAN 2.0
  • Keil
  • SWD

ASTAR IT

Есть похожая задача?

Расскажите о процессе, который нужно запустить, объединить или автоматизировать.

Обсудить проект
← Вернуться к проектам
Предварительная оценка

Расскажите о задаче

Короткий бриф помогает сразу подключить подходящего специалиста и вернуться с предметными вопросами по срокам, рискам и бюджету.

Обычно отвечаем в рабочее время. Поля формы сохраняются в защищённой админке; в Яндекс Метрику контакты и текст задачи не передаются.
Нужен короткий ответ?+7 (351) 220-99-41Telegram