找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8157|回復: 0
收起左側

KEIL Real view MDK中插入空操作NOP

[復制鏈接]
ID:102668 發(fā)表于 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();
...
}


回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表