光敏电阻控制灯开,手机按键控制灯开怎么让两者不干扰-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2562|回复: 1

[过期] 光敏电阻控制灯开,手机按键控制灯开怎么让两者不干扰

[复制链接]
发表于 2021-4-21 21:10 | 显示全部楼层 |阅读模式
光敏电阻数值低灯开,手机按键控制灯开,怎么让两者互不干扰




#define BLINKER_WIFI
#include <Blinker.h>




char auth[] = "xxxxxx";
char ssid[] = "xxxxx";
char pswd[] = "xxxxxx";


BlinkerButton Button1("btn-abc");//按键灯
BlinkerNumber LIGHT("light");


#define Aout A0
uint32_t read_time = 0;
float light_read;
float temp;          //临时变量,存储A0读取的数据


void dataRead(const String & data)
{
    BLINKER_LOG("Blinker readString: ", data);


    Blinker.vibrate();
   
    uint32_t BlinkerTime = millis();
   
    Blinker.print("millis", BlinkerTime);
}


void heartbeat()
{
    LIGHT.print(light_read);
}


// 按下按键即会执行该函数
void button1_callback(const String & state) {
    BLINKER_LOG("get button state: ", state);
    digitalWrite(16, !digitalRead(16));
    Blinker.vibrate();
}


void setup()
{
      Serial.begin(115200);
      BLINKER_DEBUG.stream(Serial);
      pinMode(Aout, INPUT);//定义A0为INPUT模式
      pinMode(LED_BUILTIN, OUTPUT);
      digitalWrite(LED_BUILTIN, LOW);


       // 初始化按键控制的LED的IO
    pinMode(16, OUTPUT);
    digitalWrite(16, LOW);


    Blinker.begin(auth, ssid, pswd);
    Blinker.attachData(dataRead);
    Blinker.attachHeartbeat(heartbeat);
    Button1.attach(button1_callback);
}
    void loop()
{
    Blinker.run();
    int l=analogRead(A0);   //光敏的AO口
     if (read_time == 0 || (millis() - read_time) >= 2000)
    {
        read_time = millis();


        
   //灯


    if(l<50){
          digitalWrite(16,HIGH);         
          }else{
          digitalWrite(16,LOW);
          }
   
    }
    light_read = l;
    BLINKER_LOG("L: ",l);
   
    Blinker.delay(2000);


}


发表于 2021-7-7 09:29 | 显示全部楼层
我感觉可以通过建立中间变量可以解决
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 10:36 , Processed in 0.098570 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表