硬汉嵌入式论坛

 找回密码
 立即注册
查看: 916|回复: 5
收起左侧

[有问必答] STM32CubeIDE 配置输出比较

[复制链接]

14

主题

50

回帖

92

积分

初级会员

积分
92
发表于 2024-6-10 20:06:53 | 显示全部楼层 |阅读模式
本帖最后由 刘心武 于 2024-6-11 23:20 编辑

使用的 STM32F407ZGT6 板子,配置 TIM1 的输出比较配置见附件。
在调试的过程中观测 TIM1 的 cnt 值,觉得没有配好,请教一下该如何配置 TIM1 和如何使用输出比较?
有没有大佬指点一下该如何学习 hal 库和使用 STM32CubeIDE?


sdadasd.7z

3.94 MB, 下载次数: 2

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115434
QQ
发表于 2024-6-11 08:40:40 | 显示全部楼层
CubeIDE不熟。

定时器的输出比较好弄,主要是配置CCR寄存器,比如TIM1有4个CC输出比较通道,你可以配置CCR1寄存器为一个数组,并使能CC1中断,CNT计数到CCR的值后,可以触发对应中断。你也可以设置对应引脚输出,从而实现PWM
回复

使用道具 举报

14

主题

50

回帖

92

积分

初级会员

积分
92
 楼主| 发表于 2024-6-11 22:07:45 | 显示全部楼层
eric2013 发表于 2024-6-11 08:40
CubeIDE不熟。

定时器的输出比较好弄,主要是配置CCR寄存器,比如TIM1有4个CC输出比较通道,你可以配置C ...

我现在使用 HAL 库配置 TIM1 通道 1 输出比较,结果软件第一次进入中断四个标志位都置 1 了,后面又没有清除掉。不太清楚是什么情况
回复

使用道具 举报

85

主题

781

回帖

1036

积分

至尊会员

积分
1036
发表于 2024-6-11 22:43:58 | 显示全部楼层
刘心武 发表于 2024-6-11 22:07
我现在使用 HAL 库配置 TIM1 通道 1 输出比较,结果软件第一次进入中断四个标志位都置 1 了,后面又没有 ...

标志位都会置位的,如果开了中断就会进中断,没开中断就不用管
回复

使用道具 举报

14

主题

50

回帖

92

积分

初级会员

积分
92
 楼主| 发表于 2024-6-11 22:52:12 | 显示全部楼层
庄永 发表于 2024-6-11 22:43
标志位都会置位的,如果开了中断就会进中断,没开中断就不用管

进入中断后,未能清除中断标志位
1.png
2.png
回复

使用道具 举报

0

主题

3

回帖

3

积分

新手上路

积分
3
发表于 2024-6-14 10:00:24 | 显示全部楼层
建议你使用 STM32CubeMX 生成 STM32CubeIDE 工程,大多数人都是 STM32CubeMX + 其它编译器组合,配置外设也会有更多的参考
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-4-26 04:54 , Processed in 0.486035 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表