KEIL Real view MDK中插入空操作NOP .
折腾了大半天,才搞明白一个空操作的指令
本文引用地址:https://www.eepw.com.cn/article/148070.htm先在网上查有的说是__asm{NOP},从intrins.h里调用,可犄角旮旯全找了,也没看到什么intrint.h的文件。如果直接用,就出现
error: #1113: Inline assembler not permitted when generating Thumb code
最后搜索这条错误,知道是因为__asm(指令);这种语法是内联汇编(inline assembly)的语法。而RMDK下,内联汇编仅支持ARM汇编语言,不支持Thumb或者Thumb-2汇编语言;但内嵌汇编器支持Thumb和Thumb-2。
__asm放到一个单独的子函数再被调用就没问题了
如下:
__asm void nop(void)
{
}
然后在之后的C代码中调用该函数:
void main()
{
...
nop();
...
}
评论