单片机的模块化编程

180it 2022-04-09 PM 765℃ 0条

单片机的模块化编程
一、编写单片机C语言程序开头格式

File name:文件名称

Author:作者

Version:版本号

Description:功能描述

Data:日期

二、单片机C语言程序模块化步骤

1、在同一文件夹下新建一个Main.C文件(或主文件或运行文件)和xxx.C文件(或功能文件)和xxx.h文件(头文件),其中xxx.C文件(或功能文件)和xxx.h文件(头文件)的文件名“xxx”要有意义,最好可以体现该文件的功能。

2、编写xxx.C文件(或功能文件)内容

(1)、包含xxx.h文件(或头文件)

include"led.h"

(2)、声明变量或定义变量 //视具体情况,这步骤可省略。

uchar temp;//调用xxx.h文件(或头文件)中声明的变量temp

(3)、编写功能函数

   void Delay(uint time)

{    

     uchar i,j,k;    

     for(i=0;i<time;i++)

 {

     for(j=0;j<110;j++);

    }

 }

   void LedDisplay()

{

     led=0x7f;

    for(k=0;k<8;k++)

 {

     led=_cror_(led,1);

     Delay(500);

    }

 }

3、编写xxx.h文件(或头文件)内容

(1)、#ifndef xxx //表示if not define xxx.h

ifndef LED_H

(2)、#define xxx //表示如果没有定义 xxx.h ,这里就定义一个 xxx.h。

define LED_H

(3)、单片机头文件或宏定义或声明变量或定义变量或声明功能函数

#include "reg52.h" //由于xxx.C文件(或功能文件)的内容里面要用到51单片机寄存器P1
#include "intrins.h" //循环移位用到
#define uchar unsigned char//这些宏定义都可以在xxx.h 文件(或头文件)里定义
#define uint unsigned int //这些宏定义都可以在xxx.h 文件(或头文件)里定义
#define led P1

extern uchar temp;//在xxx.h文件(或头文件)声明变量temp供其他xxx.C文件(或功能文件)调用,extern只声明变量,不定义变量,注意区分。
void Delay(uint time);//将xxx.C文件(或功能文件)里编写的功能函数在xxx.h文件(或头文件)里面声明
void LedDisplay(); // 将xxx.C文件(或功能文件)里编写的功能函数在xxx.h文件(或头文件)里面声明

(4)、#endif // 定义结束

说明:xxx.h文件(或头文件)内容中的xxx不能相同,且按格式“__大写英文名称_H__”定义。

4、编写Main.C文件(或主文件或运行文件)内容

(1)、包含单片机头文件

include "reg52.h"

(2)、包含xxx.h文件(或头文件)

include"led.h"

(3)、主函数

   void main()
{
     while(1)
  {
        LedDisplay(); 
      }

   }
支付宝打赏支付宝打赏 微信打赏微信打赏

如果文章或资源对您有帮助,欢迎打赏作者。一路走来,感谢有您!

标签: none

单片机的模块化编程