Arduino Leonardoのテスト
以前に衝動買いをしていたArduino Leonardo、そのまま放置していてももったいないので、とりあえずテストをしてみた。
Arduino Leonardoには、ピンヘッダーが実装されているものと実装されてないものがあるようですが、私の購入したものはピンヘッダー実装済みの物です。
外観はICチィップが少なくなっているのですっきりした感じです。
Arduino Unoとの違い
基本的には従来のボードと同じように使えると思いますが、いろいろ違いがあるようです。
・パソコンに接続するには、マイクロUSBのB端子を持つ「micro-B」USBケーブルが必要です。
・Leonardo用のドライバをインストールする必要があります。
・Arduino IDEは、Arduino1.0.1で日本語化されている。
・1個のマイコンでスケッチの実行とUSB通信の両方を実行している。
・デジタルI/Oの数が6ピン増えた。(アナログポートをデジタルポートとして利用)
・PWM端子が1個増えた。(DIGTAL13)
・アナログ入力端子が6個増えた。(A6~A11、デジタルポート4,6,8,9,10,12を利用)
とりあえずテストのため増設されたPWM端子を使用してLEDの明るさを変化させてみます。
13ピンの出力を0から255の範囲で5単位で連続変化させます。
配線
Arduinoに準備されているサンプルスケッチのFadingを開きLEDのピン番号を13に変更しました。
スケッチ
int ledPin = 13; // LED connected to digital pin 9
void setup() {
// nothing happens in setup
}
void loop() {
// fade in from min to max in increments of 5 points:
for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
// sets the value (range from 0 to 255):
analogWrite(ledPin, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(30);
}
// fade out from max to min in increments of 5 points:
for(int fadeValue = 255 ; fadeValue >= 0; fadeValue -=5) {
// sets the value (range from 0 to 255):
analogWrite(ledPin, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(30);
}
}
これにより出力のパルス幅が変わりLED明るさが変化します。
PWM(Pulse Width Modulation)
一定の周波数でパルスのオンとオフの時間を変えて供給する電力を調整する。
パルスがすべてオンの時出力100%、オンとオフの時間がそれぞれ1/2の時出力50%、パルスがすべてオフの時0%となる。
(この比率をデューティ比と呼び、Arduinoでは0~255の値でこのデュティ比を調整している)
13ピンの出力波形
duty 50%(128/255)
duty 20%(51/255)
duty 80%(204/255)
参考にしたページ
Arduino Leonardoへのガイド
待ちに待ったArduino Leonardoがやってきました(1)