找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7307|回复: 0
打印 上一主题 下一主题
收起左侧

KEIL Real view MDK中插入空操作NOP

[复制链接]
跳转到指定楼层
楼主
ID:102668 发表于 2016-1-16 07:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
                        折腾了大半天,才搞明白一个空操作的指令

先在网上查有的说是__asm{"NOP"},从intrins.h里调用,可犄角旮旯全找了,也没看到什么intrint.h的文件。如果直接用,就出现
error: #1113: Inline assembler not permitted when generating Thumbcode

最后搜索这条错误,知道是因为__asm("指令");这种语法是内联汇编(inlineassembly)的语法。而RMDK下,内联汇编仅支持ARM汇编语言,不支持Thumb或者Thumb-2汇编语言;但内嵌汇编器支持Thumb和Thumb-2。
__asm放到一个单独的子函数再被调用就没问题了

如下:
__asm void nop(void)
{
    NOP
}
然后在之后的C代码中调用该函数:
void main()
{
...
nop();
...
}


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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