手機控制 wifi繼電器程序

/* *****************************************************************

 *

 * Download latest Blinker library here:

 * https://github.com/blinker-iot/blinker-library/archive/master.zip

 *

 *

 * Blinker is a cross-hardware, cross-platform solution for the IoT.

 * It provides APP, device and server support,

 * and uses public cloud services for data transmission and storage.

 * It can be used in smart home, data monitoring and other fields

 * to help users build Internet of Things projects better and faster.

 *

 * Make sure installed 2.7.4 or later ESP8266/Arduino package,

 * if use ESP8266 with Blinker.

 * https://github.com/esp8266/Arduino/releases

 *

 * Make sure installed 1.0.5 or later ESP32/Arduino package,

 * if use ESP32 with Blinker.

 * https://github.com/espressif/arduino-esp32/releases

 *

 * Docs: https://diandeng.tech/doc

 *      

 *

 * *****************************************************************

 *

 * Blinker 庫下載地址:

 * https://github.com/blinker-iot/blinker-library/archive/master.zip

 *

 * Blinker 是一套跨硬件、跨平臺的物聯網解決方案,提供APP端、設備端、

 * 服務器端支持,使用公有云服務進行數據傳輸存儲。可用於智能家居、

 * 數據監測等領域,可以幫助用戶更好更快地搭建物聯網項目。

 *

 * 如果使用 ESP8266 接入 Blinker,

 * 請確保安裝了 2.7.4 或更新的 ESP8266/Arduino 支持包。

 * https://github.com/esp8266/Arduino/releases

 *

 * 如果使用 ESP32 接入 Blinker,

 * 請確保安裝了 1.0.5 或更新的 ESP32/Arduino 支持包。

 * https://github.com/espressif/arduino-esp32/releases

 *

 * 文檔: https://diandeng.tech/doc

 *      

 * 繼電器

 * 8266  

 * *****************************************************************/

 

#define BLINKER_WIFI

 

#include <Blinker.h>

 

char auth[] = "";

char ssid[] = "";

char pswd[] = "";

 

// 新建組件對象

BlinkerButton Button1("btn-open");

BlinkerButton Button2("btn-close");

BlinkerButton Button3("btn-abd");

BlinkerNumber Number1("num-abc");

int GPIO = 0;

int counter = 0;

// 關閉水泵

void button1_callback(const String & state)

{

    BLINKER_LOG("get button state: ", state);

     digitalWrite(GPIO, HIGH);

     Blinker.delay(500);//操作延時

}

// 開水泵

void button2_callback(const String & state)

{

    BLINKER_LOG("get button state: ", state);

     digitalWrite(GPIO, LOW);

     Blinker.delay(500);//操作延時

}

//led

void button3_callback(const String & state)

{

    BLINKER_LOG("get button state: ", state);

    digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN));

}

// 如果未綁定的組件被觸發,則會執行其中內容

void dataRead(const String & data)

{

    BLINKER_LOG("Blinker readString: ", data);

    counter++;

    Number1.print(counter);

}

 

void setup()

{

    // 初始化串口

    Serial.begin(115200);

    BLINKER_DEBUG.stream(Serial);

    BLINKER_DEBUG.debugAll();

     

    // 初始化有LEDIO

    pinMode(LED_BUILTIN, OUTPUT);

    digitalWrite(LED_BUILTIN, HIGH);

 

     // 初始化控制繼電器的GPIO引腳

    pinMode(GPIO, OUTPUT);

    //digitalWrite(GPIO, LOW);//低電平默認繼電器關閉

    digitalWrite(GPIO, HIGH);//低電平默認繼電器關閉

 

    // 初始化blinker

    Blinker.begin(auth, ssid, pswd);

    Blinker.attachData(dataRead);

 

    Button1.attach(button1_callback);

    Button2.attach(button2_callback);

    Button3.attach(button3_callback);

}

 

void loop() {

    Blinker.run();

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章