TOSUN предоставляет для чипов Infineon серии TLE989X заказной пакет кода и инструменты прошивки: пакет кода, проект прошивки на базе TSMaster, аппаратный инструмент TF1011 и др. С TF1011 штатный программатор Infineon не нужен: Boot RAM записывается напрямую, а APP прошивается по UDS. В статье — состав пакета кода, настройка процесса прошивки в TSMaster за три шага и способы онлайн- и офлайн-прошивки.

Ключевые слова: Infineon TLE989X, прошивка по UDS, Flash Bootloader, TSMaster, TF1011, SeedKey.

1. Обзор решения

Решение включает пакет кода, проект прошивки на базе TSMaster, аппаратный инструмент прошивки TF1011 и др. (рис. 1-1). С помощью TF1011 можно без фирменного программатора Infineon напрямую записывать Boot RAM, а также прошивать APP по протоколу UDS.

Решение прошивки TLE989X
Рис. 1-1. Решение TOSUN для прошивки чипов Infineon TLE989X

Состав пакета кода. В пакет входят APP1, APP2, Bootloader, boot_TSmaster и документация:

  • Файлы APP1 и APP2 — примеры приложений, мигающих светодиодом с разной частотой.
  • Папка boot_TSmaster — готовый пример проекта для ПО верхнего уровня TSMaster; вместе с Bootloader реализует загрузку APP.
  • Bootloader service manual — руководство пользователя на китайском и английском.
  • Папка bootloader — исходный код Bootloader; его содержимое показано на рис. 1-2.
Исходный код Bootloader
Рис. 1-2. Состав исходного кода Bootloader

2. Настройка процесса прошивки в TSMaster

В нашем примере процесс прошивки состоит из 10 шагов:

  1. 10 03 — сервис 0x10, переход в расширенную сессию (03).
  2. 85 02 — отключение DTC (сервис-заглушка, без конкретной реализации).
  3. 28 03 01 — отключение сообщений (сервис-заглушка, без конкретной реализации).
  4. 10 02 — сервис 0x10, переход в программную сессию (02).
  5. 27 01 — сервис 0x27, запрос seed для разблокировки (Security Access).
  6. 27 02 — сервис 0x27, отправка key.
  7. 2E 00 00 — запись данных по идентификатору.
  8. 31 00 00 — Routine Control.
  9. 34, 36, 37 — составной диагностический сервис загрузки APP.
  10. 11 — сброс ЭБУ (ECU Reset).

Настройка процесса прошивки в TSMaster обычно состоит из трёх этапов.

2.1. Этап 1: настройка параметров

  • Параметры диагностического транспортного уровня: тип шины, различные ID, DLC канала, интервалы и т.д. (рис. 2-1).
  • Параметры диагностического сервисного уровня: таймеры P2, параметры «тестер онлайн» (TesterPresent), Seed&Key (рис. 2-2).

TSMaster умеет напрямую импортировать DLL с алгоритмом SeedKey, а главное — имеет встроенный редактор алгоритмов SeedKey, позволяющий реализовать алгоритм без внешних инструментов разработки вроде Visual Studio.

Параметры транспортного уровня
Рис. 2-1. Настройка параметров диагностического транспортного уровня
Параметры сервисного уровня
Рис. 2-2. Настройка параметров диагностического сервисного уровня

2.2. Этап 2: настройка диагностических сервисов

Здесь настраиваются все диагностические сервисы, используемые в процессе прошивки, а также составной диагностический сервис (0x34/0x36/0x37) для загрузки APP: в составной сервис входят загрузка файла APP, настройка способа верификации, настройка стирания Flash, настройка запроса и передачи данных, настройка завершения передачи (рис. 2-3, 2-4).

Настройка диагностических сервисов
Рис. 2-3. Настройка базовых диагностических сервисов
Составной сервис загрузки
Рис. 2-4. Настройка составного сервиса загрузки APP (0x34/0x36/0x37)

2.3. Этап 3: настройка процесса прошивки

В редакторе автоматического диагностического процесса соберите процесс прошивки по шагам, перечисленным выше (рис. 2-5). После настройки прошивать можно онлайн через CAN-интерфейс CAN→USB или загрузить процесс в офлайн-инструмент TF1011 для автономной прошивки.

Процесс прошивки
Рис. 2-5. Процесс прошивки в редакторе автоматических диагностических процессов

3. Способы прошивки

После настройки процесса прошивать можно двумя способами (рис. 3-1):

  • Онлайн-прошивка: CAN-интерфейс CAN→USB, подключённый к ПК. Преимущество: многоканальный CAN-инструмент позволяет прошивать несколько ЭБУ одновременно, а также выполнять многократные последовательные прошивки для стресс-тестирования процесса.
  • Офлайн-прошивка: процесс загружается в TF1011. Основное применение — производственная линия и сервис, где важна портативность.
Способы прошивки
Рис. 3-1. Онлайн- и офлайн-прошивка

Инструменты для онлайн-прошивки перечислены в таблице ниже. Есть также инструменты для LIN и Ethernet: в TSMaster процесс прошивки узлов шин LIN/Ethernet настраивается так же, как для CAN.

МодельОписание
TC10111 канал CAN FD → USB
TC1012/P1 канал CAN FD + 1 канал LIN → USB
TC10132 канала CAN FD → USB
TC10144 канала CAN FD → USB
TC1016/P4 канала CAN FD + 2 канала LIN → USB
TC10178 каналов CAN FD → USB
TC101812 каналов CAN FD → USB
MP10132 канала CAN FD → miniPCIe
TP10132 канала CAN FD → PCIe
TC1114B4 канала CAN FD → USB/Wi-Fi

Из офлайн-инструментов сейчас доступен TF1011 с 1 каналом CAN FD/CAN (4-канальная версия в разработке). TF1011 поддерживает одновременную настройку трёх процессов загрузки с переключением кнопкой.

3.1. TF1011

1 канал CAN FD, совместимый одновременно с CAN 2.0 и CAN FD; встроенный программируемый терминальный резистор — внешний терминатор не нужен (рис. 3-2).

TF1011
Рис. 3-2. Офлайн-инструмент прошивки TF1011

Особенности:

  • Разъём DB9 с возможностью питания от разъёма DB9.
  • Процесс прошивки UDS настраивается в графическом интерфейсе TSMaster, программирование не требуется.
  • Бесшовная стыковка процессов конфигурации для разработки и производства.
  • Поддержка загрузки пользовательского алгоритма Seed&Key.
  • До трёх диагностических процессов (включая прошивку FBL) одновременно, переключение кнопкой.
  • Запись сообщений процесса прошивки (опция).
  • Поддержка протокола Infineon UART on CAN.
  • Поддержка управления цепью питания прошиваемого устройства.