需要材料:
ESP32-D0WDQ6开发板+电压检测模块 Voltage Sensor+杜邦线
电压检测模块 Voltage Sensor介绍:
此模块基于电阻分压原理所设计,能使端子接口输入的电压缩小5倍,模拟输入电压最大为5V,那么电压检测模块的输入电压则不能大于5V×5=25V(如果用到3.3V系统,输入电压不能大于3.3Vx5=16.5V)。因为所用AVR芯片为10位AD,所以此模块的模拟分辨率为0.00489V(5V/1023),故电压检测模块检测输入最小电压为0.00489V×5=0.02445V。
参数:
电压输入范围:DC0-25V
电压检测范围:DC0.02445V-25V
电压模拟分辨率:0.00489V
DC输入接口:端子正极接VCC,负极接GND
Mixly下载地址:Let's Mixly!
Mixly点灯科技库下载地址:/download/yuanxicn/23721856
Mixly:
#define BLINKER_WIFI#define BLINKER_PRINT Serial#include <Blinker.h>volatile float dy;volatile float dy1;volatile float dfb;BlinkerNumber Number1("num-dy");BlinkerNumber Number2("num-bfb");char auth[] = "12356";char ssid[] = "456";char pswd[] = "789";void dataStorage(){Blinker.dataStorage("num-dy",dy);Blinker.dataStorage("num-bfb",dfb);}float mapfloat(float x, float in_min, float in_max, float out_min, float out_max){return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min;}void heartbeat(){}void setup(){Serial.begin(9600);BLINKER_DEBUG.stream(BLINKER_PRINT);Blinker.begin(auth,ssid,pswd);Blinker.begin(auth,ssid,pswd);dy = 0;dy1 = 0;dfb = 0;Blinker.attachDataStorage(dataStorage,60,1);Blinker.attachHeartbeat(heartbeat);}void loop(){Blinker.run();Number1.print(dy);Number2.print(dfb);dy1 = (mapfloat(analogRead(36), 0, 4095, 0, 16.5));dy = dy1 + 1;if (dy >= 10.7) {if (dy > 13.7) {dfb = 100;} else {dfb = (mapfloat(dy, 10.7, 13.7, 0, 100));}} else {dfb = 0;}Blinker.notify(String(String(dy) + String("v ")) + String(String(dfb) + String("%")) );Blinker.delay(5000);if (dy < 10.9) {Blinker.notify(String("电压过低!") + String(String(dy) + String("v")) );}if (dy > 13.5) {Blinker.notify(String("电压过高!") + String(String(dy) + String("v")) );}Blinker.delay(1000);}
点灯科技效果: