分享

单片机的模块化编程

 快乐读书法 2015-11-16

现在生产的许多单片机对8051的内核进行了扩展,比如,内部看门狗,ADC转换、EEPROM、PWM等功能。在编程控制程序时,如需要利用这些扩展模块,一般程序体积会变大,文本的长度较长。在调试程序时就显得不太方便了,较好的方法是根据程序段的功能进行模块化编程。

当然在利用一般的单片机编程时,将实现同一目的的程序段进行封装,进行模块化编程,对于程序的维护和调试也是很有帮助的。

1、在运用C语言进行编程时,要养成良好的编程书写习惯。

在程序的开始一般的格式:

/**********************

File name:  文件名称

Author:      作者

Version:     版本号

Description: 功能描述

Data:           日期

*************************/

2、{}

   按Tab键,这样程序的层次比较清晰。

3、模块化编程

     将完成某一特定功能的程序段进行封装。比如delay(WOED n),eeprom();等。

具体步骤如下:

 1、创建头文件

在KEIL软件中两次点击“新建”,创建两个新的文档。保存成.C文件(源文件)和一个.H文件(头文件)。.C和.H文件要同名,名称要有意义,最好可以体现该文件的功能。如建立一个延时程序,delay.c;delay.h。

2、防重复包含处理

在.H文件中加入如下代码:

#ifndef  xxx    如      #ifndef __DELAY_H__

#define  xxx    如     #define __DELAY_H__

……

#endif

3、              代码封装

将需要模块化的代码封装成函数或宏定义。

函数要在头文件中声明一下。

函数体放在.C文件中。

需要被外部调用的宏定义放在.H头文件中。

尽量少用或不用全局变量,必须要用全局的申明放在.C文件中,当需要调用外部全局变量,需要在.H文件中用extern 重新申明。

4、              使用源文件

在KEIL软件的工程中,将需要调用的.C文件添加到工程中。若是.C源文件中调用了那个.H文件中的宏定义或者函数,必须在该.C源文件中增加代码将.H文件包含进去。

5、              所包含的头文件中的函数,宏定义、全局变量可以在.C文件中自由调用。


具体细节,有时间在整理

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多