今から始める電子工作 ② まずはLチカ その1 準備

 電子工作に限らず、慣れないうちは、コンピュータがどのように動いているのかわかりません。そのようなとき、I/Oポートの電圧をLow/Highしてみて、どうなるかを見ます。

 I/Oポートとは、入力に使うスイッチや出力に使うモータなどをつなぐ端子です。Arduinoでは、ディジタルとアナログ端子群が用意されています。

 Low/Highとは、論理でいえば0/1です。電圧でいえば、電源電圧の半分以下ならLow、半分以上ならHighですが、ほとんどの場合、Low=0V、High=電源電圧(5Vもしくは3.3V)と解釈します。

 確認作業では、テスタを使って電圧を調べるのもよいのですが、手軽にできるのは、出力端子にLEDをつないで、点滅させる方法です。LEDをチカチカさせるので、略してLチカするといいます。

利用できるI/Oピン

 メーカの資料、

  https://docs.arduino.cc/resources/pinouts/ABX00087-full-pinout.pdf

に、端子の解説が掲載されています。ひとつの端子に、複数の機能が書かれてます。

 少し整理したのを掲載します。Arduinoで使われるのはオレンジ色のピンがデフォルトの機能です。

 図の右側にDigital、左下にAnalogピンが複数あります。この図では、端子はHigh=5Vです。元の図には、そのほかに利用できる端子が掲載されていますが、High=3.3Vが多いです。3.3V端子に5Vを印加させてはいけないと注意書きがあります。ICがダメージを受けるようです。

 D13と書かれた端子を見ます。そのDigitalピンには、右下にあるLED_BUILTENがつながっています。

 端子とピンは同じ意味で使っています。

 回路図を見ます。D13ピンはMOS FETにつながり、それは、抵抗とLEDを経由して+5Vにつながっています。

 MOS FETは、ゲートの電圧が2.xV以上(High)になるとONし、ドレインとソースが導通状態になります。つまり、スイッチがONになったのと同等です。したがって、LEDに電流が流れて点灯します。回路図には黄色と書かれていますが、どちらかといえばオレンジ色に近いです。

プログラム=スケッチ

 Lチカのプログラムは、サンプル例で用意されています。

  File -> Examples -> 01.Basics -> Blink

  Arduino IDEを始めて実行した場合、マイコン・ボードが選択できません。左のメニューから「ボード」のアイコンをクリックして、「Arduino UNO R4 Boards」を見つけ、INSTALLをクリックします。

 上部のメニュー「Select Board」をクリックし「Arduino UNO R4 WiFi COM5」を選択します。

 COM5は、利用しているPCによって数字が異なります。タスクバーにあるWindowsアイコンを右クリックして「デバイスマネージャー」を選択します。

 マイコン・ボードとPCをUSBケーブルで接続していると、COMポートが見えています。「USBシリアルデバイス」のドライバは、Arduino IDEをインストールしている最中に一緒にインストールされていました。

 スケッチを見ます。スケッチとは、普通の用語でプログラムとかコードと呼ばれますが、Arduinoの特別な呼び方です。

 /*と*/に挟まれた部分はコメントです。//から行末までもコメントです。

 上部のメニューの「右矢印」のアイコンをクリックすると、コンパイルしてマイコン・ボードの実行プログラムがアップロードされます。アップロードとは、USBケーブルを通じてマイコン・ボードのROMに実行プログラムが書き込まれる動作を指しています。

 アップロードが終わった後の画面です。

 マイコン・ボードの黄色のLEDが1秒ごとに点滅し始めました。アップロードされた直後にマイコン・ボードはリセットされ、実行プログラムが動き始めます。この一連の動作は、マイコン・ボードにあらかじめ書かれているプログラムFirmwareが担当しています。

 スケッチの中のdelay(1000)が点滅の周期を指定しています。ms単位ですから、たとえばdelay(100)と一桁小さい値に変更します。2か所あるのを両方変更し、コンパイル&アップロードのアイコンをクリックします。

 とても早く点滅していると思います。

I/Oピンがたくさんあるマイコン

 本来、マイコンには、アドレス・ピンとデータ・ピンが出ていて、メイン・メモリにつなげるように設計されています。

 Arduinoなどで使われるマイコンは、メモリは本体内部に内蔵されています。プログラムはEEPROMメモリに保存され、プログラムの実行時にはSRAMメモリが作業領域として使われます。どちらも、PCなどのCPUに比べれば容量はとても少ないです。

 小さいほうでいえば、512バイトの製品があります。PCのメイン・メモリが16Gバイトであるのに比べればとても小さいです。

 その代わりに、スイッチなどをつなげられるI/Oピンがたくさん用意されていて、制御用などに利用するのに向いています。

 では、PCのCPUにI/Oがないかといえば、例えばI2Cシリアル・バスは用意されています。この連載でも何度も使うことになります。PCではSMBUSという名称で呼ばれますが、ほぼ同じ規格です。DRAMのパラメタを読み出したり、PCIeバスの設定?などに使われます。

前へ

今から始める電子工作 ① はじまりは10年前

次へ

今から始める電子工作 ③ まずはLチカ その2 D13でない別のピンでLEDを点滅させたい