在上两篇笔记中波波分别分享了利用Bylnk远程获取DH11温度湿度数据,以及如何利用Docker快速构建一个自己的Bylnk服务器。这篇笔记波波接着分享如何利用自建的Bylnk服务器来发送和接收数据。
1、发送数据示例代码:
- #include <ESP8266_Lib.h>
- #include <BlynkSimpleShieldEsp8266.h>
- #define BLYNK_PRINT Serial
- //你项目的Token
- char auth[] = "YourAuthToken";
- //你的WIFI账号密码
- char ssid[] = "YourNetworkName";
- char pass[] = "YourPassword";
- //ESP8266芯片数据引脚
- #include <SoftwareSerial.h>
- SoftwareSerial EspSerial(2, 3); // RX, TX
- //芯片基带频率
- #define ESP8266_BAUD 115200
- ESP8266 wifi(&EspSerial);
- BlynkTimer timer;
- void myTimerEvent()
- {
- Blynk.virtualWrite(V5, millis() / 1000);
- }
- void setup()
- {
- Serial.begin(9600);
- EspSerial.begin(ESP8266_BAUD);
- delay(10);
- Blynk.begin(auth, wifi, ssid, pass, IPAddress(192,168,1,100), 8080);
- timer.setInterval(1000L, myTimerEvent);
- }
- void loop()
- {
- Blynk.run();
- timer.run();
- }
2、接收数据示例:
- #include <ESP8266_Lib.h>
- #include <BlynkSimpleShieldEsp8266.h>
- #define BLYNK_PRINT Serial
- char auth[] = "YourAuthToken";
- char ssid[] = "YourNetworkName";
- char pass[] = "YourPassword";
- #include <SoftwareSerial.h>
- SoftwareSerial EspSerial(2, 3); // RX, TX
- #define ESP8266_BAUD 115200
- ESP8266 wifi(&EspSerial);
- BLYNK_WRITE(V1)
- {
- int pinValue = param.asInt(); // 读取针脚V1的数据
- // 你也可以使用以下写法:
- // String i = param.asStr();
- // double d = param.asDouble();
- Serial.print("V1 Slider value is: ");
- Serial.println(pinValue);
- }
- void setup()
- {
- Serial.begin(9600);
- EspSerial.begin(ESP8266_BAUD);
- delay(10);
- Blynk.begin(auth, wifi, ssid, pass, IPAddress(192,168,1,100), 8080);
- }
- void loop()
- {
- Blynk.run();
- }
以上仅为示例代码,适用于Arduino UNO开发板。之所以分享是为了给刚入门的朋友一个参考,要比起摸索能节省不少时间。
如果您有关于物联网方面的创意也可以加波波QQ进行交流。关于Arduino的物联网平台搭建、开发基本上已经分享完了,剩余的东西需要自己去创造。