单片机:模块化程序设计

单片机C语言模块化设计
模块化设计是为了以后相同功能的代码方便调用,避免重复输入代码。
我们原来写过延时函数、按键判断等,在写新程序时可以直接添加并引入。
A 通过头文件引入到新工程中
    以延时函数为例:
       1.延时函数代码所在文件:delay.c
          必须引入delay.h头文件
          具体代码如下:
          #include "delay.h"
          void delay(unsigned int time)
          {
            unsigned int x,y;
            for(x=time;x>0;x--)
              for(y=110;y>0;y--);
         }
           2.延时头文件delay.h
    注意:#ifndef空格+下划线+头文件名大写(点用下划线代替)+下划线
    #ifndef _DELAY_H_
    #define _DELAY_H_
    void delay(unsigned int time);
    #endif
   3.主程序文件需要引入头文件
    main.c
    #include "delay.h"
    在主函数中需要的位置可以直接调用其函数
   4.以后如果设计其他应用时,可以直接将delay.c delay.h放入到新工程中,并添加
    在新程序文件中引用相应的头文件,在需要的位置即可直接调用,所以以后设计其他程序时可通过此方法快速调用
B不用头文件,只引入相应的代码文件
  以延时函数为例:
  1.延时函数代码所在文件:delay.c
    必须引入delay.h头文件
    具体代码如下:
    #include "delay.h"
    void delay(unsigned int time)
    {
    unsigned int x,y;
    for(x=time;x>0;x--)
     for(y=110;y>0;y--);
    }
  2.将delay.c复制到新工程位置,并增加delay.c文件到工作项目中
  3.在需要调用的C程序文件中声明函数:
    extern void delay(unsigned int timer);
    然后在当前模块中需要位置可直接调用该函数了
注意:extern是C/C++语言中表明函数和全局变量的作用范围的关键字,该关键字告诉编译器,其申明的函数和变量可以在本模块或其他模块中使用。

 

单片机:模块化程序设计

上一篇:Array.fill()函数的用法


下一篇:读.txt数据并合并~读npy数据并合并