No description
Find a file
2026-07-23 15:37:05 +03:00
.devcontainer # Created bsp_can module 2026-03-30 13:29:17 +03:00
.github/workflows # bootloader, service-tui: ready for release 2026-07-20 15:52:22 +03:00
.vscode # tft_app: Phase 0 2026-07-21 12:04:49 +03:00
bsp # tft_app: Phase 3.3 RGB 565 & 888 Hybrid 2026-07-22 18:47:12 +03:00
cmake # tft_app: Phase 3.2 - menu & indicator 2026-07-22 14:49:22 +03:00
docs # tft_app: UX test - dummy parameter 2026-07-23 15:37:05 +03:00
firmware # tft_app: UX test - dummy parameter 2026-07-23 15:37:05 +03:00
just # tft_app: Phase 0 2026-07-21 12:04:49 +03:00
lib # 3. 2026-03-16 14:34:05 +03:00
port # tft_app: Phase 3.2 - menu & indicator 2026-07-22 14:49:22 +03:00
sdk # tft_app: Phase 3.2 - menu & indicator 2026-07-22 14:49:22 +03:00
tests # tft_app: UX test - dummy parameter 2026-07-23 15:37:05 +03:00
tools # tft_app: Phase 0 2026-07-21 12:04:49 +03:00
utils # tft_app: Phase 3.4 NKU Remote, Opto Inputs 2026-07-23 14:53:42 +03:00
.clang-format # 8 - IMPORTANT 2026-03-11 14:58:11 +03:00
.clang-tidy # bootloader: SEMC Init, Led dictionary 2026-07-17 16:49:02 +03:00
.clangd # 11 2026-03-23 13:58:09 +03:00
.env.example # Pre-release: ready for merge 2026-07-08 18:39:11 +03:00
.gitattributes Начальный этап по разработке рабочего окружения закончен 2026-03-13 19:11:41 +03:00
.gitignore # tft_app: plan & arch 2026-07-20 18:40:40 +03:00
bootstrap.sh # 3. 2026-03-15 14:01:45 +03:00
CHANGELOG.md # bootloader, service-tui: ready for release 2026-07-20 15:52:22 +03:00
CMakeLists.txt # tft_app: Phase 0 2026-07-21 12:04:49 +03:00
CMakePresets.json # tft_app: Phase 3.4 NKU Remote, Opto Inputs 2026-07-23 14:53:42 +03:00
Justfile # test_display: finished 2026-05-25 18:19:55 +03:00
pyocd.yaml # 6 2026-03-18 12:33:53 +03:00
pyocd_debug.yaml # 9 2026-03-20 15:52:18 +03:00
README.md # bootloader, service-tui: ready for release 2026-07-20 15:52:22 +03:00

tft_manufacture_test

Монорепозиторий для MIMXRT1052CVJ5B. Содержит три независимых firmware-проекта с общей инфраструктурой сборки, тестирования и инструментарием.

Архитектура рабочего окружения — docs/DEV_ARCH.md


Firmware-проекты

Проект Путь Описание
Тестовая прошивка firmware/test/ Входной контроль платы: CAN, UART, SDRAM, QSPI, SDIO, RGB, оптовходы, LED, кнопки, MQS README
Загрузчик firmware/bootloader/ A/Б обновление через uSD (MCUboot, Direct-XIP), recovery при зависании образа. Обновляется только через USB ROM + blhost / SWD README
Production прошивка (запланирована) firmware/tft_app/ Приложение с реализацией логики лифтового индикатора. Обновляется загрузчиком

Инструменты (tools/)

Инструмент Путь Назначение
Сервисный TUI tools/service_tui/ Диагностика и прошивка готовых плат сервисным инженером README
Прошивка (dev-CLI) tools/host/ USB SDP / SWD прошивка при разработке README
HIL-тесты tools/hil/ pytest-окружение аппаратных тестов README

BSP

Описание модулей, правила написания компонентов и CMake-шаблоны — bsp/README.md.


Тестирование

Уровень Инструменты Запуск
Host unit-тесты Unity + fff, clang just build::test-host (devcontainer)
HIL target-тесты pyOCD + pyserial + pytest + M5StampPLC just host::hil-run (хост)

Сборка и прошивка

# devcontainer
just build::test-host                   # host unit-тесты
just build::build-firmware-test-debug   # ELF
just build::hab-firmware-test-debug     # HAB-образ для прошивки
just build::build-hil                   # HIL target-прошивки

# хост
just host::flash-test-debug             # прошить через USB SDP
just host::flash-swd-test-debug         # прошить через SWD (power cycle после)
just host::hil-run                      # HIL-тесты
just host::debug-server                 # GDB-сервер для отладки

Прошивка подробно — docs/HOW_TO_FLASH.md Отладка подробно — docs/HOW_TO_DEBUG.md


Быстрый старт

git clone <repo-url>
cd tft_manufacture_test

# 1. Инициализация хоста (один раз)
./bootstrap.sh

# 2. Заполнить .env (порты MCU-Link и M5StampPLC)
cp .env.example .env

# 3. Задеплоить агент на M5StampPLC (один раз)
just host::m5-deploy

# 4. Открыть в VSCode → Reopen in Container
# Затем внутри devcontainer:
just build::test-host
just build::build-firmware-test-debug

# 5. На хосте:
just host::flash-test-debug
just host::hil-run