1.设置引脚为TIM。
2.配置TIM,这里我想输出100HZ占空比50%的方波。
Prescaler 分频系数
Counter Mode 计数模式(分为向上和向下)
Count Period 计数周期
Interal Clock Division 内部时钟分频
auto-reload preload 自动重装载
TRGO Event Selection 触发事件
计算公式:arr为Count Period;psc为 Prescaler ; Tclk为挂载的总线速度,可以在时钟树查看;Tout为输出波形的周期。
3.配置好后将驱动代码写入time.c , 在main.c中调用,用示波器观察波形。
void Beep_Switch(char onoff)
{
if(1 == onoff){
HAL_TIM_PWM_Start(&htim2, TIM_CHANNEL_2);
}else if(0 == onoff){
HAL_TIM_PWM_Stop(&htim2, TIM_CHANNEL_2);
}
}
4.观察波形。
更加详细的教程在别人的博客