标题:
FLASH编程c语言嵌入汇编不能通过……
[打印本页]
作者:
chenwenxin
时间:
2007-1-29 08:56
标题:
FLASH编程c语言嵌入汇编不能通过……
unsigned int pbase
asm("sthx pbase");
CW编译为什么上面的语句通不过呢?请高手指点,谢谢!
作者:
seuafu2005
时间:
2007-1-29 09:56
不知道你用的是什么编译环境
这个里面有几个问题,一般嵌入汇编,用 asm ();的方式,不带引号。不过这个和编译工具有关。
另外,你用汇编调入pbase数据,必须给汇编中声明一下pbase
现在pbase只是在c中声明了而已。
可以参考一下这个帖子,关于c和汇编共用常量的问题
http://bbs.eccn.com/dispbbs.asp?boardID=3&RootID=101651&ID=101651
作者:
chenwenxin
时间:
2007-1-29 12:38
我用的CW08 V3.1,只有C语言的源文件,没有汇编源文件,仅仅是在C语言的源文件中嵌入一段汇编而已,还需要用汇编声明吗?如果需要声明,应该如何声明呢?
作者:
seuafu2005
时间:
2007-1-29 15:04
这样的话应该没有问题
你的pbase定义在和汇编语句同一个c文件中就可以了
直接引用 asm ldhx pbase;就可以了
作者:
strongchen
时间:
2007-1-29 15:38
我想这是CodeWarrior的一个bug。现在暂时可以用以下的代码来替代:
asm{
STX pbase;
PSHH
PULX
STX pbase:1
}
作者:
chenwenxin
时间:
2007-1-29 18:30
多谢各位高手。
上面的问题一直很奇怪:
asm ldhx pbase;可以通过编译,但是
asm sthx pbase;却不能通过编译
只能用
asm{
STX pbase;
PSHH
PULX
STX pbase:1
}
来代替,就OK了,多谢!
作者:
strongchen
时间:
2007-1-30 10:04
各位可以到飞思卡尔网站上下载补丁和升级软件,只是现在网络速度还是很慢:(
http://www.freescale.com/webapp/sps/site/overview.jsp?nodeId=0127260061788213CF151B
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0