以SR04为例编写类库:
我们知道,在某些时候我们写的代码应用的时候几乎可以说是重复应用的,每次写的时候几乎一样,我们可以通过建议函数来简化这个过程,但是函数只能在一个文件中应用,那我们想要在其他地方用的时候怎么办呢?这个时候就可以用到类库了,arduino自带一些常用的库,我们可以根据自己的需要建议自己的类库
编写头文件
首先,需要建议一个名为SR04.h的头文件,在SR04.h 文件中需要声明一个SR04超声波类
class SR04{
public:
private:
}
通常一个类包括两部分——public 和 private 。public 中声明的函数和变量可以被外部程序所访问,而private 中声明的函数和变量则只能在这个类的内部访问。
#ifndef SR04_H
#define SR04_H
#include "Arduino.h"
class SR04{
public:
SR04(int TrigPin, int EchoPin);
float Get();
private:
int Trig_Pin;
int Echo_Pin;
float distance;
}
#endif
编写.cpp 文件
然后需要建立一个SR04.cpp 文件
在SR04.cpp 文件中,需要写出头文件声明中的成员函数的具体实现代码。
完整代码如下:
#include "Arduino.h"
#include "SR04.h"
SR04::SR04(int TrigPin, int EchoPin){
pinMode(TrigPin, OUTPUT);
pinMode(EchoPin,INPUT);
Trig_Pin = TrigPin;
Echo_Pin = EchoPin;
float SR04::Get(){
digitalWrite(Trig_Pin,LOW);
delayMicroseconds(2);
digitalWrite(Trig_Pin,HIGH);
delayMicroseconds(10);
digitalWrite(Trig_Pin,LOW);
float distance = pulseIn(Echo_Pin,HIGH); / 58.00;
return distance;
值得注意的是,.cpp文件中也需要包含到用到的头文件
关键高亮显示
在IDE中我们发现当用到自带的函数和代码时会有高亮显示,我们可以建立一个 keywords.txt 文件显示高亮
SR04 KEYWORDS1
Get KEYWORDS2
注意:空格用Tab 健输入
添加库
在使用该库时,需要在Arduino IDE目录下的 libraries文件夹中新建一个SR04的文件,将SR04.h 、SR04.cpp keywords.txt 放在该文件夹中
建立示例程序
你同样可以建立一个示例程序,在SR04文件夹中新建一个examples文件夹,并放入你提供的示例程序,
这里再examples 文件夹中新建了一个SR04_Example文件夹,并放入了一个SR04_Example.ino 文件,需要注意的,.ino 文件所在的文件夹需要与该 .ino 文件同名