#define BLINKER_WIFI

#include

char auth[] = "key";

// 编写:1812z

char ssid[] = "wifi";

char pswd[] = "wifi密码";

#define BUTTON_1 "ButtonKey"

BlinkerButton Button1("BUTTON_1");

BlinkerText TEXT1("tex-s");

BlinkerText TEXT2("power");

BlinkerText TEXT3("powerj");

void button1_callback(const String & state)

{

digitalWrite(0, !digitalRead(0));

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

if (state == BLINKER_CMD_BUTTON_TAP) {

BLINKER_LOG("Button tap!");

Button1.icon("icon_1");

Button1.color("#00FF00");

Button1.text("短按");

Button1.print();

Blinker.delay(500);

digitalWrite(0, !digitalRead(0));

}

else if (state == BLINKER_CMD_BUTTON_PRESSED) {

BLINKER_LOG("Button pressed!");

Button1.icon("icon_1");

Button1.color("#FF0000");

Button1.text("长按中");

Button1.print();

}

else if (state == BLINKER_CMD_BUTTON_RELEASED) {

BLINKER_LOG("Button released!");

Button1.icon("icon_1");

Button1.color("#FF0000");

Button1.text("成功长按");

// Button1.text("Your button name", "describe");

Button1.print();

}

else if (state == BLINKER_CMD_ON) {

BLINKER_LOG("Toggle on!");

Button1.icon("icon_1");

Button1.color("#FF0000");

Button1.text("继电器闭合");

// Button1.text("Your button name", "describe");

Button1.print("on");

}

else if (state == BLINKER_CMD_OFF) {

BLINKER_LOG("Toggle off!");

Button1.icon("icon_1");

Button1.color("#FF0000");

Button1.text("继电器断开");

// Button1.text("Your button name", "describe");

Button1.print("off");

}

else {

BLINKER_LOG("Get user setting: ", state);

Button1.icon("icon_1");

Button1.color("#FFFFFF");

Button1.text("?");

// Button1.text("Your button name", "describe");

Button1.print();

}

}

void dataRead(const String & data)

{

BLINKER_LOG("Blinker readString: ", data);

Blinker.vibrate();

uint32_t BlinkerTime = millis();

Blinker.print("millis", BlinkerTime);

}

String rts()//计算运行时间

{

int rt =Blinker.runTime();

int r,e,f,s;

String fh;

Blinker.delay(100);

if(rt >= 86400)//天数

{r = rt / 86400;

e = rt / 3600 - r*24;

f = rt / 60 - r*1440 - e*60;

s = rt - r*86400 - e*3600 - f*60;}

else if(rt >= 3600)

{r = 0;

e = rt / 3600;

f = rt / 60 - e*60;

s = rt - e*3600 - f*60;}

else

{r = 0;

e = 0;

f = rt / 60;

s = rt - f*60;}

//BLINKER_LOG(r," ",e," ",f," ",s);//输出数据测试

if(f==0 & e==0 & r==0)

{fh = String("")+ s +"秒";}

else if(r == 0 & e == 0 )

{fh = String("")+ f + "分" + s +"秒";}

else if(r == 0)

{fh = String("")+ e + "时" + f + "分" + s +"秒"; }

else

{fh = String("")+ r + "天" + e + "时" + f + "分" + s +"秒";}

return(fh);

}

void heartbeat()//心跳

{

TEXT1.print(rts());

}

void setup()

{

Serial.begin(115200);

BLINKER_DEBUG.stream(Serial);

pinMode(0, OUTPUT);

digitalWrite(0, HIGH);

pinMode(2, INPUT_PULLUP);

Blinker.begin(auth, ssid, pswd);

Blinker.attachData(dataRead);

Button1.attach(button1_callback);

Blinker.attachHeartbeat(heartbeat);//附加心跳

}

void loop()

{

int sensorVal = digitalRead(2);

Serial.println(sensorVal);

if (sensorVal == LOW) {

TEXT2.print("电源接通");

} else {

TEXT2.print("电源断开");

}

int sensorVal2 = digitalRead(0);

Serial.println(sensorVal2);

Blinker.delay(1000);

if (sensorVal2 == HIGH) {

TEXT3.print("断开");

} else {

TEXT3.print("闭合");

}

Blinker.run();

}

