Arduino自己封装库

导言:以封装一个简单的LED库为例,当然这个库是没有必要的,这是测试!!   OK ,Let‘s Start!

1、新建一个文件夹:LED

在LED文件夹下创建examples文件夹、keywords.txt文件、LED.cpp文件和LED.h文件

2、编写LED.h     。。。。。。其实就是创建一个LED的类:

#ifndef LED_H

#define LED_H

#include "arduino.h"

class LED

{

public:

LED(int pin);

void on();

void off();

private:

int pin;

};

#endif

3、编写LED.cpp    。。。。。。填充那个类

#include"led.h"

LED::LED(int pin)

{

pinMode(pin,OUTPUT);

this->pin=pin;

}

void LED::on()

{

digitaWrite(pin,HIGH);

}

void LED::off()

{

digitaWrite(pin,LOW);

}

4、在examples文件夹下创建LED文件夹然后在LED文件夹下创建LED.ino文件、然后编写此文件。。。。。。。。。测试自己的程序。。。。一个demo

#include "LED.h"

LED led(13);

void setup()

{

}

void loop()

{

led.on();

delay(1000);

led.off();

delay(1000);

}

5、文件编写完成。。。。。。少了点东西好像,,,,那个keywords.txt没写,,,随便填充吧。。。。。。哈哈哈

最后将整个文件夹丢到arduino IDE 的libraries目录下,OK。。。打开IDE,可以看到我们编写的工程了,打开测试一下吧!!

时间: 2024-08-03 20:13:59

Arduino自己封装库的相关文章

第一百六十一节,封装库--JavaScript,完整封装库文件

封装库--JavaScript,完整封装库文件 /** *feng_zhuang_ku_1.0版本,js封装库,2016/12/29日:林贵秀 **/ /** 前台调用 * 每次调用$()创建库对象,使其每次调用都是独立的对象 * $()创建库对象,有一个可选参数,参数有两种方式,1是传入的this,2是传入的字符串 * 可选参数说明: * 传入的this,this,就是当前对象本身 * * 传入的字符串,代表获取元素选择器 * 参数是元素选择器(id值.class值.标签名称)其中一样的字符串

第一百四十节,JavaScript,封装库--浏览器检测

JavaScript,封装库--浏览器检测 在函数库编写一个,浏览器检测对象 /** sys浏览器检测对象,对象下有两个属性,liu_lan_qi属性和xi_tong属性 * liu_lan_qi属性,检测浏览器名称和版本号,如:alert(sys.liu_lan_qi); * xi_tong属性,检测浏览器运行环境,如:alert(sys.xi_tong); **/ (function () { //闭包,自我执行 window.sys = {}; //全局变量对象,保存浏览器信息 var u

第一百三十一节,JavaScript,封装库--CSS

JavaScript,封装库--CSS 将封装库里的方法,改成了原型添加方法 增加4个方法 tian_jia_class()方法,给获取到的元素添加class属性,参数是class属性值,可以连缀1 yi_chu_class()方法,给获取到的元素移除class属性,参数是要移除的class属性值,可以连缀2 she_zhi_link_css()方法,设置link连接.或style内嵌.中的CSS样式3 yi_chu_link_css()方法,移除link连接.或style内嵌.中的CSS样式4

js封装库1

创建库,分别创建了三个文件,demo.html   demo.js  base.js demo.html:连接引用外部两个JS文件 demo.js:是用来写一些调用封装库的操作的一些JS代码 base.js:这个就是封装库的JS文件了.里面会写上一些封装好的效果,用于提供给demo.js进行调用 JS中常用的通过几个方式获取页面上的元素对象数据 通过元素设置的ID获取 通过元素设置的name获取 通过元素的标签获取 JS中捕获了元素对象后我们通常会做的常规事情 捕获后,更改元素对象的CSS样式

第一百三十九节,JavaScript,封装库--CSS选择器

JavaScript,封装库--修改元素选择器 就是将构造库函数修改成元素选择器,像css那样,输入#xxx .xxx xxx  (获取指定id下的指定class下的指定标签元素) 修改后的基础库 /** *feng_zhuang_ku_1.0版本,js封装库,2016/12/29日:林贵秀 **/ /** 前台调用 * 每次调用$()创建库对象,使其每次调用都是独立的对象 * $()创建库对象,有一个可选参数,参数有两种方式,1是传入的this,2是传入的字符串 * 可选参数说明: * 传入的

第一百三十五节,JavaScript,封装库--拖拽

JavaScript,封装库--拖拽 封装库新增1个拖拽方法 /** tuo_zhuai()方法,将一个弹窗元素实现拖拽功能 * 注意:一般需要在css文件将元素里的某一个区块光标设置成提示可以拖拽,如:cursor: move; * 无参 **/ feng_zhuang_ku.prototype.tuo_zhuai = function () { if (this.jie_dian.length == 1) { var yan_su = null; for (var i = 0; i < th

【原创】Capture CIS利用Access数据库建立封装库说明

1.在服务器端建立新空间,方便封装库以及数据库的归档存放 服务器路径:\\192.168.1.234\Share\STG_LIB,文件夹内容如下,其中Datesheet存放物料数据手册,Pcb_Lib存放Allegro封装,Schematic_Lib存放Capture封装,STG_Datebase存放数据库文件. 2.构建Access数据库 1)打开Access软件,执行新建命令,弹出如下窗口.在右下角选择存放路径并设置文件名称,点击创建.(2007以上版本文件后缀为"accdb",2

Android 一个改进的okHttp封装库

一.概述 之前写了篇Android OkHttp完全解析 是时候来了解OkHttp了,其实主要是作为okhttp的普及文章,当然里面也简单封装了工具类,没想到关注和使用的人还挺多的,由于这股热情,该工具类中的方法也是剧增,各种重载方法,以致于使用起来极不方便,实在惭愧. 于是,在这个周末,抽点时间对该工具类,进行了重新的拆解与编写,顺便完善下功能,尽可能的提升其使用起来的方便性和易扩展性. 标题的改善,也是指的是对于我之前的代码进行改善. 如果你对okhttp不了解,可以通过Android Ok

Android 一个改善的okHttp封装库

转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/49734867: 本文出自:[张鸿洋的博客] 一.概述 之前写了篇Android OkHttp全然解析 是时候来了解OkHttp了,事实上主要是作为okhttp的普及文章,当然里面也简单封装了工具类,没想到关注和使用的人还挺多的,因为这股热情,该工具类中的方法也是剧增,各种重载方法,以致于使用起来极不方便.实在羞愧. 于是,在这个周末,抽点时间对该工具类,进行了又一次的拆解与编