| 1 | = Arduino Leonardoで遊んでみる = |
| 2 | Arduino Leonardoをついに入荷したので、張り切って遊んでみました![[BR]] |
| 3 | 今までのArduinoとの最大の違いは、USB通信の部分です。これまでのArduinoボードでは、USB接続を制御する用と、Arduinoを動かす用に別々のマイコンを搭載していました。Leonardoでは一つのマイコンでUSB通信の制御も、Arduino本体の動作の制御も行っています。 |
| 4 | |
| 5 | というわけで、マウスポインタをぐるぐるまわすスケッチで遊んでみました。 |
| 6 | |
| 7 | === 準備する物 === |
| 8 | 1.Arduino Leonardoのボード[[BR]] |
| 9 | 2.Arduino IDE 1.0.1をインストールしたパソコン[[BR]] |
| 10 | 3.マイクロUSBのB端子を持つケーブル[[BR]] |
| 11 | |
| 12 | 以下のスケッチをコピペして、今までのArduinoと同じようにアップロードして下さい。 |
| 13 | |
| 14 | {{ |
| 15 | #!C |
| 16 | int phase =0; |
| 17 | int full =100; |
| 18 | int radius =100; |
| 19 | int delay_msec =2; |
| 20 | |
| 21 | int x = radius; |
| 22 | int y =0; |
| 23 | |
| 24 | void setup() { |
| 25 | } |
| 26 | |
| 27 | void loop() { |
| 28 | ++phase; |
| 29 | phase %= full; |
| 30 | |
| 31 | double th =3.141592*2* phase / full; |
| 32 | int xx = radius * cos(th); |
| 33 | int yy = radius * sin(th); |
| 34 | Mouse.move(xx - x, yy - y, 0); |
| 35 | x = xx; |
| 36 | y = yy; |
| 37 | delay(delay_msec); } |
| 38 | }} |
| 39 | |
| 40 | アップロードが終わったら、マウスポインタが勝手にぐるぐる回り始めます。 |
| 41 | |
| 42 | == 違うスケッチを書き込むには == |
| 43 | 上のスケッチを書き込んだArduino Leonardoをパソコンに接続すると、マウスポインタがぐるぐるぐるぐる回り続けるので、別のスケッチを書き込むことのが大変なんじゃないか!?というか、できないのではないか!という不安にとらわれると思いますが、もちろん大丈夫です!!![[BR]] |
| 44 | そのためにあるリセットボタン![[BR]] |
| 45 | Arduino Leonardoのボードの左上にあるリセットボタンを押し、押し続けた状態で別のスケッチを書いたIDEの「マイコンボードに書き込む」ボタンをクリックします。Arduino IDEのステータスバーに「マイコンボードに書き込んでいます…」と表示された後にリセットボタンから指を離して下さい。これで、新しい別のスケッチの書き込みは完了です。 |