やっと、本編に突入です。

 

1-1.ArduinoでLEDを光らせよう

 

ArduinoでLEDを光らせるためには、

出力をON/OFFする必要があります。

 

Arduinoでは、デジタルPIN (D0~D13)をON/OFF制御することによりLEDを光らせられます。

 

デジタルPIN (D0~D13)のうち、D13は基板上にあるLEDと接続されています。

 

簡単な動作を確認するには、D13を制御するのが手っ取り早いですね。

 

 

Arduinoのデジタルピンを扱うには、以下の2ステップ(+1ステップ)を実施することで

制御が出来ちゃいます。

 

① 対象PINの設定を出力に設定する

  以下のAPIで、PinModeを出力に設定します。

  pinMode(13, OUTPUT)

  

② 対象PINの端子をON/OFF制御する

  出力ON時   digitalWrite(13, HIGH)

  出力OFF時 digitalWrite(13, LOW)

 

+③時間制御する

   delay(500);   ←500msです。

 

※各APIは、後述するAPIリファレンスを参照してみてください。

 

◆ArduinoのAPIリファレンス

 以下、APIリファレンスを日本語で書いてくれています。

 ブクマお勧めしますよ!


 

これを元に、昨日書き込んだ点滅のプログラムを見てみましょう


 

-------------------------

// setup (起動時に一回だけ呼び出される。初期処理を記載するところ)
 void setup() {

// ①PinModeSetting //
  pinMode(LED_BUILTIN, OUTPUT);
}

// loop (起動後ぐるぐる呼び出される)
void loop() {

  // ②出力設定 LEDをON //
  digitalWrite(LED_BUILTIN, HIGH); // led on 

  // ③500ms待つ //
  delay(500);
  // ②出力設定 LEDをOFF //
  digitalWrite(LED_BUILTIN, LOW);    // led off 
  // ③500ms待つ //
  delay(500);
}

-------------------------

 

これで、

起動時にPin13を出力に設定し、

その後ぐるぐる呼び出される処理で、500msON、500msOFFのチカチカを実装しています。

 

 

マイコンを制御したことがある方は判ると思いますが、

H8やPICのように、マイコンに依存する対象のPINのアドレスを意識する必要はありませんし

いきなり構造体を理解する必要もありません。

 

楽ですね。

 

 

 

 

 

宇宙人しっぽ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人からだ宇宙人あたま
雑談


マイコンでLEDを光らせるには、

特定の端子をON/OFF制御することになります。

 

Arduino UNOだとジャンパーピンをつけやすいようになっています。

 

Arduino Nanoだと、そもそもブレッドボードに直接させますね。

 

 

ブレッドボードに刺し込むだけなら、PICでも刺すことができるのですが、

PICの場合、プログラムの書き込みに専用ライターが必要ですので、

結局指し変えが必要でした。

ArduinoはUSBのみでプログラムかけるので、差し替え不要ですね。

 

また、回路を作成する際には、PINの情報をマニュアルを出して

PINの役割を調べた上で、2列のPINを数えるという手間が必要でした。

 

Arduinoは、Pinの根元にはデジタルPINかアナログPINかの情報が記載されていて、

さらに順番に並んでいるので、
マイコンを学習するには、やりやすい環境かなと思います。

 


また、PINの設定もとても楽ですね。

 

H8シリーズでは、マイコンPINをI/O制御するだけで、

PDR(DDR)の設定、PCRの設定、

 

それも、レジスタを制御しなければなりませんので、

アセンブリでアドレス割り当てするか、pragmaで割り当てる

 

Cプログラム初心者にはとてもハードルが高かったと思います。

 

 

学生時代、SAIは後輩が使いやすいように関数群をまとめようとしていました。

ビルドも、基本的な動作ならバッチファイルで済ませられるようにしていましたが、

Arduinoは開発環境までセットで行われているのがすごいですね。

 

 

開発者には脱帽です。

やしの木やしの木やしの木やしの木やしの木やしの木やしの木やしの木やしの木やしの木やしの木やしの木やしの木やしの木やしの木やしの木やしの木やしの木

 

今日はここまで。

SAIでした。

 

 

 

 

フォローしてね…

 

 

 

0-3.Arduinoへ書き込み

 

0-3-1.Arduinoへの書き込み

 

ArduinoをUSBで接続して、

いざマイコンボードへの書き込みをします。

 

書き込みは、「スケッチ」の「マイコンボードに書き込む」で行えます。

 

 

ところが、初めてArduinoへ書き込みをしようとすると、

おそらく以下のように通信エラーが発生します。

 

 

 

