void UpdatePWM(void)
{
static uint16_t step = 0;
// 更新PWM占空比
__HAL_TIM_SET_COMPARE(&htim1, TIM_CHANNEL_1, sineTable[step]);
// 更新步进
step++;
if (step >= SINE_TABLE_SIZE) {
step = 0;
}
}
// 主循环中定时调用UpdatePWM函数
while (1)
{
UpdatePWM();
HAL_Delay(1); // 根据需要调整延时,控制频率
}
|