基于Arduino(ESP8266)与阿里云物联网产品开发基础教程

       这是我个人第二次接触Arduino(ESP8266)这块板,再此之前的话使用的是Arduino R1,R1是没有自带ESP8266的,建议大家选单片机的时候选Arduino有自带ESP8266,这样就可以少走弯路,省了很多代码。


1、首先,我们先在电脑下载并安装Arduino IDE,大家可以去Arduino中文社区下载自己想要的版本https://www.arduino.cn/,因为我之前使用过一次这个软件,就不需要再去进行安装驱动,不懂驱动安装的同学可以去网上看看教程,这里就不教大家安装驱动。

2、接下来就要安装ESP8266Arduino开发环境,打开  文件->首选项->附加开发板管理器网址  这里输入http://arduino.esp8266.com/stable/package_esp8266com_index.json,确定后建议关闭软件重新开启再使用。

                    基于Arduino(ESP8266)与阿里云物联网产品开发基础教程

                                                                              图1

接下来就是下载对应的开发板,打开  工具->开发板->开发板管理器  查找ESP8266,选择你想要的版本安装就可以,安装过程较久,大家耐心等待就好,不要中途觉得卡了就关了界面进入重新下载,我就是在这折腾了几次,浪费了些时间。

     基于Arduino(ESP8266)与阿里云物联网产品开发基础教程

                                                                               图2

3、开发环境搭建好后,直接使用库ESP8266WiFi,以下代码就能使ESP8266连接上家里WiFi。

#include <ESP8266WiFi.h>
static WiFiClient espClient

#define WIFI_SSID       “wenwen”      //替换自己的WIFI名
#define WIFI_PASSWD     “88888888”    //替换自己的WIFI密码

void setup()
{
  Serial.begin(115200);

  //连接到wifi
  wifiInit(WIFI_SSID, WIFI_PASSWD);
}

void loop()
{
  
}
//wifi 连接
void wifiInit(const char *ssid, const char *passphrase)
{
  WiFi.mode(WIFI_STA);
  WiFi.begin(ssid, passphrase);
  while (WiFi.status() != WL_CONNECTED)
  {
    delay(1000);
    Serial.println(“WiFi not Connect”);
  }
  Serial.println(“Connected to AP”);
}

4、成功连接WiFi,接下来就是连接上我们阿里云物联网创建的产品,这里需要用到几个接入阿里云的库AliyunIoTSDK库、crypto库、PubSubClient库,打开  项目->加载库->库管理器  安装完这三个库后就算完成了接入阿里云的环境配置。

基于Arduino(ESP8266)与阿里云物联网产品开发基础教程

                                                                                      图3

安装好以上几个库,要想接入到物联网的产品还需要提供产品的三元组。

              基于Arduino(ESP8266)与阿里云物联网产品开发基础教程

                                                                                       图4

程序中写入自己三元组信息。

                    基于Arduino(ESP8266)与阿里云物联网产品开发基础教程

                                                                                       图5

调用一系列ESP8266和阿里云的SDK函数,让客户端连接到阿里云,当然也包含了复杂的密码认证等,在setup()函数中加入这条语句即可接入到你对应的设备。

 AliyunIoTSDK::begin(espClient, PRODUCT_KEY, DEVICE_NAME, DEVICE_SECRET, REGION_ID);

5、最后就是Arduino单片机如何向阿里云物联网设备进行发送信息和接收信息。

在loop()函数中加入以下代码,AliyunIoTSDK::send()是发送信息到阿里云的函数,body_temperature是设备的标识符,wendu是你要发送的变量,这里要注意,数据类型要一样,不然会报错。

     AliyunIoTSDK::loop();
    if (millis() – lastMsMain >= 5000)
    {
        lastMsMain = millis(); 
//       mqttCheckConnect();
//       messageBufferCheck();
   AliyunIoTSDK::send(“body_temperature”, wendu);
    }

在setup()函数中加入以下代码,  AliyunIoTSDK::bindData()是回调信息的函数,可以获取设备当前标识符的值,led为标识符,LED为函数名。

  AliyunIoTSDK::bindData(“led”, LED);   

LED的函数代码如下

//LED控制亮灭函数
void LED(JsonVariant L)//固定格式,修改参数l
{
  int LED = L[“led”];//参数l
  LED_kg=LED;
  if (LED == 0)
  {
    digitalWrite(ledPin, LOW);
  }
  else 
  {
    digitalWrite(ledPin, HIGH);
  }
  Serial.printf(“收到的led是:”); 
  Serial.println(LED);
}         

基于Arduino(ESP8266)与阿里云物联网产品开发基础教程

                                                                                            图6


      配置完以上这些,就可以做各种各样的小产品了(●’◡’●)!!!!!!!!其实挺简单的,自己做的时候走了不少弯路,网上查阅了挺多资料和视频,希望我的小总结能帮助到你。

原创:https://www.panoramacn.com
源码网提供WordPress源码,帝国CMS源码discuz源码,微信小程序,小说源码,杰奇源码,thinkphp源码,ecshop模板源码,微擎模板源码,dede源码,织梦源码等。

专业搭建小说网站,小说程序,杰奇系列,微信小说系列,app系列小说

基于Arduino(ESP8266)与阿里云物联网产品开发基础教程

免责声明,若由于商用引起版权纠纷,一切责任均由使用者承担。

您必须遵守我们的协议,如果您下载了该资源行为将被视为对《免责声明》全部内容的认可-> 联系客服 投诉资源
www.panoramacn.com资源全部来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。 敬请谅解! 侵权删帖/违法举报/投稿等事物联系邮箱:2640602276@qq.com
未经允许不得转载:书荒源码源码网每日更新网站源码模板! » 基于Arduino(ESP8266)与阿里云物联网产品开发基础教程
关注我们小说电影免费看
关注我们,获取更多的全网素材资源,有趣有料!
120000+人已关注
分享到:
赞(0) 打赏

评论抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

您的打赏就是我分享的动力!

支付宝扫一扫打赏

微信扫一扫打赏