【電子工作】Arduino Uno Rev.3を買ったのでLチカしてみる(Arduino UNO R3で遊ぼう日記 その1)

投稿日:2022年5月21日
最終更新日:2022年6月4日

Arduino Uno Rev.3を買ったのでLチカ(LED点滅)させてみる

まだまだRaspberry Pi 4 Model Bの日記も書いているところだが、GW中にArduinoも触ってみたいと思っていた。ということで、Arduinoにも色々種類があるが、今回はエントリーモデルとしてよく使われているArduino Uno Rev.3を購入した。

こちらが現物の写真。エメラルド色のレジストが美しい。

今回はまずArduino IDEをインストールして、Lチカ(LED点滅)のプログラムを実行してみたいと思う。

 

開発環境

Arduino Uno R3

Windows 10(開発用PC)

Arduino IDE 1.8.19

 

Arduino IDEをインストールする

Arduinoの開発環境としてはPCにインストールして使うIDEと、ブラウザ上で開発ができるWeb Editorがあるが、今回はまずIDEをインストールして使ってみる。

以下の公式サイトから最新版のArduino IDE(ブログを書いている時点ではver 1.8.19)のインストーラーをダウンロードする。私はWindows10のpcを使っているので、「Windows Win 7 and newer」を選んでダウンロードした。

ダウンロードした.exeファイルを起動して、特に設定はいじらずNextをクリックしていきinstallして完了。試しにインストールしたIDEを起動してみると、無事に立ち上がった。

 

ブレッドボードに回路をつくる

プログラムを実行する前に、ブレッドボードでLチカのための回路をつくる。ベタな回路なので特に詳細は説明しないが、GPIOの7ピンをLEDと接続した。また、LEDに接続する抵抗は33oΩにした。

ラズパイの時にも書いたが、LEDには極性があるので向きを間違えないように注意。上の回路だとカソードをGND側、アノードを9pin側に繋ぐ。

以下が実際に繋いでみた写真。これで準備完了。ちなみに上の図の回路とLEDの色が違うが、単純に間違えただけなので気にしないでください笑

 

Lチカのプログラムを書いて実行する

ArduinoはArduiono Languateと呼ばれる独自の言語でプログラミングするが、実態はC\C++と同じだと考えて良さそう。setupの中のコードが起動時に一度だけ実行されて、loopの中のコードが繰り返し実行される。

今回は以下のようなコードを書いた。

int led_pin = 7;

void setup() {
  // put your setup code here, to run once:
  pinMode(led_pin, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  digitalWrite(led_pin, HIGH);
  delay(500);
  digitalWrite(led_pin, LOW);
  delay(500);  
}

GPIO 7を0.5秒(500m秒)ごとにHIGH/LOW繰り返すことでLEDを点滅させている。

コードは「ファイル」→「名前を付けて保存」を選んでled_blinkという名前で保存。下の画像のボタンを押すとコンパイルが実行される。問題なければ「コンパイルが完了しました。」と表示される。

あとは、PCとAuduinoをUSBケーブルで接続した状態で以下のボタンから書き込みを実行すればOK。

最初の実行だからか「シリアルポートが選択されていません」と出たため、Arduino Unoと表示されているポートを選択してOK。

書き込み後、無事にLチカできた。以下が光っている様子。

なお、一度書き込むと電源を入れると勝手にArduinoが書き込まれたプログラムで動き出すようになるので、あとで他の部品と接続したりする場合はsetup、loopの中を空にしたコードを書きこんでおいた方が良いかも。

これでプログラムを書いて実行する流れはつかめた。次回はLED以外の部品をArduinoに接続して遊んでみようと思う。

日記まとめ

Arduinoで遊んでみた軌跡を以下でまとめてます。

【電子工作】Arduino UNO R3で遊ぼう日記 まとめ


投稿者: wakky

映画と旅行が大好きなエンジニア。お酒、ゲーム、読書も好き。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください