C语言程序函数和汇编语言函数在互相调用时,可以利用8051单片机的工作寄存器最多可传递3个函数:
传递的函数 |
Char 一字节指针 |
Int 两字节指针 |
Long float |
一般指针 |
第一个参数 |
R7 |
R6(高字节),R7(低字节) |
R4~R7 |
R3(存储类型) R2(高字节),R1(低字节) |
第二个参数 |
R5 |
R4(高字节),R5(低字节) |
R4~R7 |
R3(存储类型),R2(高字节),R1(低字节) |
第三个参数 |
R3 |
R2(高字节) R3(低字节) |
无 |
R3(存储类型) R2(高字节) R1(低字节) |
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
void icl7135(void); 在主函数中声明汇编函数
icl7135(); /*调用汇编的A/D采集驱动函数
新建一个汇编文件QUDONG.asm的文件
?PR?ICL7135?QUDONG SEGMENT CODE 蓝颜色(ICL7135)为调用的函数名
PUBLIC ICL7135 紫颜色(DUDONG)为函数所在的文件名
RSEG ?PR?ICL7135?QUDONG
ICL7135:
;你的汇编程序
RET
END