查看: 417|回复: 0

[分享] siri控制8266

[复制链接]
  • TA的每日心情
    开心
    2020-4-28 19:15
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    发表于 2020-4-8 00:14 | 显示全部楼层 |阅读模式
    //本程序是操作8266的GPIO 0 口
    // 程序如下

    #include <ESP8266WiFi.h>
    const char* ssid = "TP-11222";               //路由器账号
    const char* password = "11000323";          //路由器密码

    WiFiServer server(80);  // 服务器端口号
    void setup() {
      Serial.begin(115200);
      delay(10);
      pinMode(0, OUTPUT);                  //定义IO 0 输出

      digitalWrite(0, 0);                        //IO 0  上点低电频

      // Connect to WiFi network
      Serial.println();
      Serial.println();
      Serial.print("Connecting to ");
      Serial.println(ssid);
      WiFi.begin(ssid, password);
      while (WiFi.status() != WL_CONNECTED) {
        delay(500);
        Serial.print(".");
      }
      Serial.println("");
      Serial.println("WiFi connected");
    cStart the server
      server.begin();
      Serial.println("Server started @ ");
      // Print the IP address & instructions
      Serial.println(WiFi.localIP());
      //打印出IP地址,后期可以制作显示器来外部硬件显示ip
      Serial.println("To control GPIO, open your web browser.");
      Serial.println("To set GPIO 0 high, type:");
      Serial.print(WiFi.localIP());
      Serial.println("/gpio/1");
      Serial.println("To set GPIO 0 low, type:");
      Serial.print(WiFi.localIP());
      Serial.println("/gpio/0");
      Serial.println("To toggle GPIO 0, type:");
      Serial.print(WiFi.localIP());
      Serial.println("/gpio/4");
    }
    void loop() {
      // Check if a client has connected
      WiFiClient client = server.available();
      if (!client) {
        delay(100);
        return;
      }
      String req = client.readStringUntil('\r');
      Serial.println(req);
      client.flush();
      // Match the request
      int val;         
      //      下面开始判断ip进行动作指令
      if (req.indexOf("/gpio/off") != -1)
        digitalWrite(0, 1);
      else if (req.indexOf("/gpio/on") != -1)
        digitalWrite(0, 0);

      else {
        Serial.println("invalid request");
        client.print("HTTP/1.1 404\r\n");
        client.stop();
        return;
      }
      client.flush();
      // Prepare the response
      String s = "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n<!DOCTYPE HTML>\r\n<html>\r\nWelcome wenzheng space! ";
      s += "</html>\n";
      // Send the response to the client
      client.print(s);
      delay(1);
      Serial.println("Client disonnected");
    }





    程序下载好后
    打开串口监视器
    复位8266  
    查看8622地址




    记住这个地址  192.168.1.112   我的是这个地址 ,每个人的都不一样,自己记住



    下面是ios捷径的配置(请用苹果内置浏览器打开):

    开灯
    https://www.icloud.com/shortcuts/738ab973d2024d6a97c2692638bbd809?from=singlemessage&isappinstalled=0

    关灯
    https://www.icloud.com/shortcuts/8e25019a47604bb794856e5317ca7a30?from=singlemessage&isappinstalled=0




    进入快捷指令编辑







    给这个地址改成自己的












    点右上角的完成就可以了



    体验siri控制灯吧

    唯一缺点内网控制  不能用外网   







    QQ截图20200408000412.png
    IMG_1379.PNG
    IMG_1378.PNG
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    热门推荐

    5分钟带你快速了解新一代开发板:M5STACK
    5分钟带你快速了解新一代
    一、什么是M5Stack M5Stack是一种模块化、可堆叠扩展的开发板,每个模块
    创客火首发无人机编队套装,开启不一样的人工智能教育
    创客火首发无人机编队套装
    2017年国务院发布《新一代人工智能发展规划》,提出要广泛开展人工智能科普活动,在中
    求解用arduino 让WS2812全灯带无特效常亮并做呼吸灯效果
    求解用arduino 让WS2812全
    本人小白,初学arduino,一边逛论坛一边看网上视频教程,看得比较杂 找了很久也没找
    Arduino物联网开发实例教程
    Arduino物联网开发实例教
    [md] **blinker用户交流群 301438087 (仅限github已Star的用户加群)** ## bli
    萌新求助,小爱语音控制8266没有反应
    萌新求助,小爱语音控制82
    看了有大佬做的远程开机,就想自己试试,我用的是esp8266 nodemcu。程序烧进去以后,
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   
    快速回复 返回顶部 返回列表