我是Arduino的新手,我正在尝试使用Processing来控制依赖于Firmata库的Arduino Uno板。然而,在快速测试之后,当使用A0到A5的模拟引脚时,我似乎无法点亮我的LED,而它对数字引脚0 - 13没有任何问题。使用Arduino直接工作没有任何问题所有19引脚。
void setup() {
arduino = new Arduino(this, "/dev/tty.usbmodem1411" );
for( int i = 0; i < 20; i++ ) // in Arduino A0 is pin 14, but to be sure I also tried in processing pin 16, just in case if A0 is 0xA0
arduino.pinMode( i, Arduino.OUTPUT );
}
void draw() {
for( int i = 0; i < 20; i++ ) { // quick and dirty mode to test all LEDs
arduino.digitalWrite( i, Arduino.HIGH );
arduino.analogWrite( i, 255 );
}
}
目前我正在使用SainSmart UNO板,以及我使用处理的原因,因为我需要访问更高级别的库,这些库目前仅在处理时可用。
是否有人知道如何编码以便我可以使用Processing来访问Arduino板上的模拟引脚?
答案 0 :(得分:1)
在Arduino中的Firmata草图中将模拟输入转换为INPUTS可能是个好主意。
void setup()
{
pinMode(A0, OUTPUT); // <- like this...
Firmata.setFirmwareVersion(0, 1); //... and then go on with standard firmata
Firmata.begin();
}