OpenEdv-开源电子网

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

Systick定时器怎么配置不了

[复制链接]

14

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2015-5-25
在线时间
39 小时
发表于 2016-10-15 00:04:39 | 显示全部楼层 |阅读模式
[img]file:///C:\Users\ASUS\AppData\Roaming\Tencent\Users\331414029\QQ\WinTemp\RichOle\}UMK%T(NWIZMZ@P~@H@XWXJ.png[/img][img=0,1]file:///C:\Users\ASUS\AppData\Roaming\Tencent\Users\331414029\QQ\WinTemp\RichOle\}UMK%T(NWIZMZ@P~@H@XWXJ.png[/img]

为什么我配置了Systick后程序就卡死了无法继续执行了

为什么我配置了Systick后程序就卡死了无法继续执行了
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

14

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2015-5-25
在线时间
39 小时
 楼主| 发表于 2016-10-15 00:06:36 | 显示全部楼层
求原子大哥解释下 为什么配置了Systick定时器后程序出问题了,,我看了配置的选项也就这几个寄存器但是不知道哪里出问题了
回复 支持 反对

使用道具 举报

14

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2015-5-25
在线时间
39 小时
 楼主| 发表于 2016-10-15 00:07:02 | 显示全部楼层
急急急
回复 支持 反对

使用道具 举报

14

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2015-5-25
在线时间
39 小时
 楼主| 发表于 2016-10-15 00:08:05 | 显示全部楼层
怎么配置1ms的systick中断 有经验的大神求指教下
回复 支持 反对

使用道具 举报

14

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2015-5-25
在线时间
39 小时
 楼主| 发表于 2016-10-15 00:08:53 | 显示全部楼层
库函数V3.5
回复 支持 反对

使用道具 举报

17

主题

587

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4467
金钱
4467
注册时间
2013-6-27
在线时间
565 小时
发表于 2016-10-15 09:22:09 | 显示全部楼层
void SystickInit()  // 1mS 中断一次配置
{

        //
        // Set up and enable the SysTick timer.  It will be used as a reference
        // for the delay loop.  
        //
        /*Configuration Systick counter clk=72/8=9MHz*/
        SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8);  
          
        /* SysTick end of count event each 1ms with input clock equal to 9MHz (HCLK/8, default) */
        SysTick_SetReload(9000);

        /* Enable SysTick interrupt */
        SysTick_ITConfig(ENABLE);

        /* Enable Counter Start*/
        SysTick_CounterCmd(SysTick_Counter_Enable);

}
让我们的思维驾驭在电的速度之上!
回复 支持 反对

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-10-15 09:43:10 | 显示全部楼层
配置了等于开了中断,然后你没写中断函数,或者中断函数里面是死循环
回复 支持 反对

使用道具 举报

14

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2015-5-25
在线时间
39 小时
 楼主| 发表于 2016-10-15 11:26:43 | 显示全部楼层
DongInker 发表于 2016-10-15 09:22
void SystickInit()  // 1mS 中断一次配置
{

我照你这样初始化了
就是1ms进一次中断  , 我中断函数里面有有变量一直每次进入中断就加1,   我在定时器3中1秒中断中把那个变量打印出来,但是不是预期的1000   而是39000上下波动,,那就是说时钟频率不是9M吗, 好像根本配置不对啊
回复 支持 反对

使用道具 举报

14

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2015-5-25
在线时间
39 小时
 楼主| 发表于 2016-10-15 11:28:01 | 显示全部楼层
憨厚诚实大叔 发表于 2016-10-15 09:43
配置了等于开了中断,然后你没写中断函数,或者中断函数里面是死循环

我中断函数写了这个标记变量 每次进入中断自增1,用来判断时间,但是时间不对啊
回复 支持 反对

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-10-15 12:24:12 | 显示全部楼层
小小小小电子 发表于 2016-10-15 11:28
我中断函数写了这个标记变量 每次进入中断自增1,用来判断时间,但是时间不对啊

时间跟你预期是倍数关系么
回复 支持 反对

使用道具 举报

14

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2015-5-25
在线时间
39 小时
 楼主| 发表于 2016-10-15 14:40:10 | 显示全部楼层
憨厚诚实大叔 发表于 2016-10-15 12:24
时间跟你预期是倍数关系么

高了39倍  1ms进入一次中断 , 1秒钟查看数值 ,  中断函数就是简单的加1,  数值应该是1000
,  但是结果是39000
回复 支持 反对

使用道具 举报

14

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2015-5-25
在线时间
39 小时
 楼主| 发表于 2016-10-15 14:49:40 | 显示全部楼层
憨厚诚实大叔 发表于 2016-10-15 12:24
时间跟你预期是倍数关系么

时钟72/8  = 9M 我在reload寄存器给9000     就是一Ms进入一次中断, 但是1秒后查看的数值是39000 而不是期望的1000 ,, 而我把reload的值设置为90000,结果也是38000左右
回复 支持 反对

使用道具 举报

14

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2015-5-25
在线时间
39 小时
 楼主| 发表于 2016-10-15 14:54:27 | 显示全部楼层
觉得好像是时钟根本就没配置到啊,, 我500ms查看一次数值为19000    1秒查看一次数值为38000    ,我怎么配置时钟和重装载值都没效果啊好像
回复 支持 反对

使用道具 举报

17

主题

587

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
4467
金钱
4467
注册时间
2013-6-27
在线时间
565 小时
发表于 2016-10-16 21:48:05 | 显示全部楼层
小小小小电子 发表于 2016-10-15 14:54
觉得好像是时钟根本就没配置到啊,, 我500ms查看一次数值为19000    1秒查看一次数值为38000    ,我怎么 ...

应该是你TIM3配置有问题吧
让我们的思维驾驭在电的速度之上!
回复 支持 反对

使用道具 举报

14

主题

81

帖子

0

精华

初级会员

Rank: 2

积分
183
金钱
183
注册时间
2015-5-25
在线时间
39 小时
 楼主| 发表于 2016-10-17 16:13:04 | 显示全部楼层
DongInker 发表于 2016-10-16 21:48
应该是你TIM3配置有问题吧

TIM3和systick 有联系的吗  我的TIM3用作2ms一次的中断
回复 支持 反对

使用道具 举报

12

主题

105

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
326
金钱
326
注册时间
2018-5-8
在线时间
37 小时
发表于 2018-5-8 18:26:33 | 显示全部楼层
我也觉得是应该是你TIM3配置有问题

回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-9 07:49

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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