STMCU小助手
发布时间:2022-6-26 13:54
|
软件: STM32CubeMX V4.25.0 keil_u5 固件库版本: STM32Cube FW_F1 V1.6.1 硬件: OneNet 麒麟座V1.4 在STM32CubeMX中新建项目,选择正确的MCU型号
首先设置RCC和SYS,如下图
启用TIM1,选择内部时钟源(Internal Clock)。
根据板子实际情况设置时钟(麒麟座外部晶振是12M,STM32F103x的最高主频是72M),如下图
GPIO设置 PC7和 PC10为GPIO_OUTPUT, (这是麒麟座V1.4的四个LED管脚其中的两个)
设置其中一个默认为高电平,另一个默认为低电平,User Label分别是LED1和LED4。
设置TIM1,启用中断
由于TIM1是挂在APB2总线上。在文章最后会描述判断当前计时器在哪个总线的方法。查看时钟树我们知道APB2当前频率为72MHz,我们希望每秒钟发生2次中断,就把预分频系数设置为36000-1,自动重载值为1000-1,得到的计时器更新中断频率即为72,000,000/36000/1000=2Hz。此时定时为0.5秒,若要实现定时1秒,则将1000改为2000
点击任务栏的生成代码图标
生成工程,并添加相关程序。 首先,在main.c程序中添加(放置于定时器配置之后)开启 TIM1计时中断。
其次,在 tim.c文件中添加定时器中断完成回调函数。
|
经验分享 | 利用TIMER定时和捕获功能实现编解码演示
STM32 LSE 不起振排查指南:五大核心原因与快速解决方案
我心中的ST中文论坛
经验分享 | 利用STM32 TIMER实现同频跟随输出示例
2025软件工具兔哥知道
经验分享 | 利用STM32 TIMER实现同频跟随输出示例
经验分享 | 一个基于TIMER事件的中断响应话题_续
经验分享 | 一个基于TIMER事件的中断响应话题
11张图学会STM32定时器!
经验分享 | STM32U5系列TIMER+DMA+DAC应用演示
微信公众号
手机版