| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 | #include "at32f403a_407.h" #include "settings_api.h"#include "settings_dio_api.h"//void settings_dio_set_all_default(void){    // Дискретные/счетные входы    settings_din_def(&settings);        // Выходы    settings_do_def(&settings);        // Безопасный режим    settings.save_mode = 1;         // Время ожидания опроса (сек.)    settings.save_delay = 60;        // Время ведения архива по каждому каналу (сек.)    for (uint8_t i = 0; i < ARCH_CH_NUMBER; i++) {        settings.period_archive[i] = 3600;    }}// Установить параметры дискретных входов по умолчаниюvoid settings_din_def(settings_t *settings){    settings->di_mode_bits = 0;    settings->di_norm_state_bits = 0;        for (int i = 0; i < DI_NUMBER; i++) {        settings->di_debounce[i] = 50;    }}// Выходыvoid settings_do_def(settings_t *settings){    settings->do_mode_bits = 0; // режим работы выхода (обычный выход)    settings->do_bits = 0;      // последнее сохраненное значение     settings->do_save_bits = 0;        for (uint8_t i = 0; i < DO_NUMBER; i++)    {        settings->do_pwm[i] = 30;        settings->do_pwm_save[i] = 30; // значение на выходах в бесопасном режиме работы        settings->do_pwm_period[i] = 50;        settings->do_pwm_period_save[i] = 50;    }}
 |