搭建工程
1、配置工程属性
2、确认时钟源
3、配置系统时钟
4、配置定时器
这里选择的定时器为TIM3,定时时间为1ms
把定时器设置自动重装载寄存器 ARR 的值为 1000,设置时钟预分频器为 71,则驱动计数器的时钟: CK_CNT = CK_INT / (71+1)=1M,则计数器计数一次的时间等于: 1/CK_CNT=1us,当计数器计数到 ARR 的值 1000 时,产生一次中断,则中断一次的时间为: 1/CK_CNT*ARR=1ms
5、使能定时器中断
6、 配置GPIO
为了验证定时器,我们可以让小灯每隔1s闪烁一次
7、生成代码
配置好生成工程名与路径后,点击 GENERATE CODE 会在设定的路径成功生成代码,选择打开工程
代码编写
CubeMx生成的代码有些寄存器没有使能,我们不能直接使用,需要我们自己使能相关寄存器
1、配置TIM3相关寄存器
LL_TIM_EnableCounter(TIM3); //使能计数
LL_TIM_EnableIT_UPDATE(TIM3); //使能更新中断
LL_TIM_EnableAllOutputs(TIM3);
2、编写中断函数
3、编写main函数
通过关键字extern使用stm32f10x_it.c中的变量time
4、下载程序
将程序下载到开发板,可以观察到LED每隔1s闪烁一次