Zdravím přátelé,
vracím se zpět k ventilátorům a z DS nějak nechápu to použití toho fault registru. Pracuji v módu PWM, konkrétní nastavení asi bude jasné z této struktury:
Kód: Vybrať všetko
max31790_master_config_t cfg =
{
.I2C_num = I2C1_num,
.adr = 0x20,
.global_cfg = 0x00, // global config
.use_channel[0] = 1, // pouzit kanal 1
.use_channel[1] = 1, // pouzit kanal 2
.use_channel[2] = 1, // pouzit kanal 3
.use_channel[3] = 0, // nepouzit kanal 4
.use_channel[4] = 0, // nepouzit kanal 5
.use_channel[5] = 0, // nepouzit kanal 6
.fan_failed_seq_start_cfg = 0x46,
.fan_cfg[0] = (0xFF & (MAX31790_FAN_CFG_SPIN_UP_0_5 | MAX31790_FAN_CFG_TACH_INPUT)), // 0x38
.fan_cfg[1] = (0xFF & (MAX31790_FAN_CFG_SPIN_UP_0_5 | MAX31790_FAN_CFG_TACH_INPUT)), // 0x38
.fan_cfg[2] = (0xFF & (MAX31790_FAN_CFG_SPIN_UP_0_5 | MAX31790_FAN_CFG_TACH_INPUT)), // 0x38
.fan_dyn[0] = (MAX31790_FAN_DYN_SR_2 | MAX31790_FAN_DYN_PWM_ROC_62_5), // 0x38
.fan_dyn[1] = (MAX31790_FAN_DYN_SR_2 | MAX31790_FAN_DYN_PWM_ROC_62_5), // 0x38
.fan_dyn[2] = (MAX31790_FAN_DYN_SR_2 | MAX31790_FAN_DYN_PWM_ROC_62_5), // 0x38
.fan_hallcount = {2, 2, 2, 2, 2, 2}, // pocet pulsu na otacku
.fault_mask_1 = 0x07,
.fault_mask_2 = 0x00
};
kde fault_mask_1 zapisuji do registru 0x13 a fault_mask_2 zapisuji do registru 0x12.
A já jsem od toho čekal, že když zastavím ventilátor, tak se vyhlásí chyba. Ale nejsem z toho vůbec moudrý. Do DS hledím jak tele na nové vrata, ale prostě nevím. Neporadí někdo?