OpenEdv-开源电子网

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

cpu_sr是传递的参数吗?汇编中没有声明参数?

[复制链接]

10

主题

14

帖子

0

精华

初级会员

Rank: 2

积分
96
金钱
96
注册时间
2020-1-22
在线时间
20 小时
发表于 2022-1-1 12:41:21 | 显示全部楼层 |阅读模式
#if OS_CRITICAL_METHOD == 3
#define  OS_ENTER_CRITICAL()  {cpu_sr = OS_CPU_SR_Save();}
#define  OS_EXIT_CRITICAL()   {OS_CPU_SR_Restore(cpu_sr);}
#endif

OS_CPU_SR_Save
    MRS     R0, PRIMASK          ;读取PRIMASK到R0,R0为返回值
    CPSID   I                                RIMASK=1,关中断(NMI和硬件FAULT可以响应)
    BX      LR                            ;返回

OS_CPU_SR_Restore
    MSR     PRIMASK, R0                   ;读取R0到PRIMASK中,R0为参数
    BX      LR                                ;返回

OS_CPU_SR_Restore(cpu_sr)括号里的(cpu_sr)在c语言中指的是传递的参数,那么在汇编语言中指的又是什么呢?
如上,汇编中没有声明参数?


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

使用道具 举报

15

主题

1061

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
3625
金钱
3625
注册时间
2019-8-14
在线时间
1054 小时
发表于 2022-1-2 12:19:32 | 显示全部楼层
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-5-21 01:52

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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