Добавить защищённое обновление приложения через RS и CAN с сохранением загрузчика, проверкой CRC, восстановлением передачи и защитой EEPROM. Подключить общий процесс сборки C2000 и автоматический счётчик версии для согласованных RAM, Flash, CAN и паспортов бинарных образов. Уточнить запуск ЦАП, обработку измерений и параметров нагрузки, начальную индикацию и документацию регистров GAS. Дополнить модели аппаратуры и изолировать заголовки CAN в тестах. Проверка: 26 тестов выпуска, 4 теста восстановления CAN и восемь программных моделей CAN, Flash, EEPROM, ЦАП, параметров и TESTLAMP.
19 lines
3.0 KiB
C
19 lines
3.0 KiB
C
#ifndef CAN167_BOOT_H /* Исключает повторное объявление точек подключения загрузчика 167. */
|
|
#define CAN167_BOOT_H /* Один интерфейс используется главным циклом, CAN ISR и watchdog ISR. */
|
|
#include "f28335_can_application_config.h" /* Использует тот же аппаратный выбор и версию, что напрямую подключённый к CCS модуль templates. */
|
|
#if F28335_CAN_BOOT_APPLICATION_ENABLED /* Единый признак исключает расхождение интерфейса платы и реально скомпилированной общей реализации. */
|
|
#include "../protocan-boot/ports/tms320f28335/f28335_can_boot.h" /* Подключает существующий порт общей библиотеки без копирования протокола в 167. */
|
|
#include "../protocan-boot/ports/tms320f28335/f28335_boot_platform.h" /* Предоставляет handoff, ранний watchdog и определение реально запущенного слота. */
|
|
#define CAN167_AB_ENABLED 1 /* Разрешает защиту EEPROM и CAN-сервис для RAM и защищённой Flash при физически установленной M95M02. */
|
|
#else /* Остальные аппаратные варианты не получают ложного обещания A/B-обновления. */
|
|
#define CAN167_AB_ENABLED 0 /* Позволяет старым сборкам и host-моделям исключить зависимости загрузчика. */
|
|
#define F28335Boot_StartupWatchdog() ((void)0) /* Профиль AT25256B без CAN A/B сохраняет прежний watchdog приложения. */
|
|
#define F28335Boot_RunningSlot() 255U /* Значение FF означает отсутствие handoff от отдельного загрузчика. */
|
|
#define F28335CanBoot_Init(periph_id) ((void)(periph_id)) /* При выключенном A/B принимает тот же аппаратный номер, но не занимает служебные mailbox. */
|
|
#define F28335CanBoot_RxISR() ((void)0) /* Оставляет legacy CAN ISR независимым от выключенного сервиса. */
|
|
#define F28335CanBoot_Service() ((void)0) /* Главный цикл использует единый вызов для всех физических профилей. */
|
|
#define F28335CanBoot_Ready() ((void)0) /* Не публикует подтверждение кандидата, если загрузчик не подключён. */
|
|
#define F28335CanBoot_WatchdogAllowed() 1U /* Сохраняет прежнее обслуживание watchdog для самостоятельных образов. */
|
|
#endif /* Завершает выбор поддерживаемого способа загрузки. */
|
|
#endif /* Завершает защиту интерфейса CAN Boot проекта 167. */
|