OpenEdv-开源电子网

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

关于SVCall和Pendsv

[复制链接]

1

主题

1

帖子

0

精华

新手入门

积分
13
金钱
13
注册时间
2016-3-2
在线时间
3 小时
发表于 2016-3-2 08:36:32 | 显示全部楼层 |阅读模式
1金钱
各位大神:             SVCall和Pendsv在裸奔时候是否可以用,中断的优先级是怎么样的,是否和外部中断一样具有抢占和响应优先级,如果有怎么配置?

最佳答案

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

它的优先级很高: 你可以使用CMSIS提供的服务函数来对其进行配置 除了NVIC_EnableIRQ()等函数明确提到“IRQn cannot be a negative value”外 其他诸如NVIC_SetPriority()等函数是可以用的, CMSIS很方便,兼容性又好,还不会出错 /* 如上界面是一个网页,也是CMSIS的帮助资料, 可以访问 http://www.keil.com/pack/doc/CMSIS/General/html/index.html 也可以在代码中输入NVIC_DisableIRQ(或其他CMSIS提 ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

6

主题

1097

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3571
金钱
3571
注册时间
2014-12-2
在线时间
365 小时
发表于 2016-3-2 08:36:33 | 显示全部楼层
它的优先级很高:
0.png

你可以使用CMSIS提供的服务函数来对其进行配置

n.png

q.png

除了NVIC_EnableIRQ()等函数明确提到“IRQn cannot be a negative value”外
其他诸如NVIC_SetPriority()等函数是可以用的,
CMSIS很方便,兼容性又好,还不会出错

/*
如上界面是一个网页,也是CMSIS的帮助资料,
可以访问 http://www.keil.com/pack/doc/CMSIS/General/html/index.html
也可以在代码中输入NVIC_DisableIRQ(或其他CMSIS提供的服务函数),然后按F1,
可直接打开本地版的CMSIS帮助资料
*/





坚决不用寄存器,拒绝重复造轮子。
回复

使用道具 举报

27

主题

711

帖子

0

精华

版主

Rank: 7Rank: 7Rank: 7

积分
12530
金钱
12530
注册时间
2015-11-5
在线时间
2146 小时
发表于 2016-3-2 10:21:08 | 显示全部楼层
中断本来就跟跑系统或裸奔没关系,这两个中断都属于手动产生的中断,至于用于什么用途就看你自己的想法了,SVC中断一般用于操作系统启动时,而PendSV一般用于操作系统手动切换任务,如果你想裸机使用PendSV也是没问题了,例如你按下按键KEY1时,手动产生PendSV中断,在中断里面点亮LED
回复

使用道具 举报

23

主题

40

帖子

0

精华

初级会员

Rank: 2

积分
159
金钱
159
注册时间
2015-6-4
在线时间
10 小时
发表于 2016-6-7 15:02:34 | 显示全部楼层
FreeRTOS 发表于 2016-3-2 10:21
中断本来就跟跑系统或裸奔没关系,这两个中断都属于手动产生的中断,至于用于什么用途就看你自己的想法了, ...

SVCall的全称是什么
回复

使用道具 举报

58

主题

288

帖子

1

精华

高级会员

Rank: 4

积分
814
金钱
814
注册时间
2012-3-29
在线时间
81 小时
发表于 2017-11-6 09:31:35 | 显示全部楼层
trybye 发表于 2016-6-7 15:02
SVCall的全称是什么

系统服务调用
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-7 12:50

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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