【电子DIY作品】网络开机卡-ESP12F

[复制链接]
查看652 | 回复7 | 2023-12-20 21:35:51 | 显示全部楼层 |阅读模式
本帖最后由 sansui 于 2023-12-20 21:38 编辑

错过了小安派

也错过了M61-32S
太惨了
知道太迟了

这次我用esp12F做一个网络开机卡
没啥要求,就想要一块板子,
板子我都看好了,就要这块
01.png

比M61-32S好看多了

接下来介绍下我的项目
我的项目是一个电脑开机卡项目
在网络上已经有现成的,不过是PCIE的
好的一点是可以省的取电
当然不好的一点也就是他省的取电,需要设置关机PCIE不断电
结果,我电脑不支持

所以,我做了我这样的
000232.jpg

typec单独供电,供电解决了
开关控制那,每个开关引出两组排针接口
既可以远程控制,又不影响按钮原来的功能

开关控制部分用了两光耦隔离就搞定了
便宜
当然比固态继电器缺少的点在于,方向要接对,否则,二极管的截止功能就开不了机了

给大家看看我的实物图
VeryCapture_20231220211659.jpg


代码的话,给大家放个点灯app的代码,巴法的也有,但是点灯的会更好的配置智能音箱
  1. #define BLINKER_WIFI
  2. #define BLINKER_ALIGENIE_OUTLET

  3. #include <Blinker.h>
  4. #include <ESP8266WiFi.h>     //智能配网

  5. #define OneSwitchPIN  4        //开关控制引脚
  6. #define TwoSwitchPIN  5        //重启控制引脚

  7. char auth[] = "d111416a28cc";


  8. /***************************手机APP接口***********************/
  9. //按钮1初始化, 创建对象,用于正常开关机及强制关机
  10. #define OneSwitchTXT "OneSwitch"
  11. BlinkerButton OneSwitch(OneSwitchTXT);

  12. //按钮2初始化, 创建对象,用于电脑重启
  13. #define TwoSwitchTXT "TwoSwitch"
  14. BlinkerButton TwoSwitch(TwoSwitchTXT);

  15. //按钮1数据处理回调函数-电脑开关机控制
  16. void OneSwitchCK(const String & state)
  17. {   
  18.     BLINKER_LOG("get button state: ", state);
  19.     //电脑开关机操作
  20.     if(state == "tap"){
  21.       digitalWrite(OneSwitchPIN, HIGH);  //执行电脑开关机
  22.       delay(500);
  23.       digitalWrite(OneSwitchPIN, LOW);
  24.       OneSwitch.print("tap OK");
  25.     }
  26.     //电脑强制关机操作
  27.     if(state == "press")                 //长按按键进行强制关机
  28.     {
  29.       digitalWrite(OneSwitchPIN, HIGH);
  30.       OneSwitch.print("press OK");
  31.     }
  32.     if(state == "pressup")                //长按按键松开后检测是否关机
  33.     {
  34.       digitalWrite(OneSwitchPIN, LOW);
  35.       OneSwitch.print("pressup OK");
  36.     }
  37. }

  38. //按钮2数据处理回调函数-电脑重启控制及开关机状态查询
  39. void TwoSwitchCK(const String & state)
  40. {   
  41.     BLINKER_LOG("get button state: ", state);
  42.     //电脑开关机操作
  43.     if(state == "tap"){
  44.       digitalWrite(TwoSwitchPIN, HIGH);  //执行电脑开关机
  45.       delay(500);
  46.       digitalWrite(TwoSwitchPIN, LOW);
  47.       TwoSwitch.print("tap OK");
  48.     }
  49.     //电脑强制关机操作
  50.     if(state == "press")                 //长按按键进行强制关机
  51.     {
  52.       digitalWrite(TwoSwitchPIN, HIGH);
  53.       TwoSwitch.print("press OK");
  54.     }
  55.     if(state == "pressup")                //长按按键松开后检测是否关机
  56.     {
  57.       digitalWrite(TwoSwitchPIN, LOW);
  58.       TwoSwitch.print("pressup OK");
  59.     }
  60. }


  61. //检测收到未解析数据时的回调函数
  62. void dataRead(const String & data)
  63. {
  64.     BLINKER_LOG("Blinker readString: ", data);

  65.     Blinker.vibrate();
  66.    
  67.     uint32_t BlinkerTime = millis();
  68.    
  69.     Blinker.print("millis", BlinkerTime);
  70. }

  71. void setup()
  72. {
  73.     //初始化串口服务
  74.     Serial.begin(115200);   
  75.     BLINKER_DEBUG.stream(Serial);
  76.     //设置引脚模式并初始化引脚
  77.     pinMode(OneSwitchPIN, OUTPUT);      //开关机控制引脚
  78.     digitalWrite(OneSwitchPIN, LOW);
  79.     pinMode(TwoSwitchPIN, OUTPUT);      //重启控制引脚
  80.     digitalWrite(TwoSwitchPIN, LOW);
  81.     //网络重连
  82.     if (!autoConfig())
  83.     {
  84.       Serial.println("SmartConfig Mode");
  85.       //智能配网
  86.       smartConfig();
  87.     }
  88.    
  89.     //Binker设备配置
  90.     Blinker.begin(auth, WiFi.SSID().c_str(), WiFi.psk().c_str());
  91.    
  92.     //注册Blinker APP命令的回调函数
  93.     Blinker.attachData(dataRead);
  94.     OneSwitch.attach(OneSwitchCK); //按钮1回调函数注册
  95.     TwoSwitch.attach(TwoSwitchCK); //按钮2回调函数注册
  96. }

  97. void loop()
  98. {
  99.     Blinker.run();
  100. }
复制代码





回复

使用道具 举报

1084504793 | 2023-12-21 08:18:49 | 显示全部楼层
学到了
回复

使用道具 举报

爱笑 | 2023-12-21 08:47:25 | 显示全部楼层
不建议用esp系列参加活动
用心做好保姆工作
回复 支持 反对

使用道具 举报

bzhou830 | 2023-12-21 08:50:33 | 显示全部楼层
esp
选择去发光,而不是被照亮
回复

使用道具 举报

qwe2079282957 | 2023-12-21 12:11:53 | 显示全部楼层
risc-v可不兼容esp32
回复 支持 反对

使用道具 举报

WT_0213 | 2023-12-21 15:57:24 | 显示全部楼层
不错
回复

使用道具 举报

san | 2023-12-21 21:37:15 | 显示全部楼层
不错
回复

使用道具 举报

1084504793 | 2023-12-22 09:33:21 | 显示全部楼层
打卡
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则