3色のLEDを並べて信号機を作ろう


青、黄、赤のLEDを順に並べて、交通信号機を作ります。

マイクロビットで複数のLEDを順に点灯させる場合、マイクロビットのGNDの一箇所ですべてのLEDを繋ぐ必要がありますので、



ブレットボードを使ってみようで使用しましたブレットボードを使用すると便利です。


今回使用する部品は下記になります。

・マイクロビット

・(必要であれば)エッジ・コネクタ(またはT型拡張アダプタ)

micro:bit マイクロビット用コネクターブレークアウトボード 完成品: 開発ツール・ボード 秋月電子通商-電子部品・ネット通販

T型拡張アダプタ - Amazon

※T型拡張アダプタは5Vを供給できるものであると後々便利です。

・上のコネクタに合わせたジャンパー線

・ブレットボード

例:ブレッドボード EIC-801: 基板・ブレッドボード・ラグ板 秋月電子通商-電子部品・ネット通販

・5mmLED

抵抗内蔵5mmLED 3~15V 青: オプトエレクトロニクス 秋月電子通商-電子部品・ネット通販

抵抗内蔵5mmLED 3~15V 黄: オプトエレクトロニクス 秋月電子通商-電子部品・ネット通販

抵抗内蔵5mmLED 3~15V 赤: オプトエレクトロニクス 秋月電子通商-電子部品・ネット通販


配線は下記になります。


※エッジ・コネクタやT型拡張アダプタは省略しています。

※他のマイコンを使用や今回よりも小さいLEDを繋げる場合は、GPIOピンとLEDの間に抵抗を挟む必要があります。


注意点としまして、マイクロビット側のGND一箇所に対して、3個のLEDのカソード(-)に繋ぎます。


MakeCodeでコードは下記のようにします。



MicroPythonでは下記になります。

from microbit import *

pin0.write_analog(0)
pin1.write_analog(0)
pin2.write_analog(0)

while True:
	pin0.write_analog(255)
	sleep(5000)
	pin0.write_analog(0)
	for i in range(6):
		pin1.write_analog(255)
		sleep(500)
		pin1.write_analog(0)
		sleep(500)
	pin2.write_analog(255)
	sleep(5000)
	pin2.write_analog(0)
京都の東本願寺で開催されているプログラミング教室で講師をしています。
詳しくはTera schoolを御覧ください。
大阪府高槻市でプログラミング教室を開設しています。
同じカテゴリーの記事
マインクラフト用ビジュアルエディタを開発しています。

詳しくはinunosinsi/mcws_blockly - githubをご覧ください。