基于esp8266和Android studio的智能灯控制及APP开发(三)

本篇使用arduino实现esp8266ESP8266模块连接WiFi,并与阿里云建立连接。

一、arduino配置esp8266开发环境

首先下载好arduino,我选择的版本是arduino IDE 2.3.2。下载好安装包后直接安装,有个USB驱动选项记得看看选了没有,一般默认是选了。

Arduino - Home

然后在文件-首选项-开发板管理器地址,添上下面的网址。

http://arduino.esp8266.com/stable/package_esp8266com_index.json

打开工具–开发板-开发板管理器,搜索esp或esp8266,然后选择版本,安装。

下载完成后,开发板管理器会有esp8266的选项,找到你需要的那一款。将esp8266连接到电脑上,端口也选择其对应的。

二、编写程序

本程序使用的头文件如下:

#include <ESP8266WiFi.h>
#include <ArduinoJson.h>
#include <AliyunIoTSDK.h>

连接物联网平台的代码:

#define PRODUCT_KEY "xxxx"//请用自己的参数替换
#define DEVICE_NAME "xxx"//请用自己的参数替换
#define DEVICE_SECRET "xxxx"//请用自己的参数替换
#define REGION_ID "cn-shanghai"

连接WiFi的代码

#define WIFI_SSID "xxxx"//请用自己的参数替换
#define WIFI_PASSWD "xxxxx"//请用自己的参数替换

wifi_Init初始化

void wifiInit(const char *ssid, const char *passphrase)
{
    WiFi.mode(WIFI_STA);//esp8266工作模式为无线终端模式
    WiFi.begin(ssid, passphrase);
    WiFi.setAutoConnect (true);//自动连接
    WiFi.setAutoReconnect (true);//自动断连
    while (WiFi.status() != WL_CONNECTED)//如果没有连接上,就循环尝试,一定要等到连接成功
    {
        delay(1000);
        Serial.println("WiFi not Connect");
    }
    Serial.println("Connected to AP");
}
 

查看云平台是否响应

void powerCallback(JsonVariant p)
{
    int PowerSwitch = p["OF"];
    if (PowerSwitch == 1)
    {
        //看是否会响应云平台的内容
        Serial.println("OF=1  ");
         digitalWrite(LED_BUILTIN, LOW);   // Turn the LED on (Note that LOW is the voltage level
        AliyunIoTSDK::send("OF", 1);
    }
    else
    {
        //是否会响应平台的内容
        Serial.println("OF=0");
         digitalWrite(LED_BUILTIN, HIGH);  // Turn the LED off by making the voltage HIGH
        AliyunIoTSDK::send("OF", 0);
    }
}

程序写好后编译并上传。

三、测试

esp8266成功连接WiFi和阿里云后,平台会显示设备在线。选择在线调试,通过手动开关,观察小灯是否按要求执行。

 

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值