Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
串行监视器返回无法理解的字符arduino_Arduino - Fatal编程技术网

串行监视器返回无法理解的字符arduino

串行监视器返回无法理解的字符arduino,arduino,Arduino,我在我的草图上添加了LED指示灯,用于读取温度传感器值,现在我的串行监视器返回垃圾y字符。我有一个初始化和控制LED的阵列。问题可能出在初始化和关闭LED的循环上?谢谢 const int temperaturePin = 0; int leds[] = {13, 12, 11}; void setup(){ Serial.begin(9600); for (int i = 0; i < 3; i--) { pinMode(leds[i], OUTPUT

我在我的草图上添加了LED指示灯,用于读取温度传感器值,现在我的串行监视器返回垃圾y字符。我有一个初始化和控制LED的阵列。问题可能出在初始化和关闭LED的循环上?谢谢

const int temperaturePin = 0;

int leds[] = {13, 12, 11};

void setup(){
    Serial.begin(9600);
    for (int i = 0; i < 3; i--) {
        pinMode(leds[i], OUTPUT);
    }
}

void loop(){
  // Multiple declarations on one line
    float voltage, degreesC, degreesF;

  // Measure true voltage with custom function
    voltage = getVoltage(temperaturePin);

  // Convert voltage to degrees Celsius
  // This line compensates for an offset of .5
  // in the TMP36 temperature sensor
    degreesC = (voltage - 0.5) * 100.0;

  // Convert Celsius to Fahrenheit
    degreesF = degreesC * (9.0/5.0) + 32.0;
    Serial.print("Voltage: ");
    Serial.print(voltage);
    Serial.print(" Deg C: ");
    Serial.print(degreesC);
    Serial.print(" Deg F: ");
    Serial.println(degreesF);
    if ((degreesF >= 75) && (degreesF <= 76)) {
        digitalWrite(leds[0], HIGH);
    }
    else if ((degreesF >= 77) && (degreesF <= 78)) {
        digitalWrite(leds[1], HIGH);
    }
    else if ((degreesF >= 79) && (degreesF <= 80)) {
        digitalWrite(leds[2], HIGH);
    }

    for (int i = 0; i < 3; i++) {
        digitalWrite(leds[i], LOW);
    }

    delay(1000);
}

float getVoltage(int pin){
    return (analogRead(pin) * 0.004882814);
}

您可能没有以正确的格式打印:在设置中的for循环中,您应该递增i,而不是递减i。谢谢!我改变了for循环的工作方式,所以我在修复它时一定错过了。