2011年11月17日 星期四

analogWrite()

因為調整晚上班表,所以昨天只有一項作業,做完之後,看英文之前,踹一下Manning書上這個表的東西。
Table: Arduino analog resolution and pins (from Arduino in Action)
Analog Input Analog Output
Resolution 10 bits (0~1023) 8 bits (0~254)
Votage Range 0~5 (Volts) 0~5 (Volts)
Arduino Pins A0~A5 Digit Pins 3, 5, 6, 9. 10, 11
Arduino Mega Pins A0~A15 Digit Pins 0~13
在做之前的作業中,由Language Documents知道digitWrite(pin, value)第二個參數是HIGH/LOW;analogWrite(pin, value)。然後很無聊的做兩個練習,分別針對digit pin 13/11使用analogWrite()
/**
 * Analog out on Digit Pin 13 test
 */
const int ledPin = 13;

void setup() {
  pinMode( ledPin, OUTPUT );
}

void loop() {
  for( int i=0; i<10; i++ ) {
    analogWrite( ledPin, 54+(i*20) );
    delay( 1000 );
  }
}
可以看到pin 13沒有亮度的差別。接著把線路改成接到digit pin 11和程式ledPin改成11,燒進去之後跑一下看看,就可以看到LED的亮度會變化。

沒有留言:

張貼留言