Устранена зависимость дискретов СИФУ от основного цикла в 166

Фронты START/STOP обрабатываются при принятии командного слова CAN/RS,
а окончание импульса обслуживается таймером. STOP имеет приоритет,
перекрытие выходов исключено, сохранена защита от самопуска при включении.
Загрузка параметров больше не подменяет живые команды нагрузки.

Добавлены подробные русские комментарии во все собственные C-модули
и основные заголовки, описание поведения и host-тест автомата.
Обновлены файлы прошивки. Полная сборка TI 22.6.1.LTS и тесты пройдены;
проверка на физической плате не выполнялась.
This commit is contained in:
2026-09-23 01:28:11 +03:00
parent 2d7148baa5
commit eb2ff79932
49 changed files with 1564 additions and 950 deletions
+11 -1
View File
@@ -1,8 +1,18 @@
/* Èíòåðôåéñ ÖÀÏ è ÑÈÔÓ. Âõîäÿùèå êîìàíäû — UMP_commands_write,
* îêîí÷àíèå èìïóëüñà — UMP_pulse_tick. IMPowse òîëüêî äëÿ äèàãíîñòèêè.
*/
void Load_runner(void);
void Anal_output(long vrot, long maxx);
void Init_DAC(void);
void Setup_DAC_time(void);
/* Ñ÷¸ò÷èê ïóñêîâîãî èìïóëüñà è âûäåðæêè èíèöèàëèçàöèè äîñòóïíû ëîããåðó. */
extern unsigned long IMPowse, WAKEpowse;
extern volatile unsigned long IMPowse;
extern unsigned long WAKEpowse;
extern unsigned int period_dac, time_dac;
/* Âñå îïåðàöèè áåçîïàñíû äëÿ âûçîâà èç main è îáðàáîò÷èêîâ IRQ. */
void UMP_pulse_init(void);
void UMP_commands_write(unsigned int commands);
void UMP_pulse_tick(void);
void UMP_reset_parameter_commands(void);