こんにちは!香月です。
趣味は電子工作とプログラミングです。
このブログでは、知識のアウトプットとして皆さんに電子工作の知識を共有します。
勉強中なので、間違っている情報がありましたら、
公式ライン等に連絡ください!
今回の内容
今回は7セグメントLEDを使っていきます。
7セグメントLEDを使うことができると、温度計や電圧計などを出力することができるようになります。
そんな便利なモジュールを今回は使っていきます。
香月です!
今回は7セグメントLEDをピコで動かしていきます!
使うもの
この記事で使っているものを紹介します。
*このリンクは、アフィリエイトリンクです。
こちらのリンクから購入されると、投稿主にインセンティブが発生します。
より良い記事のために、ぜひ購入する際は以下のリンクよりお願いします。。
実際に投稿主が購入したキットを紹介します。
こちらのキットは、マイコンと電子工作に必要な部品がセットになったものです。
こちら購入すればすぐに電子工作始められます!
また、公式HPでモジュール、プログラムの解説もされているので、非常におススメです。
購入はこちらをクリック!
*画像はリンク先より引用
個別で購入したい方は、以下のリンクよりどうぞ
購入はこちらをクリック!
*画像はリンク先より引用
購入はこちらをクリック!
*画像はリンク先より引用
購入はこちらをクリック!
*画像はリンク先より引用
購入はこちらをクリック!
*画像はリンク先より引用
購入はこちらをクリック!
*画像はリンク先より引用
購入はこちらをクリック!
*画像はリンク先より引用
購入はこちらをクリック!
*画像はリンク先より引用
7セグメントLED
今回は1桁の7セグメントLEDを使っていきます!
まずは7セグメントLEDの仕組みを見ていきましょう
7セグメントLEDと回路の解説
この数字の1角1角がLEDとなっていて、たくさん出ているピンそれぞれに電流を流して表示したい数字にします。
今回使う回路は、↑の画像のようにピンにつなげてください
もっとわかりやすくなるようにユニバーサル基板でわかりやすくしてみました
はんだ付けが下手なので、そちらは気にしないでください
また、多少GNDの配線がおかしいです
↑このようになっています
ピン1つ1つがLEDにつながっています。
*本来は抵抗が入っていません。
実際に動かしていきましょう
from machine import Pin
led12= Pin(12, Pin.OUT)
led13= Pin(13, Pin.OUT)
led14= Pin(14, Pin.OUT)
led15= Pin(15, Pin.OUT)
led16= Pin(16, Pin.OUT)
led17= Pin(17, Pin.OUT)
led18= Pin(18, Pin.OUT)
led19= Pin(19, Pin.OUT)
def reset():
led12.low()
led13.low()
led14.low()
led15.low()
led16.low()
led17.low()
led18.low()
led19.low()
def zero():
led12.high()
led13.high()
led14.high()
led16.high()
led17.high()
led18.high()
def one():
led16.high()
led14.high()
def two():
led17.high()
led16.high()
led19.high()
led12.high()
led13.high()
def three():
led17.high()
led16.high()
led19.high()
led14.high()
led13.high()
def four():
led18.high()
led19.high()
led16.high()
led14.high()
def five():
led17.high()
led18.high()
led19.high()
led14.high()
led13.high()
def six():
led17.high()
led18.high()
led19.high()
led12.high()
led13.high()
led14.high()
def seven():
led18.high()
led17.high()
led16.high()
led14.high()
def eight():
led12.high()
led13.high()
led14.high()
led16.high()
led17.high()
led18.high()
led19.high()
def nine():
led13.high()
led14.high()
led16.high()
led17.high()
led18.high()
led19.high()
while True:
reset()
zero()
↑のコードをthonnyを使って、ピコに書き込んでください。
ファイル名は自分でわかるファイルにしてください。
実行してみましょう
スクリプトと実行すると、、、
光りました!
プログラムのzero()をthreeやnineに変更してみてください
変更して実行すると、、、
数字が変わりました!
これが7セグメントLEDの使い方です。
では三桁のセグメントはどうなっているのでしょうか?
複数桁のセグメントでは、1文字づつ表示させて高速で切り替えます
人間の目では認識できないスピードで光って消えてを繰り返すので、私達の目では確認することができません。
どうだったでしょうか?
うまく動かしましたか?もし動かない場合は以下の項目を確認してください!
動かない場合
回路のチェック
まずは回路のチェックです。
ジャンパー線が正しい場所につながるかを調べてください。
これが間違っていると動きません
プログラムのチェック
こちらの方でプログラムは問題なく動くことを確認しています。
自分で書き換えるところにミスはないか、正しくコピペできているかを確認してください。
モジュールの故障
7セグメントLEDの問題やジャンパー線が断線していないかを確認してください
終わりに
今回の内容はいかがだったでしょうか
電子工作初心者でも理解できるように書いてみました。
もし、わからないこと・やってほしいこと
がありましたら問い合わせフォームに送ってください。