前言
在使用Arduino mega2560作为控制板时,如果需要控制的模块比较多,那么将代码全部都写在一份文档里会显得十分臃肿,不利于后续的代码维护和进一步开发,所以根据不同的模块编写相对应的类库就很重要了。
1. 编写类库
在Arduino IDE的工具栏里选择“项目”->“加载库”,可以看到很多第三方库,有需求的话可以点击选择加载,就可以在代码区最前面看到 #include <xx.h>
编写头文件
类库由头文件和.cpp文件组成,可以用C++或者C语言来编写。这里我需要做的是一个控制光开关的相关模块,所以我在Notepad首先建立一个OptcialSwitch.h的头文件,这里面会放一些类库中使用到的变量和函数。例如下面代码所示,首先需要将"Arduino.h"头文件添加进来,接着我自定义了一些Arduino mega2560和光开关模块相连的PIN脚,最后是类库里使用的变量名和函数名。注意:如果类库的变量一般是不能被主程序使用的,如有这个需求则要将变量名用extern来申明为全局变量。
#ifndef
#include "Arduino.h"
#include "../command.h"
/******************** Pin Number *****************/
#define ChannelBit0 23 //34 //2
#define ChannelBit1 22 //36 //3
#define ChannelBit2 25 //38 //4
#define ChannelBit3 24 //40 //5
#define ChannelBit4 27 //42 //6
#define ResetBit 28 //52 //11
#define ReadyBit 26 //48 //7
#define ErrorBit 29 //50 //8
//使用到的变量名
extern int Channel;
//使用到的函数名
b