OpenEdv-开源电子网

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

uCOS中系统时钟的中断SysTick_Handler的优先级应该设置成多少比较合适

[复制链接]

7

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
59
金钱
59
注册时间
2014-8-9
在线时间
0 小时
发表于 2015-1-25 12:21:06 | 显示全部楼层 |阅读模式
5金钱
感觉设置成最高和最低都不太合适,应该设置成较高,比一般中断高,比紧急中断处理低

最佳答案

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165353
金钱
165353
注册时间
2010-12-1
在线时间
2108 小时
发表于 2015-1-25 12:21:07 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

34

主题

805

帖子

4

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1863
金钱
1863
注册时间
2011-3-29
在线时间
139 小时
发表于 2015-1-25 12:44:45 | 显示全部楼层
好像很多OS是设置最低的。
业余程序玩家。
回复

使用道具 举报

7

主题

11

帖子

0

精华

初级会员

Rank: 2

积分
59
金钱
59
注册时间
2014-8-9
在线时间
0 小时
 楼主| 发表于 2015-1-25 16:38:25 | 显示全部楼层
回复【2楼】ofourme:
---------------------------------
 STM32有PENDSV中断,不需要设置成最低吧。不然PENDSV中断就没用了,直接在SYSTICK中断中任务切换了
回复

使用道具 举报

34

主题

805

帖子

4

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1863
金钱
1863
注册时间
2011-3-29
在线时间
139 小时
发表于 2015-1-25 21:21:22 | 显示全部楼层
回复【3楼】Q幽灵Q漫步W:
---------------------------------
当然。我说的是一般情况。个人认为系统时钟没必要很高,rtos的实时性是靠事件驱动保证的,而不是定时轮流调度任务。
业余程序玩家。
回复

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
23
金钱
23
注册时间
2012-11-4
在线时间
0 小时
发表于 2015-11-3 20:11:31 | 显示全部楼层
回复【5楼】正点原子:
---------------------------------
SysTick优先级设置为最低是?
抱歉,原子哥,这话有歧义。
是设置成0,即优先权最高,除了复位、NMI、硬fault外 吗?
更想听听你的想法》》谢过。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165353
金钱
165353
注册时间
2010-12-1
在线时间
2108 小时
发表于 2015-11-3 21:08:55 | 显示全部楼层
回复【6楼】guozhongwei:
---------------------------------
是的,systick的优先级,设置成最低.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

14

主题

33

帖子

0

精华

初级会员

Rank: 2

积分
107
金钱
107
注册时间
2015-10-14
在线时间
2 小时
发表于 2015-11-4 14:45:52 | 显示全部楼层
回复【7楼】正点原子:
---------------------------------
这样的话OSTimeDlyHMSM()等延时 函数有误差的会不会变大
回复

使用道具 举报

12

主题

84

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
232
金钱
232
注册时间
2014-8-6
在线时间
8 小时
发表于 2015-11-4 16:21:55 | 显示全部楼层
回复【8楼】showcase:
---------------------------------
高优先级中断会打断systick中断,造成systick中断的延时,即会引起时钟节拍的抖动。但对OSTimeDlyHMSM()的延时不会造成误差,因为systick定时器是自动重装的。
回复

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
35
金钱
35
注册时间
2015-8-12
在线时间
3 小时
发表于 2016-1-1 09:16:16 | 显示全部楼层
大家好,一直在学习原子的开发板从战舰到探索,受益良多!
最近我在学习的UCOSIII,测试中发现

NVIC_SYSPRI14   EQU     0xE000ED22                              ; System priority register (priority 14).
NVIC_PENDSV_PRI EQU         0xFFFF                              ; PendSV和滴答定时器优先级设置为最低

此句在实际执行中只是修改了0xE000ED22 的值,并没有修改0xE000ED23的值,也就是说systick优先级并没有修改,
全程运行过程中0xE000ED23始终为(默认的)0x00,不知道大家是不是也是这种情况。

还有UCOSIII的OS_CPU_SysTickInit(cnts); 函数,也是可以设置systick的优先级                 
回复

使用道具 举报

22

主题

104

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
235
金钱
235
注册时间
2015-5-4
在线时间
34 小时
发表于 2016-4-20 12:01:01 | 显示全部楼层
zhanggong 发表于 2016-1-1 09:16
大家好,一直在学习原子的开发板从战舰到探索,受益良多!
最近我在学习的UCOSIII,测试中发现

您能讲的更详细一些吗?
回复

使用道具 举报

22

主题

104

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
235
金钱
235
注册时间
2015-5-4
在线时间
34 小时
发表于 2016-4-20 13:50:38 | 显示全部楼层
正点原子 发表于 2015-11-3 21:08
回复【6楼】guozhongwei:
---------------------------------
是的,systick的优先级,设置成最低.

原子大哥,systick和pendsv中断优先级都是最低,那systick中断会和pendsv中断冲突吗
回复

使用道具 举报

14

主题

77

帖子

0

精华

初级会员

Rank: 2

积分
190
金钱
190
注册时间
2015-7-22
在线时间
122 小时
发表于 2020-8-3 14:22:08 | 显示全部楼层

原子哥,这里设置成最低我不是很理解。设置成最低的话,时基就会不准了吧。而且systick中断也有上下文切换吧
work is work!!!
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-25 13:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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