| | |
| | | #include "tim.h" |
| | | #include "buzzer.h" |
| | | |
| | | #define mdelay(ms) HAL_Delay(ms) |
| | | #define ARRAY_SIZE(song) (sizeof(song)/sizeof(song[0])) |
| | | |
| | | /* 音符频率定义(Hz) */ |
| | |
| | | /* Start buzzer */ |
| | | HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_4); |
| | | |
| | | HAL_Delay(interval); |
| | | mdelay(interval); |
| | | |
| | | /* Stop buzzer */ |
| | | HAL_TIM_PWM_Stop(&htim1, TIM_CHANNEL_4); |
| | | |
| | | HAL_Delay(interval); |
| | | mdelay(interval); |
| | | } |
| | | } |
| | | |
| | |
| | | if (freq == 0) |
| | | { |
| | | HAL_TIM_PWM_Stop(&htim1, TIM_CHANNEL_4); |
| | | HAL_Delay(duration_ms); |
| | | mdelay(duration_ms); |
| | | return; |
| | | } |
| | | |
| | | Buzzer_SetFreq(freq); |
| | | |
| | | HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_4); |
| | | HAL_Delay(duration_ms - 30); |
| | | mdelay(duration_ms - 30); |
| | | |
| | | HAL_TIM_PWM_Stop(&htim1, TIM_CHANNEL_4); |
| | | |
| | | HAL_Delay(30); |
| | | mdelay(30); |
| | | } |
| | | |
| | | /** |