【问题标题】:Arduino loop potentiometer light high and lowArduino回路电位器灯高低
【发布时间】:2014-07-02 13:05:43
【问题描述】:

我正在尝试构建一个我有一个电位器和 LED 的 ardunio 应用程序。我创建这样的组件:http://arduino.cc/en/uploads/Tutorial/graph-circuit3.png

当我向左(或向右)转动电位器时,让高低步进轻。我写了代码,但我无法成功。在循环中获取编译错误

代码:

int potPin = 2;  
     int ledPin = 8;   
int val = 0;       

 void setup() {       
   pinMode(ledPin, OUTPUT);  
  }    
   void loop(){
    while (Serial.available() == 0); 
       int val = Serial.read() - '0'; 

    if (potPin == 2) { 
       Serial.println("LED on");
          digitalWrite(potPin, HIGH);
      }
      else
        {
          Serial.println("LED OFF");
      digitalWrite(ledPin, LOW);                  
  }

【问题讨论】:

    标签: arduino led


    【解决方案1】:

    像这张foto potpin这样使用电位器的常规led高低是0。 您必须创建临时整数(我说的是 val)。 val 是存储数据来自电位器。并将 val 值写入屏幕。

     int potPin = 0;  
    int ledPin = 8;  
    int val = 0;       
    void setup()
     {  
      pinMode(ledPin, OUTPUT);  
     }
    void loop()
      {      
      val = analogRead(potPin);   
      digitalWrite(ledPin, HIGH); 
    
     delay(val);                    
         digitalWrite(ledPin, LOW);        
     delay(val);                  
       }
    

    【讨论】:

      【解决方案2】:

      您在设置中忘记了 potPin 的 Serial.begin 和 pinMode。

      Serial.begin(9600);
      pinMode(potPin, INPUT);
      

      此外,您正在尝试将 potPin 设置为 HIGH,而它应该是模拟输入。

      【讨论】:

      • 好点,但这不会给他带来编译错误。他还缺少一个末端花括号。
      猜你喜欢
      • 2012-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-15
      相关资源
      最近更新 更多