野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10784|回复: 5

库函数里面屏蔽中断函数的这一段代码看不懂,谁可以帮我解读一下吗?谢谢!

[复制链接]
发表于 2015-10-21 01:48:07 | 显示全部楼层 |阅读模式
本帖最后由 水门_玖辛奈 于 2015-10-21 01:49 编辑

QQ截图20151021014441.png

请问一下这个函数中三处画红线的地方是什么意思呢?
最好可以帮我将这个函数整个解读一下,谢谢!
回复

使用道具 举报

发表于 2015-10-21 08:34:13 | 显示全部楼层
这是调用了汇编语句,执行cpu命令
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-10-21 15:14:45 | 显示全部楼层
flyleaf 发表于 2015-10-21 08:34
这是调用了汇编语句,执行cpu命令

那这个语句执行的是什么意思呢,就是执行了有什么作用
回复 支持 反对

使用道具 举报

发表于 2015-10-21 17:06:08 | 显示全部楼层
/**
* @brief  Set the Priority Mask value
*
* @param  priMask  PriMask
*
* Set the priority mask bit in the priority mask register
*/
void __set_PRIMASK(uint32_t priMask)
{
  __ASM volatile ("MSR primask, %0" : : "r" (priMask) );
}

/**
* @brief  Set the Priority Mask value
*
* @param  priMask  PriMask
*
* Set the priority mask bit in the priority mask register
*/
__ASM void __set_PRIMASK(uint32_t priMask)
{
  msr primask, r0
  bx lr
}

core_cm3.c里有这两个函数,但是汇编不理解。等大神指点
回复 支持 反对

使用道具 举报

发表于 2015-10-21 17:19:47 | 显示全部楼层
http://blog.csdn.net/zhzht19861011/article/details/8780863
楼主可以看一下这个 ,希望对你有帮助
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-10-21 18:23:58 | 显示全部楼层
Dream_Chaser 发表于 2015-10-21 17:19
http://blog.csdn.net/zhzht19861011/article/details/8780863
楼主可以看一下这个 ,希望对你有帮助

我之前也有看了这个,不过也是没懂,谢谢你了
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-11-24 01:04 , Processed in 0.030242 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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