Blinker Wifiduino 物联网 新手友好

Wifiduino 物联网连接实验

之前发了一个wifi8266做穿透模块的文章 但是相对来说步骤还是比较繁琐 对于很多不需要过于复杂的功能 单纯只需要几个传感器 略懂arduino 并且对管脚要求不高的人来说 Wifiduino是个非常好的选择 在物联网中文社区 的物联网模块 有块这非常完善的教程 但是要求 有arduino 的一定基础 但对于arduino和相应机制不太懂的同学就很不友好了 这无疑破灭了 一个有梦想的同学物联网的梦想 所以我准备写一个 新手友好的教程 让有梦想的同学都能非常简单的连上物联网
Blinker Wifiduino 物联网 新手友好_第1张图片

1.实验准备

1.1硬件准备

  1. wifiduino板子一块(某宝上直接搜即可就一家买)
  2. 烧录线(普通的安卓口下载线)
    (没错!就是这吗简单)

1.2软件准备

  1. arduino IED
  2. blinker 头文件(粘到arduino IED 的libraries 文件夹下)
  3. 加载blinker SDK(注:就是一个应用程序运行之后,打开IED就提供WiFiduino的烧录选项 就是可以选板子了 )
  4. blinker app (下载之后捅咕捅咕选择arduinoWiFi链接 把API key 复制下来 具体步骤参见 arduino 中文社区 或者我的8266内篇文章)
  5. 下面是头文件 和所谓的SDK的地址链接
    https://pan.baidu.com/s/1iIMgWuyEoUBQ1nlKJ1Xrzw .
    SDK加载的应用程序在wifiduino文件夹里
    第一个文件是binker头文件

    提取码:6uvw
    Blinker Wifiduino 物联网 新手友好_第2张图片
    选一个运行运行之后重新打开Arduino IED就行了
    Blinker Wifiduino 物联网 新手友好_第3张图片

2.实验步骤

2.1选择烧录串口和烧录板

加载完SDK之后在开发板选项里一直向下拉就能找到
Blinker Wifiduino 物联网 新手友好_第4张图片
选择端口 我这里用的是COM7
Blinker Wifiduino 物联网 新手友好_第5张图片

2.2选择程序

好的我们再次请出的hello blinker
这次我会把每一行代码都写上注释
让你明白每一句的意思



#define BLINKER_WIFI         //MQTT协议所需要的宏定义 写上就对了不用关注

#include          //blinker的头文件调用
 

char auth[] = "*********";   //在双引号里把*们换 成你在app上选择WiFi链接出来的内一串key
char ssid[] = "*****";       //在双引号换成写你家WiFi名称/手机热点名称
char pswd[] = "********";    //双引号换成写你要连接的wifi密码

// 新建组件对象
BlinkerButton Button1("btn-abc");        //button是按键的意思  这句是新建一个按键型组件名叫btn-abc
BlinkerNumber Number1("num-abc");        //这句是新建一个数字组件名字交num-abc

int counter = 0;

// 按下按键即会执行该函数
void button1_callback(const String & state)                //理解成这是一个中断调用函数 state 是调用中断后手机app发来的值
{
    BLINKER_LOG("get button state: ", state);              //在blinker和Monitor(监视器的意思)上显示这一坨
    digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));  //按一次小灯状态取反一次 亮就变成灭 灭就变成亮
}

// 如果未绑定的组件被触发,则会执行其中内容
void dataRead(const String & data)                          //如果没定义过的组件没触发了话 就是我们之前不是定义了俩组件 其余的组件被触发了比如按钮被按了
{
    BLINKER_LOG("Blinker readString: ", data);  //同上面内个
    counter++;                                  //emmmm这句就算了不解释了
    Number1.print(counter);                     //counter的数值打印在(就是显示在)blinker的我们定义过的数字组件上
}

void setup()
{
    // 初始化串口
    Serial.begin(115200);
    BLINKER_DEBUG.stream(Serial);     //打开blinker调试函数 debug(调试)就是你发送的信息啥啥的正不正常 否则你打开串口 会显示error
    
    // 初始化有LED的IO
    pinMode(LED_BUILTIN, OUTPUT);
    digitalWrite(LED_BUILTIN, HIGH);
    // 初始化blinker
    Blinker.begin(auth, ssid, pswd);  //链接wifi 到对应的API key上  就是联网然后到你手机界面用的
    Blinker.attachData(dataRead);     //初始化中断 如果被触发 调用dataRead函数  触发条件:没有定义过的按键被按了先这吗理解

    Button1.attach(button1_callback);//初始化button1按键的中断 如果button1被按了话 就调用括号里的函数 
}

void loop() {
    Blinker.run();  //blinkr驱动开始不断的接受值和发送值
}

2.3程序上传调试

链接成功了打开串口会有以下显示MQTT connected(服务器已连接)
Blinker Wifiduino 物联网 新手友好_第6张图片
打开手机界面载入示例进去的界面
Blinker Wifiduino 物联网 新手友好_第7张图片
然后你按就可以了串口上就会有类似的显示
Blinker Wifiduino 物联网 新手友好_第8张图片

3.官方网址

链接: Arduino中文社区blinker教程.
里面有进阶一点的操作,温湿度模块,以及链接小爱同学等教程

4.后言

我尽我所能解释的看起来很"愚蠢"给希望从0开始的同学减轻一些负担,因为作为一个普普通通的电子专业本科生,觉得如果每一个想学的东西还在想学的劲头的时候,不会因为一开始就太难而被劝退,那就一定能有收获,因为很多有人解释有人教一分钟就能掌握的事情,自己从头上网找一句一句扣可能需要很长时间,可能以后毕业用不上这些知识,那就留在这,自己以后看一看可能还觉得挺好玩的.

你可能感兴趣的:(arduino)