|
@ -64,6 +64,7 @@ void Hardware::temperature_init() { |
|
|
m_temperature.tmp117[2].initializate(&hi2c1, TMP117::ID2); |
|
|
m_temperature.tmp117[2].initializate(&hi2c1, TMP117::ID2); |
|
|
m_temperature.tmp117[3].initializate(&hi2c1, TMP117::ID3); |
|
|
m_temperature.tmp117[3].initializate(&hi2c1, TMP117::ID3); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
TMP117 *Hardware::temperature_get_tmp117(int off) { |
|
|
TMP117 *Hardware::temperature_get_tmp117(int off) { |
|
|
if (off < 0 || off > 3) { |
|
|
if (off < 0 || off > 3) { |
|
|
ZASSERT(0); |
|
|
ZASSERT(0); |
|
@ -71,6 +72,14 @@ TMP117 *Hardware::temperature_get_tmp117(int off) { |
|
|
} |
|
|
} |
|
|
return &m_temperature.tmp117[off]; |
|
|
return &m_temperature.tmp117[off]; |
|
|
} |
|
|
} |
|
|
|
|
|
float Hardware::temperature_get_temp(int off) { |
|
|
|
|
|
if (off < 0 || off > 3) { |
|
|
|
|
|
ZASSERT(0); |
|
|
|
|
|
return 0; |
|
|
|
|
|
} |
|
|
|
|
|
return m_temperature.tmp117[off].getTemperature(); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
void Hardware::temperature_periodicJob() { |
|
|
void Hardware::temperature_periodicJob() { |
|
|
if (testHardwareFlag) { |
|
|
if (testHardwareFlag) { |
|
|
/**
|
|
|
/**
|
|
@ -171,9 +180,22 @@ bool *Hardware::fanGetPowerState(int fanIndex) { |
|
|
} |
|
|
} |
|
|
return &m_fan.m_fanState[fanIndex]; |
|
|
return &m_fan.m_fanState[fanIndex]; |
|
|
} |
|
|
} |
|
|
void Hardware::fanSetState0to3(uint16_t dutyCycle) { fanSetDutyCycle(0, dutyCycle); } |
|
|
|
|
|
void Hardware::fanSetState4(uint16_t dutyCycle) { fanSetDutyCycle(4, dutyCycle); } |
|
|
|
|
|
void Hardware::fanSetState5(uint16_t dutyCycle) { fanSetDutyCycle(5, dutyCycle); } |
|
|
|
|
|
|
|
|
void Hardware::fanSetState0to3(uint16_t dutyCycle) { |
|
|
|
|
|
fanSetDutyCycle(0, dutyCycle); |
|
|
|
|
|
m_fan.fan0_3duty = dutyCycle; |
|
|
|
|
|
} |
|
|
|
|
|
void Hardware::fanSetState4(uint16_t dutyCycle) { |
|
|
|
|
|
fanSetDutyCycle(4, dutyCycle); |
|
|
|
|
|
m_fan.fan4duty = dutyCycle; |
|
|
|
|
|
} |
|
|
|
|
|
void Hardware::fanSetState5(uint16_t dutyCycle) { |
|
|
|
|
|
fanSetDutyCycle(5, dutyCycle); |
|
|
|
|
|
m_fan.fan5duty = dutyCycle; |
|
|
|
|
|
} |
|
|
|
|
|
uint16_t Hardware::fanReadState0to3() { return m_fan.fan0_3duty; } |
|
|
|
|
|
uint16_t Hardware::fanReadState4() { return m_fan.fan4duty; } |
|
|
|
|
|
uint16_t Hardware::fanReadState5() { return m_fan.fan5duty; } |
|
|
|
|
|
|
|
|
void Hardware::fan_periodicJob() { |
|
|
void Hardware::fan_periodicJob() { |
|
|
/**
|
|
|
/**
|
|
|
* @brief 风扇状态监控服务周期调度 |
|
|
* @brief 风扇状态监控服务周期调度 |
|
@ -230,6 +252,8 @@ void Hardware::peltier_init() { // |
|
|
STM32_HAL::gpioInit(GPIOB, GPIO_PIN_1, GPIO_MODE_AF_PP, GPIO_PULLUP, GPIO_SPEED_FREQ_LOW, GPIO_PIN_RESET); |
|
|
STM32_HAL::gpioInit(GPIOB, GPIO_PIN_1, GPIO_MODE_AF_PP, GPIO_PULLUP, GPIO_SPEED_FREQ_LOW, GPIO_PIN_RESET); |
|
|
STM32_HAL::gpioInit(GPIOE, GPIO_PIN_10, GPIO_MODE_AF_PP, GPIO_PULLUP, GPIO_SPEED_FREQ_LOW, GPIO_PIN_RESET); |
|
|
STM32_HAL::gpioInit(GPIOE, GPIO_PIN_10, GPIO_MODE_AF_PP, GPIO_PULLUP, GPIO_SPEED_FREQ_LOW, GPIO_PIN_RESET); |
|
|
} |
|
|
} |
|
|
|
|
|
int Hardware::peltier_get_pwm() { return m_peltier.pwm; } |
|
|
|
|
|
|
|
|
void Hardware::peltier_set_pwm(int pwm) { |
|
|
void Hardware::peltier_set_pwm(int pwm) { |
|
|
/**
|
|
|
/**
|
|
|
* @brief |
|
|
* @brief |
|
@ -250,7 +274,8 @@ void Hardware::peltier_set_pwm(int pwm) { |
|
|
* COLD_CTR_PWM0(BL) = 1(PWM) |
|
|
* COLD_CTR_PWM0(BL) = 1(PWM) |
|
|
* COLD_CTR(BH) = 0 |
|
|
* COLD_CTR(BH) = 0 |
|
|
*/ |
|
|
*/ |
|
|
pwm = pwm * 1000; |
|
|
|
|
|
|
|
|
m_peltier.pwm = pwm; |
|
|
|
|
|
pwm = pwm * 1000; |
|
|
if (pwm == 0) { |
|
|
if (pwm == 0) { |
|
|
peltier_hot_ctr_pwm(0); /*HOT_CTR_PWM0*/ |
|
|
peltier_hot_ctr_pwm(0); /*HOT_CTR_PWM0*/ |
|
|
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_RESET); /*HOT_CTR*/ |
|
|
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_RESET); /*HOT_CTR*/ |
|
|