Mira&Luna's nursery lab

旅乙女と発明娘の子供部屋

Arduino技術🦄 ArduinoISPには確認ランプ機能があった😲 書き込みシールドを作るなら、LEDも実装しましょ🍓

Mira

🍵Arduino便利小話🍵
書込み装置ArduinoISPの状態をLEDで知る。

電子工作の主人公と言っても過言ではくらい電子工作には欠かせないマイクロコントローラ(マイクロコンピュータマイコン)。LEDを点灯させたり、ブザーを鳴らしたり、モーターを動かしたり、いろんなパーツを制御するちっちゃなコンピュータ。そのマイコンを動かすためには、どんなふうにパーツを制御するのかを書いたプログラムをマイコンの中に書き込まなくちゃいけないよね。そこでパソコンとマイコンをつないでプログラムの書き込みをするための「書込み装置」が必要になります。

🍡 マイクロコンピュータマイコン)たち

書込み装置といっても、特別すごい装置を用意するわけではなくて、Arduinoを書込み装置に変身させます。

Arduinoには「ArduinoISP」というスケッチ(Arduinoのプログラム)が"スケッチ例"としてすでに用意されていて、そのスケッチをArduinoに書き込めば、Arduinoが"マイコンにプログラムを書き込むための書込み装置"になります。書込み装置の名前は「ArduinoISP」です。

このArduinoISPを使って、今までにもいくつかのマイコンにプログラムを書き込んできました。
🍅プログラムの書き込み方法は、↓ こちら🍅
miraluna.hatenablog.com
miraluna.hatenablog.com
miraluna.hatenablog.com


この記事では、「ArduinoISP」の知られざる(!?)便利な使い方を紹介します。
以前に書いた記事「AT90S2313(虹子🌈)」を使おうとして失敗したときのエラーをまとめました🍭のコメント欄で「Far side of the moon」さんに教えてもらったものです。
ありがとうございます。

Arduinoのスケッチ例にある「ArduinoISP」のスケッチを見てみると、冒頭部分にはArduinoISPの説明がコメントとして書かれています。その中の33行目から36行目には次のように書かれています。

33 // Put an LED (with resistor) on the following pins:
34 // 9: Heartbeat - shows the programmer is running
35 // 8: Error - Lights up if something goes wrong (use red if that makes sense)
36 // 7: Programming - In communication with the slave

意味は

33 //次のピンにLED(抵抗付き)を配置します。
34 // 9:ハートビート-プログラマーが実行中であることを示します
35 // 8:エラー-問題が発生した場合に点灯します(意味がある場合は赤を使用してください)
36 // 7:プログラミング-スレーブと通信中

書込み装置になったArduinoの9,8,7のピンに(300Ωくらいの抵抗器を直列につないで)LEDをつなぐと、それぞれが確認ランプの役割になって、ArduinoISPの状態が分かるようになります。便利ですね。

🍰 LEDをつないだところ

7ピンの「プログラミング」というのは「書き込み中」という意味で、スレーブというのはここでは書き込み先のマイコンのことね。
じわ~っと明るくなったり暗くなったりする「ハートビート」でLEDを光らせたいときなんかは、プログラムを書かなくてもArduinoISPのプログラムですぐにできちゃいます💗💛💗💛

🔥 エラーが出ると、オレンジLEDが光る。 💻 書き込み中は緑のLEDが光る。

💻 マイコンにスケッチ書き込み中

実際どんなふうにLEDが光るのか、短い動画にしたのでぜひ見ていってくださいませ。
🍅ArduinoISPにLEDをつないだ動画🍅

www.youtube.com

ArduinoISPからマイコンにプログラムを書き込むためには配線が必要なんだけど、配線の手間を省くためにシールド(あらかじめ配線をした基板)を作る人も多いと思う。せっかくシールドを作るなら、LEDも配置しておくと便利ね。私も今度LED付きの新しいシールド作ろう🍓


ミラでした。
Mira


<電子工作・Arduino界隈>
🚗 電子工作スターターキット 🔥 はんだごて(温度調整) 📚 まんが『ハルロック』