你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F103K6T6定时器中断出现奇怪的问题?

[复制链接]
杜晋伟 提问时间:2024-1-27 22:11 / 未解决

工程师您好,我在使用STM32PWM定时器的时候遇到一个奇怪的问题,我用的芯片是STM32F030K6T6,外接8MHz的晶振,经过处理达到48MHz的频率,我用TIM1生成15kHz的PWM信号输出是正常的,我想让每隔10000个PWM周期(时间大概是0.66s)进入一次中断,部分配置代码如下图所示:

image.png

首先我定义了一个全局变量uint32_t time_cnt = 0;

然后我让程序每次进入中断将变量time_cnt加1

image.png但奇怪的是程序运行时我在watch窗口看到time_cnt以极快的速度更新,并不是正常的0.66s更新。为了验证我进入中断是否正常,我在main函数的while(1)循环中将一个引脚的电平拉低,在中断函数中我将引脚的电平拉高,用示波器采到该引脚的信号如下图所示:

image.png

可以看到两次高电平的时间间隔是696ms,这说明中断是正常的,但是我想不明白简单定义一个变量让它每次进入中断加1为什么就不对呢?

image.png
image.png
收藏 评论0 发布时间:2024-1-27 22:11

举报

0个回答
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版