求助:关于Kei 3 for ARM中编写嵌入汇编函数

[复制链接]
2650|4
 楼主| dwlovehome 发表于 2011-8-13 15:23 | 显示全部楼层 |阅读模式
是这样的,想要延时几个纳秒,所以就像闹个空操作符函数,如下定义,结果发现每次调用这个函数后程序就跑飞了。。。。求教大牛

__asm void delay(void)
{
NOP
NOP
NOP
NOP
NOP
}

然后在需要的时候进行调用

比如:
void fun1()
{
     ........
     delay();        //如果把此函数改为__delay();编译不能通过
     .........

}
 楼主| dwlovehome 发表于 2011-8-13 16:11 | 显示全部楼层
没有大牛进来指点下么?
swx2010 发表于 2011-8-14 09:23 | 显示全部楼层
这个是不是传说中的C中插汇编,想学习一下,帮你顶上来
ilovezeno 发表于 2011-8-14 18:32 | 显示全部楼层
lz 你没发现你的汇编程序跑到底的时候,pc指针指的哪里...你没把原来的pc指针pop出去,程序当然死掉了.....
在汇编末尾加上 BX lr 这样应该就ok了....
多看keil的帮助文件阿,里面的例子照着改就行啦~~~~~~~~~~
 楼主| dwlovehome 发表于 2011-8-15 08:40 | 显示全部楼层
4# ilovezeno

谢谢了,后来发现就是这个问题,对汇编不怎么懂,谢谢了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

41

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部