运用模块方式写单片机程序

环境描述:Keil+ Proteus电路仿真
首先在Keil里创建一个工程,在工程里建立三个文件,文件名分别是:“头文件.c”,“delay.c”,“delay.h”
分别在 头文件.c、delay.c、delay.h写入相应内容:(注意不要将 delay.h文件插入工程文件中)
1#include2#include"delay.h"34main()5{6while(1)7{8P1=0x00;9delay();10P1=0xff;11delay();12}13}
1#include"delay.h"2delay()3{4intx;5for(x=0;x<250;x++)6;7}
1#ifndef_DELAY_H_2#define_DELAY_H_3delay();45#endif
设置生成Hex文件的目录:
点击Rebuild all target files,生成效果如下:
在Proteus仿真软件中插入一个80C51的单片机芯片,然后将刚生成的Hex文件烧录进该芯片中:
仿真效果如下:
用模块写一个LED灯程序的整个步骤就介绍完毕了 。
温馨提示:
1,delay在程序中起延时的作用 。
2,#include与#include"delay.h"的区别
#include存入的是单片机自带的头文件目录中
#include"delay.h"是自定义的函数,存放在自己新建的工作目录中
3,写这篇文章的主要目的并不是介绍如何写一个LED亮灭的单片机程序,而是通过这个小程序,介绍用模块写程序的步骤 。
曾经我在写C语言的时候,只会用一个头文件,外加一个主函数,那时候我就在想,如果以后做工程项目,难道就要像这样写一个很长很长的C语言文件吗?
这个问题一直困扰着我,不过今天算是解决了 。通过这种方式可以将一个很大的工程项目分为几个子模块,然后对模块一个个进行测试,哪里有问题,就会有针对性的进行调试,提高了整体效率 。
【运用模块方式写单片机程序】

    推荐阅读