在Keil中分开子程序,可以按照以下步骤进行:
定义子程序
在主程序文件中,使用`include`预处理指令包含子程序的头文件。头文件通常包含子程序函数的声明。
在主程序文件之外,定义子程序函数的实现。这可以在同一个源文件中,也可以在不同的源文件中。
编写子程序代码
将子程序代码编写在一个单独的C文件中。例如,如果有一个子程序用于计算两个数中较大的数,可以将其编写为`max.c`文件,并在其中定义函数`unsigned char max(unsigned char x1, x2)`。
创建头文件
为子程序创建一个头文件,例如`max.h`,并在其中声明子程序函数。这样可以在主程序中通过包含头文件来使用子程序。
调用子程序
在主程序中的适当位置,使用函数调用语句来调用子程序函数。函数调用语句的形式为函数名(参数列表),其中参数列表根据子程序函数的定义进行提供。
编译和链接
将主程序文件和子程序文件一起编译,并确保它们都被正确链接。这可以通过Keil的编译器和链接器完成。
max.h:
```c
ifndef MAX_H
define MAX_H
unsigned char max(unsigned char x1, unsigned char x2);
endif // MAX_H
```
max.c:
```c
include "max.h"
unsigned char max(unsigned char x1, unsigned char x2) {
unsigned char i;
if (x1 > x2)
i = x1;
else
i = x2;
return(i);
}
```
main.c:
```c
include include "max.h" void main(void) { unsigned char i; i = max(1, 2); // 其他代码 } ``` 通过以上步骤,你可以将程序划分为更小的模块,使得程序结构更加清晰,代码可读性更高,并且便于程序的编写与日后管理。