OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2915|回复: 6

中断函数处理时间太长,会怎么样

[复制链接]

1

主题

6

帖子

0

精华

新手上路

积分
47
金钱
47
注册时间
2018-4-11
在线时间
12 小时
发表于 2020-7-14 18:40:27 | 显示全部楼层 |阅读模式
1金钱
最近在调试stm32F103,基本定时器20KHz,即20us进一次中断服务函数,但是这个中断服务函数占用cpu110us的时间,然后过40us再进中断,如此循环,用示波器抓的。请教各位大佬,这样合理吗?定时器中断50us进一次,当进入中断后,是不是这个定时器就不会计数了,要在中断里清中断标志位,然后才开始计数?

最佳答案

查看完整内容[请看2#楼]

进入中断后,定时器还会继续计数的,我调试过的,你也可以在调试的时候去看看定时器的寄存器
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

8

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2020-7-7
在线时间
7 小时
发表于 2020-7-14 18:40:28 | 显示全部楼层
进入中断后,定时器还会继续计数的,我调试过的,你也可以在调试的时候去看看定时器的寄存器
回复

使用道具 举报

2

主题

686

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
10902
金钱
10902
注册时间
2014-6-12
在线时间
1040 小时
发表于 2020-7-14 20:30:33 | 显示全部楼层
如果要20us进一次中断服务函数,中断函数处理时间又110us显然不合理,中断函数还没处理完新中断又要来了,要重新设计程序思路。
回复

使用道具 举报

70

主题

6763

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
13125
金钱
13125
注册时间
2012-11-26
在线时间
3814 小时
发表于 2020-7-14 23:58:18 | 显示全部楼层
什么需求  要20us周期?   光干这一件事了
回复

使用道具 举报

0

主题

37

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1161
金钱
1161
注册时间
2018-5-24
在线时间
120 小时
发表于 2020-7-15 00:13:16 来自手机 | 显示全部楼层
死循环,定时器进中断会继续计数并且再次悬起该中断,出了中断会再次执行这个中断
回复

使用道具 举报

1

主题

6

帖子

0

精华

新手上路

积分
47
金钱
47
注册时间
2018-4-11
在线时间
12 小时
 楼主| 发表于 2020-7-15 07:54:29 | 显示全部楼层
xuyaqi 发表于 2020-7-14 20:30
如果要20us进一次中断服务函数,中断函数处理时间又110us显然不合理,中断函数还没处理完新中断又要来了, ...

C:\Users\Administrator\Desktop\1.jpg
后来查明是ADC中断打断了基本定时器中断导致的,但是也有50us的处理时间,这个是波形图,应该是进入中断后,就不会再计时,等到清中断后才开始计时
回复

使用道具 举报

1

主题

6

帖子

0

精华

新手上路

积分
47
金钱
47
注册时间
2018-4-11
在线时间
12 小时
 楼主| 发表于 2020-7-15 13:46:51 | 显示全部楼层
jermy_z 发表于 2020-7-14 23:58
什么需求  要20us周期?   光干这一件事了

9路ADC采样值计算,一个PI环路计算,用在数字电源上的
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-16 02:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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