有网友碰到这样的问题“51单片机中汇编语言如何调用C的子程序?”。小编为您整理了以下解决方案,希望对您有帮助:
解决方案1:
我的程序是KEIL编译的,如下
先申明
EXTRN CODE (_Send_CRC) ;Send_CRC是C中的函数,汇编中加了_
调用的时候
LCALL _Send_CRC
如果要使用C中的变量,那么CODE变成相应的DATA,XDATA等
解决方案2:
我的程序KEIL编译器,
EXTRN CODE(_Send_CRC)的第一个国家Send_CRC C函数编译加上调用_
LCALL _Send_CRC
如果您要成相应的数据,然后使用变量在C,XDATA代码
解决方案3:
我的程序KEIL编译器,
EXTRN CODE(_Send_CRC)的第一个国家Send_CRC C函数编译加上调用_
LCALL _Send_CRC
如果您要成相应的数据,然后使用变量在C,XDATA代码
解决方案4:
用逆向思维考虑就是在c语言下插入汇编
解决方案5:
查查C的编译器和汇编编译器的资料,上面有详细的说明。
一般在汇编中用EXTERN声明外部函数,将C语言中的函数名前面加上下划线就是汇编的函数名,有些编译器是这样的,并不是所有的编译器都是这样的。还是要查编译器的使用说明才能知道你用的编译器是怎么操作的。
如果是keil,应该是上面的操作。
Copyright © 2019- gamedaodao.com 版权所有 湘ICP备2022005869号-6
违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务