#include "at32f403a_407.h" #include "settings_api.h" #include "settings_dio.h" #if defined (MDIO_88) // void settings_dio_set_all_default(void) { // Дискретные/счетные входы settings_din_def(&settings); // Выходы settings_do_def(&settings); // Время ведения архива по каждому каналу (сек.) for (uint8_t i = 0; i < ARCH_DIO_CH_NUMBER; i++) { settings.period_archive[i] = 3600; } } // Установить параметры дискретных входов по умолчанию void settings_din_def(settings_t *settings) { // Все входы выключены settings->di_state_bits = 0; // Параметры входов в обычном режиме for (int i = 0; i < DI_NUMBER; i++) { settings->di[i].state = 0; } 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_state_bits = 0; for (uint8_t i = 0; i < DO_NUMBER; i++) { settings->dout[i].state = 0; } 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; } } #endif