OpenEdv-开源电子网

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

stm32定时器中断异常

[复制链接]

1

主题

10

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2018-8-30
在线时间
7 小时
发表于 2018-8-30 15:08:42 | 显示全部楼层 |阅读模式
stm32定时器进入中断多次后,才进入while主循环,请问这是什么问题
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

10

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2018-8-30
在线时间
7 小时
 楼主| 发表于 2018-8-30 20:54:55 | 显示全部楼层
回复 支持 反对

使用道具 举报

3

主题

288

帖子

0

精华

高级会员

Rank: 4

积分
865
金钱
865
注册时间
2018-8-28
在线时间
130 小时
发表于 2018-8-30 15:26:11 | 显示全部楼层
你都不给代码的吗
回复 支持 反对

使用道具 举报

57

主题

1680

帖子

3

精华

资深版主

Rank: 8Rank: 8

积分
4306
金钱
4306
注册时间
2018-6-30
在线时间
808 小时
发表于 2018-8-30 15:32:24 | 显示全部楼层
仿真看下
回复 支持 反对

使用道具 举报

1

主题

10

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2018-8-30
在线时间
7 小时
 楼主| 发表于 2018-8-30 15:39:22 | 显示全部楼层

if(htim->Instance == htim2.Instance)
        { //200US
       
        if( __HAL_TIM_GET_IT_SOURCE(&htim2,TIM_IT_UPDATE)!= RESET )
        {               
                htim2.Instance->CNT =0;       
                htim2.Instance->SR &= ~(1<<0);

                dis_scan_flag_time++;
                if(dis_scan_flag_time >=2)
                {
                        dis_scan_flag_time=0;
//                        memset(&__pwm_duty_count,0,sizeof(__pwm_duty_count));
                        dis_scan_flag=0xFF;
                }
        }
        }
回复 支持 反对

使用道具 举报

1

主题

10

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2018-8-30
在线时间
7 小时
 楼主| 发表于 2018-8-30 15:40:06 | 显示全部楼层

仿真看过了,定时器停几次,才调到while处
回复 支持 反对

使用道具 举报

3

主题

288

帖子

0

精华

高级会员

Rank: 4

积分
865
金钱
865
注册时间
2018-8-28
在线时间
130 小时
发表于 2018-8-30 15:45:14 | 显示全部楼层
好像没多大问题啊 !!多次进入中断基本是都是SR没有清,进入中断后直接清SR这样就可以避免多次进入了
回复 支持 反对

使用道具 举报

3

主题

288

帖子

0

精华

高级会员

Rank: 4

积分
865
金钱
865
注册时间
2018-8-28
在线时间
130 小时
发表于 2018-8-30 15:48:39 | 显示全部楼层
你配置定时器按照(1)清除更新中断请求位(2)使能定时器1更新中断(3)启动定时器  按顺序,别把顺序调换了。
回复 支持 反对

使用道具 举报

1

主题

10

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2018-8-30
在线时间
7 小时
 楼主| 发表于 2018-8-30 15:51:47 | 显示全部楼层
douxiaolingyun 发表于 2018-8-30 15:45
好像没多大问题啊 !!多次进入中断基本是都是SR没有清,进入中断后直接清SR这样就可以避免多次进入了

我也纳闷,arr=0xc7,每次中断cnt值都不一样,不知道是不是其他什么原因,同时4个比较中断也置位了。关键sr的0位清不掉
回复 支持 反对

使用道具 举报

1

主题

10

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2018-8-30
在线时间
7 小时
 楼主| 发表于 2018-8-30 15:54:31 | 显示全部楼层
douxiaolingyun 发表于 2018-8-30 15:48
你配置定时器按照(1)清除更新中断请求位(2)使能定时器1更新中断(3)启动定时器  按顺序,别把顺序调换 ...

我先试试看
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-19 14:51

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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