| Rev | Line | |
|---|
| [30] | 1 | #include "fan.h"
|
|---|
| 2 | #include "tim.h"
|
|---|
| 3 | static unsigned lastSpeed;
|
|---|
| 4 |
|
|---|
| 5 | void FAN_SetSpeed(unsigned speed)
|
|---|
| 6 | {
|
|---|
| 7 | const unsigned MAX_RPM = 100U; // 100.0%
|
|---|
| 8 |
|
|---|
| 9 | if (speed > MAX_RPM) speed = MAX_RPM;
|
|---|
| 10 |
|
|---|
| 11 | lastSpeed = speed;
|
|---|
| 12 |
|
|---|
| 13 | const unsigned MAX_PWM = __HAL_TIM_GET_AUTORELOAD(&htim17) + 1U;
|
|---|
| 14 | //printf("%u", MAX_PWM);
|
|---|
| 15 | const unsigned newPWM = (MAX_PWM * speed/ MAX_RPM);
|
|---|
| 16 |
|
|---|
| 17 | __HAL_TIM_SET_COMPARE(&htim17, TIM_CHANNEL_1, newPWM);
|
|---|
| 18 | }
|
|---|
| 19 |
|
|---|
| 20 | //-----------------------------------------------------------------------------
|
|---|
| 21 |
|
|---|
| 22 | unsigned FAN_GetLastSpeed(void)
|
|---|
| 23 | {
|
|---|
| 24 | return lastSpeed;
|
|---|
| 25 | }
|
|---|
Note:
See
TracBrowser
for help on using the repository browser.