首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法将LED设置为“低”

无法将LED设置为“低”
EN

Stack Overflow用户
提问于 2016-04-01 21:51:16
回答 1查看 19关注 0票数 0

如果LDRValue低于500时,我无法将随机发光二极管设置为“低”。代码不读取case中的if语句。它将一个LED设置为“高”,并读取光传感器的值,如果该值低于500,则LED必须变为“低”,然后另一个LED必须一遍又一遍地变为“高”。

代码语言:javascript
复制
int randNumber;
int LDR1 = A1;
int LDR2 = A2;
int LDR3 = A3;
int LDR4 = A4;
int LDR5 = A5;
int LS = 500;
int LDRValue = 0;

void setup() {
  Serial.begin(9600);
  randNumber = random(1, 6);
}

void loop() {  
switch (randNumber) {
case 1:
    digitalWrite(2, HIGH);
    LDRValue = analogRead(LDR1);
    Serial.println(LDRValue);
    if (LDRValue < LS) {
      digitalWrite(2, LOW);
    }
    break;
case 2:
    digitalWrite(3, HIGH);
    LDRValue = analogRead(LDR2);
    Serial.println(LDRValue);
    if (LDRValue < LS) {
      digitalWrite(3, LOW);
    }
    break;
case 3:
    digitalWrite(4, HIGH);
    LDRValue = analogRead(LDR3);
    Serial.println(LDRValue);
    if (LDRValue < LS) {
      digitalWrite(4, LOW);
    }
    break;
case 4:
    digitalWrite(5, HIGH);
    LDRValue = analogRead(LDR4);
    Serial.println(LDRValue);
    if (LDRValue < LS) {
      digitalWrite(5, LOW);
    }
    break;
case 5:
    digitalWrite(6, HIGH);
    LDRValue = analogRead(LDR5);
    Serial.println(LDRValue);
    if (LDRValue < LS) {
      digitalWrite(6, LOW);
    }
    break;
}
}
EN

回答 1

Stack Overflow用户

发布于 2016-04-01 22:05:20

重写case语句,如下所示:

代码语言:javascript
复制
case 5:    
    LDRValue = analogRead(LDR5);
    Serial.println(LDRValue);
    if (LDRValue < LS) 
    {
        digitalWrite(6, LOW);
    }
    else
    {
        digitalWrite(6, HIGH);
    }
    break;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36358117

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档