原因は、通信の設定が出来ていないから。

 

当然といえば当然なのですが、

通信を使って書き込みをするのだから、

 

事前に通信の設定が必要です。

 

これに悩まされる人が多いので、

印象に残すためにわざと失敗してもらいました。

 

 

0-3-2.Arduinoのドライバーを入れよう

 

どうも、Arduino UNO にしろ、 Arduino Nanoにしろ、

USBを接続しただけでは、自動認識してくれないようです。

 

Windows10では、手動で自動検索をかければ更新できるのですが、

特に、Windows7では、Arduino Nano のドライバは

完全に手動でとってこないといけないようです。

 

◆Arduino UNOの場合

ドライバーを認識させるには、

コントロールパネルからデバイスマネージャを開きます。

すると、 USB Serial に!がついていますね。

 

  

 

これが有効になっていないと、COMポートとして開けません。

右クリックして、ドライバーソフトウェアの更新をかけます。

 


Arduino UNOの場合は、最新版を自動検索でいけます。

 

うまく認識できたら、COMポートとして認識されます。

 この番号を覚えておきましょう。

 

◆Arduino Nanoの場合

 

困ったことにArduinoNanoは自動認識してくれませんでした。

Arduino nano の場合は、以下のように、

手動でドライバーを入れないとだめのようです。

 

 

インストールできたら、

ArduinoUNOのとき同様に、デバイスマネージャから、COMポートを確認します。

  

 

0-3-3.Arduinoとの通信の設定をしよう

 

通信の設定は2つ必要です。

①マイコンボードの設定

 「ツール」の「ボード」から、接続している対象のボードを選びます。

  今回接続したのはArduino UNOなのでそれを選びます。

 

②通信ポートの設定

 「ツール」の「シリアルポート」から、0-3-2で接続したCOMポート番号を選びます。

  今回接続したのはCOM12なので、それを選びました。

 おそらく、複数台接続している場合を想定しているのではないかと思います。

 

 

◆Arduino Nanoの場合

ArduinoNanoのせいか、サードパーティ製のせいなのかわかりませんが、

ArduinoNanoのときはプロセッサの設定も必要でした。

 

 

 

 余談ですが、正しく接続できていたら、「ツール」の「ボード情報を取得」で

 ボードの情報が取得できます。

 


 

これで、今度こそ書き込みできる状態になっています。

 

 

0-3-4.Arduinoへの書き込み

 

今度こそマイコンボードへの書き込みをします。

 

書き込みは、「スケッチ」の「マイコンボードに書き込む」で行えます。

 

 

 

ArduinoUNOもNanoも、Port13だけ、LEDを実装してくれているのですよね。

 

なので、成功したら、

Arduino上のLEDが1秒ごとに点滅します。

 

 

ここまできたら、

プログラミングに移れますね。

 

 

事前準備は、一旦ここまでの予定です。

補足があったら追加しようと思います。

 

 

0-2.Arduino開発環境をインストール

 

0-2-1.インストール

Arduinoの開発環境Installですが、

・いろんなページに書いていること

・今の時点のバージョンで特に迷う要素がないこと

・最新のバージョンで画面がよく変わること

 

より省略します。

 

※悩むようなことがあれば記載しようと思います。

 とりあえず、この章は今後のリザーブ章。

 

0-2-2.開発環境を起動

インストールが完了すると、開発環境を起動します。

 

ちょっと時間はかかりますが、

正常に立ち上がるとこんな感じです。

 


 

0-2-3.ソース(スケッチ)を書いてみる。

 

上部のタブ、「ファイル」から「新規ファイル」を選択すると、

新規スケッチ(ソースを書くところ)が生成されます。

 ※arduinoではスケッチって言うんだって。

お試しコードとして以下サンプルコードを書き込めばビルドできる状態になります。

 

-------------------------

// setup (起動時に一回だけ呼び出される。初期処理を記載するところ)
 void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

// loop (起動後ぐるぐる呼び出される)
void loop() {
  digitalWrite(LED_BUILTIN, HIGH); // led on 
  delay(500);
  digitalWrite(LED_BUILTIN, LOW);    // led off 
  delay(500);
}

-------------------------

 

0-2-4.ビルドしてみる。

 

ビルドは、「スケッチ」の「検証・コンパイル」で行えます。

 

 

正常に成功したら、マイコンに書き込めます。

失敗したら、エラーを取りましょう。

 

 

 

とりあえず、本日はここまで。

 

次回、マイコンに書き込みです。

書き込みで躓くことが多いので、1つの章にします。