linux下远程控制继电器,更智能的电脑远程开关机-基于继电器相关推荐

  1. 计算机控制系统开关,电脑远程开关机控制器

    原标题:电脑远程开关机控制器 SPD-M05电脑远程开机/关机/复位远程控制器 斯必得SPD-M05电脑远程开机/关机/复位控制器是专为各种服务器及无人值守机房电脑远程遥控开机/关机/复位所开发.该控 ...

  2. 如何实现电脑远程开关机?

    要实现电脑远程开关机,您可以使用远程桌面软件或命令行工具.如果您使用的是 Windows 操作系统,您可以使用 Windows 远程桌面协议 (RDP) 或使用命令行工具 "shutdown ...

  3. 利用 HomeAssistant 实现电脑远程开关机

    利用 HomeAssistant 实现电脑远程开关机 配置 Airytec Switch Off 下载并安装 Airytec Switch Off,如果下载的是便携版,解压即可 配置 Airytec ...

  4. 易微联通断器实现电脑远程开关机

    功能描述 这个方案比较简单,买一个易微联通断器,按教程接线就可以了.既然用的是易微联通断器,就需要下载易微联的app,接入小爱同学需要在米家里绑定易微联的账号. 1.支持易微联的手机app远程开关机, ...

  5. 利用esp01s模块和光耦817实现天猫精灵、小爱同学实现电脑远程开关机

    利用esp01s模块和光耦817实现天猫精灵.小爱同学实现电脑远程开关机(由于电脑电源开机线是5V,需要另外加两个5V转3.3V模块对esp01s提供电源和反馈开关机状态). /** 利用esp01s ...

  6. 通过手机、电脑远程开关机,Windows和linux机手机,电脑相互控制

    由于工作需要,需要经常在家远程公司电脑,处理一些工作,如果电脑一直开机也浪费电,所以想到通过电脑,或自己的手机远程控制公司控制台电脑,方便工作,所以在网上收集了下资料,现整理如下. 首先看看远程唤醒技 ...

  7. 电脑远程开关机=中控客户端设置说明

    目录 一.目的: 1.一些电脑需要远程将其开关机 一.步骤: 1.开机配置:在BIOS设置网络唤醒(开机时按F1/F2/Delete进入BIOS) ①设置网络唤醒 2.在操作系统下,更改网卡驱动的设置 ...

  8. 英特尔linux手机,英特尔发布国内首款基于Linux系统深度定制的智能教育电脑

    IT之家 4 月 23 日消息 根据英特尔官方的消息,日前,英特尔与来自腾讯教育.惠普.麒麟的代表们,联合发布了国内首款基于 Linux 系统深度定制的智能教育电脑. IT之家了解到,为了填充搭载国产 ...

  9. teamviewer linux远程开机,一分钟就能学会用手机远程控制你的电脑,远程开关机就是这么简单...

    一.向日葵远程控制 向日葵远程控制软件手机端这个是配合向日葵远程控制被控端也就是电脑端来使用的,连接之后便可以用手机来操控你的电脑.不同触碰或者点击有着不同的功能,使用前会有教程的. 向日葵远程控制软 ...

最新文章

  1. 肯尼亚政府部署RFID系统进行车辆识别登记
  2. 使用ListView应该注意的地方 很全
  3. 数据科学中一些不常用但很有用的Python库
  4. 怎么在alert里加图片_往暖气里加防冻液,女子被烧伤
  5. c c++ 函数内数组初值_C/C++函数指针与指针函数
  6. linux明日命令(6):rm命令
  7. 自学Python六 爬虫基础必不可少的正则
  8. nn.LayerNorm的参数
  9. 水晶报表中对某一栏位值进行处理_合并报表——非同一控制下的企业合并amp;同一控制下的企业合并...
  10. Spring Boot————简介与Spring时代的承接
  11. 上学是穷人的出路吗?
  12. pycharm 怎么快速生成文件夹结构_为什么Python代码能运行但是PyCharm给我画红线?...
  13. centos 下 sphinx安装和配置
  14. [原创]FOCUS处理系统流程之:大文本文件极速合并(sps文件合并)
  15. 布局的几种方式(静态布局、自适应布局、流式布局、响应式布局、弹性布局)...
  16. WEBPACK+ES6+REACT入门(4/7)-评论列表DEMO以及CSS样式
  17. 一文了解基金投资的方法
  18. 嵌入式开发QT教程-5集 纯代码编写UI界面
  19. 百度地图API,授权失败,错误码:240
  20. 九龙证券“风光储锂芯”集体回暖 创业板指探低回升

热门文章

  1. 下面方框中,那些包括有220欧姆的电阻呢?
  2. 训练图像预处理函数功能(paddle)
  3. 允许自行设计赛道之后,参赛同学都想到了什么呢?
  4. 有互感的电感的串并联
  5. 小程序读取富文本mysql存储_微信小程序API 富文本·EditorContext实例
  6. wxpython输入框_基于wxPython的GUI实现输入对话框(1)
  7. redis 支持 json_项目开发中如何使用redis-dump进行Redis数据库合并?
  8. python调用c#注意事项_python 调用c# 超级直接示例
  9. 用dblink能修改_【学习笔记】通过修改基表(link$)让非public dblink变为public
  10. 现代计算机入门知识,计算机基础知识