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.

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

2. Настройка процесса прошивки в TSMaster
В нашем примере процесс прошивки состоит из 10 шагов:
10 03— сервис 0x10, переход в расширенную сессию (03).85 02— отключение DTC (сервис-заглушка, без конкретной реализации).28 03 01— отключение сообщений (сервис-заглушка, без конкретной реализации).10 02— сервис 0x10, переход в программную сессию (02).27 01— сервис 0x27, запрос seed для разблокировки (Security Access).27 02— сервис 0x27, отправка key.2E 00 00— запись данных по идентификатору.31 00 00— Routine Control.34, 36, 37— составной диагностический сервис загрузки APP.11— сброс ЭБУ (ECU Reset).
Настройка процесса прошивки в TSMaster обычно состоит из трёх этапов.
2.1. Этап 1: настройка параметров
- Параметры диагностического транспортного уровня: тип шины, различные ID, DLC канала, интервалы и т.д. (рис. 2-1).
- Параметры диагностического сервисного уровня: таймеры P2, параметры «тестер онлайн» (TesterPresent), Seed&Key (рис. 2-2).
TSMaster умеет напрямую импортировать DLL с алгоритмом SeedKey, а главное — имеет встроенный редактор алгоритмов SeedKey, позволяющий реализовать алгоритм без внешних инструментов разработки вроде Visual Studio.


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


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

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

Инструменты для онлайн-прошивки перечислены в таблице ниже. Есть также инструменты для LIN и Ethernet: в TSMaster процесс прошивки узлов шин LIN/Ethernet настраивается так же, как для CAN.
| Модель | Описание |
|---|---|
| TC1011 | 1 канал CAN FD → USB |
| TC1012/P | 1 канал CAN FD + 1 канал LIN → USB |
| TC1013 | 2 канала CAN FD → USB |
| TC1014 | 4 канала CAN FD → USB |
| TC1016/P | 4 канала CAN FD + 2 канала LIN → USB |
| TC1017 | 8 каналов CAN FD → USB |
| TC1018 | 12 каналов CAN FD → USB |
| MP1013 | 2 канала CAN FD → miniPCIe |
| TP1013 | 2 канала CAN FD → PCIe |
| TC1114B | 4 канала 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).

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