|
发表于 2019-9-5 22:46:32
|
显示全部楼层
如果楼主找到了师徒缘分与意向的就祝你有偿成功,我可以简单说说就当闲聊了,关于模块化的问题,对于我等菜鸟而言本无发言权的,我不知道这些是否就是模块化编程,但我就是这么弄的而且我只会这些,如果你觉得有用就试一下吧。下面就通过拆分一段程序来描述吧,完整程序如下:
#include <STC15W.h>
#include <intrins.h>
sbit ky=P3^3;
sbit jk=P3^2;
//====20毫秒延时函数======
void delay_20ms()
{
unsigned char i, j, k;
_nop_();
_nop_();
i = 1;
j = 234;
k = 113;
do
{
do
{
while (--k);
} while (--j);
} while (--i);
}
//=======================
void main(void)
{
jk=1;
while(1)
{
if(ky==0)
delay_20ms();
if(ky==0)
jk=~jk;
}
}
这段代码如果分成模块时,可以由一个延时模块程序和一个主函数组成,模块程序很简单就是固定模式的代码中添加函数就可以了,首先建立两个文本:
打开一个复制粘贴3条代码,我始终不会拼写那些特征字、单词啥的所以我经常是复制粘贴,正经编程还是要拼写的不要学我。
而后给模块命名,标准格式见图片中的标注,而后写入模块中所有的函数名。
保存后关闭记事本,根据模块名称重新命名文件并将.txt改成.h,到此模块的h文件就弄完了。
打开另一个文本文件,开头的第一条代码就声明引用方才弄的.h文件,接下来的就是根据代码涉及到的库来引用相关的头文件,如果代码中涉及其他的模块文件也要一并将相关的.h文件声明出来,而后就是写入完整的函数。
将这个文本文件重新命名为***.c文件就ok了,见下图:
最后我们将这两个文件剪切-复制到使用这个模块的工程的文件夹里就可以调用了,其实这两个文件原本就应该在工程文件夹里建立的,如果是移植别人的也要粘贴到这里,另外,一般都是先写.c文件而后再写.h文件,我为了讲诉简单我就这么弄了。
下面我们重新建立这个工程演示一下用法:
在新建工程中声明引用这个delay.h文件
而后是在工程中添加各个.c文件
添加--Add
再添加--再Add
如果文件夹中的所有c文件都要添加就一并选中Add一下就可以了
添加成功后就可以在这里看到了
接下来编译一下发现了错误
将这个声明移到delay.c里就可以了,
方法很简单,双击左边窗口中的delay.c打开后添加即可
再次编译没有问题了。
以上就是关于C语言程序模块的那点事,不知道是不是你想要的东西,所有内容都是我自己懂的一点点东西边演示边截图边写的,如果有用就不算白费劲如果无用直接无视也没关系,如有不对请高手及时指出以免误导新手,如还有不懂请移步百度自行学习。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
|