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