0
我正在使用LED RGB LightStrips進行PWM項目。我根據鏈路Arduino PWM到Android IOIO PWM
http://www.ladyada.net/products/rgbledstrip/
現在我想刪除的Arduino和應用的Android IOIO板內置的電路。我的Arduino代碼如下...
void setup() {
pinMode(REDPIN, OUTPUT);
pinMode(GREENPIN, OUTPUT);
pinMode(BLUEPIN, OUTPUT);
}
void loop() {
int r, g, b;
// fade from blue to violet
for (r = 0; r < 256; r++) {
analogWrite(REDPIN, r);
delay(FADESPEED);
}
// fade from violet to red
for (b = 255; b > 0; b--) {
analogWrite(BLUEPIN, b);
delay(FADESPEED);
}
// fade from red to yellow
for (g = 0; g < 256; g++) {
analogWrite(GREENPIN, g);
delay(FADESPEED);
}
// fade from yellow to green
for (r = 255; r > 0; r--) {
analogWrite(REDPIN, r);
delay(FADESPEED);
}
// fade from green to teal
for (b = 0; b < 256; b++) {
analogWrite(BLUEPIN, b);
delay(FADESPEED);
}
// fade from teal to blue
for (g = 255; g > 0; g--) {
analogWrite(GREENPIN, g);
delay(FADESPEED);
}
}
當我讀到analogWrite的Arduino的這是255的最大PWM現在,當我插上IOIO板我的代碼如下
public void setup() throws ConnectionLostException {
try {
blueOutput_ = ioio_.openPwmOutput(14, 490);
led_ = ioio_.openDigitalOutput(IOIO.LED_PIN, true);
enableUi(true);
} catch (ConnectionLostException e) {
enableUi(false);
throw e;
}
public void loop() throws ConnectionLostException {
try {
blueOutput_.setPulseWidth(seekBlue.getProgress());
led_.write(!toggle.isChecked());
sleep(10);
} catch (InterruptedException e) {
ioio_.disconnect();
} catch (ConnectionLostException e) {
enableUi(false);
throw e;
}
}
}
注意我的頻率在490赫茲時與Arduino和IOIO相匹配。 現在,當我在引腳14上輸出一個PWM模時,LED開始點亮,但在接近其最大亮度之前達到最大值。如果我將PWM增加到255以上,藍色(以及紅色和綠色)的強度不會增加。我有12V到RGB燈條與爲3個LED燈(約1.75" 用於測試目的)的長度
是否有一個原因,我不能得到從IOIO相同的響應爲Arduino的?謝謝。