如何在for循环中打印出一组变量

时间:2013-08-28 17:33:39

标签: arduino

我正在编写一个记录和打印数字和模拟输入的程序。不幸的是,arduino的内存不足。为了使程序更小,我试图使用for循环打印输入。我一直在努力:

for(int analog = analog0; analog  <= analog9; analog ++){
  Serial.println(analog);
}

当我运行arduino时,它并不总是打印出所有输入,有时它打印出一个或一个或两个,最多约16个输入(我只有10个接线)。每次循环运行时,它都会输出不同的输入量。有什么建议吗?

2 个答案:

答案 0 :(得分:2)

我对arduino一无所知,但如果analog0是模拟值的读数,那么当然这段代码不会起作用。 analog的值将是随机ADC值!也许你需要做

for(int i = 0; i<= 9; i++){
   Serial.println(analogRead(i)); 
}

答案 1 :(得分:1)

首先,你的for循环编码错误。

另外,尝试在loop()之外存储模拟int:

  int analog[10];

  // etc.

  loop() {
       int x;

      analog[0] = analogRead(analogPin0);
      analog[1] = analogRead(analogPin1);
      // etc. do calcs
      // for a beginning programmer, this for loop is OK
      for (idx = 0; idx < 10; idx++) {
          serial.println(analog[idx]);
      }

}