arduino 单片机提供了丰富的库文件系统,这些库文件我们可以直接下载下来使用。那么,我们如何编写自己的库文件呢,下面我主要介绍怎样下载和添加别人的文件库以及编写自己的文件库。
1. 使用现成的库文件
- Library Manager
arduino提供了Library Manager,我们可以选择从这里安装我们需要的库文件。Sketch>include Library>manage Librarys,然后搜索我们需要的安装包,注意安装包的适用情况。 - 加载zip压缩库文件
网络上下载的安装包大多数是一个zip压缩文件,我们可以直接添加到我们项目中。
Sketch>include Library>Add .Zip Library,找到我们已经下载下来的zip文件,直接添加进去即可。 - 直接将库文件解压后放在arduino库文件文件夹下
arduiino软件安装好后,自动在用户文档文件夹下创建以下文件夹,我们可以把库文件解压后放在。C:\Users\admin\Documents\Arduino\libraries文件夹下 - 直接将库文件解压后放在自己的项目文件夹下。
2. 编写自己的库文件
我们可以模仿其它库文件,写一个最简单的库文件,添加到我们的项目中或者供其它开发者使用。arduino程序库文件大多用C++编写,部分内嵌汇编语言,我们使用过程中,首先尝试编写一个C++文件库。
- 创建库文件文件夹
这里作为演示,我们创建一个名为test的文件夹。 - 创建例程文件夹
每个库文件下都有操作这个库文件的一些例子,arduino默认使用examples作为文件夹名,此文件夹下放着我们简单操作这个库的演示程序。 - 创建库文件头文件
后缀名为.h的C++头文件,我们编写的功能函数或者预定义在这个文件里实现。
/*
This is a test library
*/
#ifndef TEST_H
#define TEST_H
#define VERSION = 1.0
class Test {
private:
int age;
public:
Test(int);
int getAge();
void setAge(int);
};
#endif
- 创建库文件的实现文件
我们编写的功能函数在这个文件实现,后缀名为.cpp
#include <test.h>
Test::Test(int x):age(x){}
int Test::getAge(){
return age;
}
void Test::setAge(int x){
age = x;
}
然后我们在程序里面调用编译一下:
#include <test.h>
Test test = Test(50);
void setup() {
int age = test.getAge();
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
编译以后,发现没问题,一个最简单的库就编写成功了,我们还可以把自己的测试程序保存到examples文件夹下,然后压缩成zip文件格式,别人就可以当成一个库文件使用了。