Microchip
直播中

刘敏

8年用户 1203经验值
私信 关注
[问答]

怎么从另一个文件调用子例程?

我需要保存什么样的文件类型来保存子程序?如何构造这个子程序文件?我如何从主程序调用它呢?PIC18F42MPLAB V892

回帖(5)

薄坤坤

2020-4-8 10:18:04
这是相当标准的C程序构造。您需要理解“声明”和“定义”函数之间的差别。为了“定义”函数,您需要提供头和主体,并且只在文件中(通常情况下)以“.c”文件类型执行一次。YPE,函数名和参数类型)在一个文件中(通常)是一个'.h '文件类型。然后,您可以在任何需要调用该函数的其他源文件中包括头文件。(这其中还有其他一些微妙之处,但是如果您还不了解基础知识,那么最好现在就避免使用它们。)
举报

王焕树

2020-4-8 10:30:30
阅读一下MPASM用户指南:http://ww1.micro..com/downloads/en/devicedoc/mpasm_amp;_mpl._33014h.pdf尤其是“全局”和“外部”指令。
举报

李维兴

2020-4-8 10:40:35
我相信OP是在询问汇编,而不是C。
举报

李维兴

2020-4-8 10:50:39
汇编代码的文件类型应该是.asm。这取决于您使用的是绝对代码还是可重新定位代码。对于绝对代码,只需编写子例程,就好像它位于主程序中一样,然后#将这个文件包含到主文件中的任何位置。但是,对于可重定位代码,这个子例程文件就像任何其他程序集文件;它的标签、变量和子例程名称应该声明为GLOBAL,以便其他文件或模块能够看到它们。对于绝对代码,只需调用子程序,就像它位于主程序中一样。对于可重定位代码,将子程序名声明为Extn,以便可以在该文件中使用。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分