Перейти на компактные 12-словные записи v4 и сохранять 10 процентов банка после отключения. Добавить трёхсекундное ожидание роста ЗПТ и настраиваемый лимит пусков. Явно инициализировать состояние UART и гарантировать публикацию параметров EEPROM перед запуском Timer2. Сохранить воспроизводимые сборки, регрессионные проверки, документацию и обновлённые результаты сборки; исключить временные артефакты.
38 lines
2.5 KiB
C
38 lines
2.5 KiB
C
/* Проверка load_control/stubs на модели ПК. Русские пояснения сохранены в UTF-8. */
|
|
/* Задаёт dsk_LOAD = 6; код платы нагрузки. */
|
|
#define dsk_LOAD 6
|
|
/* Задаёт adr_LOA1 = 5; данные adr_LOA1. */
|
|
#define adr_LOA1 5
|
|
/* Задаёт adr_LOA2 = 6; данные adr_LOA2. */
|
|
#define adr_LOA2 6
|
|
/* Задаёт Commands = modbus[127]; слово команд, технологический регистр 127. */
|
|
#define Commands modbus[127]
|
|
/* Задаёт cUMPstart = (Commands & 0x80); данные cUMPstart. */
|
|
#define cUMPstart (Commands & 0x80)
|
|
/* Задаёт cUMPreset = (Commands & 0x40); данные cUMPreset. */
|
|
#define cUMPreset (Commands & 0x40)
|
|
/* Объявляет test_init_dac — test init ЦАП. Память определена в другом модуле. */
|
|
extern unsigned int test_init_dac;
|
|
/* Задаёт cInitDac = test_init_dac; c Init ЦАП. */
|
|
#define cInitDac test_init_dac
|
|
/* Задаёт cCalibrDac = (Commands & 0x200); c Calibr ЦАП. */
|
|
#define cCalibrDac (Commands & 0x200)
|
|
/* Задаёт DAC_go = modbus[0x50]; начальный ток нагрузки в мА, технологический регистр 0x50. */
|
|
#define DAC_go modbus[0x50]
|
|
/* Задаёт DAC_stop = modbus[0x51]; конечный ток нагрузки в мА, технологический регистр 0x51. */
|
|
#define DAC_stop modbus[0x51]
|
|
/* Задаёт LOAD_CAN_TIMEOUT = modbus[0x52]; сохраняемый тайм-аут свежести напряжения CAN в миллисекундах, регистр 0x52. */
|
|
#define LOAD_CAN_TIMEOUT modbus[0x52]
|
|
/* Задаёт LOAD_STATUS = modbus[0x7C]; слово состояния защиты нагрузки для чтения, регистр 0x7C. */
|
|
#define LOAD_STATUS modbus[0x7C]
|
|
/* Задаёт записываемый лимит общего числа пусков в регистре 0x7D; допустимы 1..65535 попыток, включая первый START. */
|
|
#define LOAD_MAX_ATTEMPTS modbus[0x7D]
|
|
/* Сохраняет прежний заводской предел пяти пусков для сброса настроек и замены нуля из старой EEPROM. */
|
|
#define LOAD_DEFAULT_MAX_ATTEMPTS 5U
|
|
/* Задаёт DAC_min = modbus[0x79]; ЦАП min. */
|
|
#define DAC_min() modbus[0x79]
|
|
/* Задаёт DAC_max = modbus[0x78]; ЦАП max. */
|
|
#define DAC_max() modbus[0x78]
|
|
/* Задаёт DAC_cal = modbus[0x7A]; ЦАП cal. */
|
|
#define DAC_cal() modbus[0x7A]
|