feat(firmware-info): добавь pre/post-build для CCS и Keil

Подключи общий генератор версии и SCI8-конвертацию через templates. Сохрани метаданные и SHA-256 готового BIN, совместимость с Python 3.8 и прежний SETGUI preflight. Опиши настройку CCS и локальное копирование результатов.
This commit is contained in:
2026-10-08 14:58:27 +03:00
parent 0e3d89e1ee
commit b5b2d1ae37
9 changed files with 382 additions and 0 deletions

View File

@@ -0,0 +1,13 @@
# Перенос контроля версии прошивки
В templates используются общий модуль `c/firmware-info` и общий публикатор `tools/firmware-publish`. При переносе подключаются конфигурация контроллера, генерация build ID, обработчик запроса версии и настройки выпуска.
- [Пошаговое подключение модуля версии](c/firmware-info/PORTING.md).
- [BAT-файлы precompile и postcompile для CCS и Keil](tools/firmware-build/README.md).
- [Настройка подготовки и публикации образов](tools/firmware-publish/PORTING.md).
В режиме CCS `--identity` precompile создаёт заголовок версии и Git-метаданные, а postcompile преобразует OUT в SCI8 HEX/BIN и создаёт manifest и SHA-256. В прежнем режиме postcompile запускает SETGUI preflight готового образа. Для каждого проекта задаются явные пути; алгоритмы остаются в templates.
[Копирование BIN, manifest и SHA-256 в каталог SETGUI после postcompile](tools/firmware-build/README.md#4-копирование-результата-в-каталог-setgui).
Для C2000 с 16-битным char требуется отдельная адаптация байтового контракта. BAT-файлы сами по себе эту адаптацию не выполняют.