2.5 7セグメントディスプレイ

この魅力的なプロジェクトへようこそ!このプロジェクトでは、7セグメントディスプレイに0から9までの数字を表示する方法を探求します。

このプロジェクトを始動させると、0から9までの各数字が小さくコンパクトなディスプレイに鮮やかに光る様子を目にすることでしょう。まるで魅力的な方法で数字を紹介するミニチュアスクリーンを持っているかのようです。信号ピンを制御することで、表示される数字を簡単に変更し、さまざまな引き込まれるような効果を作り出すことができます。

シンプルな回路接続とプログラミングを通じて、7セグメントディスプレイとのやり取りの方法を学び、希望する数字を実際に表示させる方法を習得します。カウンターであれ、時計であれ、または他の面白い応用であれ、7セグメントディスプレイはあなたのプロジェクトに輝きを添える信頼できる仲間となるでしょう。

必要な部品

このプロジェクトには、以下のコンポーネントが必要です。

一式を購入するのが便利です。こちらがリンクです:

名前

このキットのアイテム

リンク

ESP32 Starter Kit

320+

ESP32 Starter Kit

もちろん、以下のリンクから個別に購入することもできます。

コンポーネントの紹介

購入リンク

ESP32 WROOM 32E

BUY

ESP32カメラ拡張ボード

-

ブレッドボード

BUY

ジャンパーワイヤ

BUY

抵抗器

BUY

7セグメントディスプレイ

BUY

74HC595

BUY

利用可能なピン

このプロジェクトでESP32ボードに利用可能なピンのリストです。

利用可能なピン

IO13, IO12, IO14, IO27, IO26, IO25, IO33, IO32, IO15, IO2, IO0, IO4, IO5, IO18, IO19, IO21, IO22, IO23

回路図

../../_images/circuit_2.5_74hc595_7_segment.png

ここでは、配線の原理は基本的に 2.4 マイクロチップ - 74HC595 と同じですが、唯一の違いは Q0-Q7 が7セグメントディスプレイの a 〜 g ピンに接続されている点です。

回路図

74HC595

LED Segment Display

Q0

a

Q1

b

Q2

c

Q3

d

Q4

e

Q5

f

Q6

g

Q7

dp

配線図

../../_images/2.5_segment_bb.png

コード

注釈

  • esp32-starter-kit-main\c\codes\2.5_7segment のパスの下にある 2.5_7segment.ino ファイルを開きます。

  • ボード(ESP32 Dev Module)と適切なポートを選択した後、 アップロード ボタンをクリックします。

  • "Unknown COMxx"が常に表示されますか?

コードが正常にアップロードされると、LEDセグメントディスプレイが0~9までの数字を順番に表示するのが見られるでしょう。

どのように機能するのか?

このプロジェクトでは、shiftOut() 関数を使用して、バイナリ数をシフトレジスタに書き込んでいます。

7セグメントディスプレイが "2" という数字を表示するとします。このビットパターンは、セグメント fcdp がオフ(低)で、セグメント abdeg がオン(高)であることに対応しています。これはバイナリで "01011011"、16進数表記で "0x5b" です。

したがって、7セグメントディスプレイに "2" と表示するためには shiftOut(DS,SHcp,MSBFIRST,0x5b) を呼び出す必要があります。

../../_images/7_segment2.png

以下の表は、7セグメントディスプレイに0から9までの数字を表示するためにシフトレジスタに書き込む必要がある16進数のパターンを示しています。

Glyph Code

Numbers

Binary Code

Hex Code

0

00111111

0x3f

1

00000110

0x06

2

01011011

0x5b

3

01001111

0x4f

4

01100110

0x66

5

01101101

0x6d

6

01111101

0x7d

7

00000111

0x07

8

01111111

0x7f

9

01101111

0x6f

これらのコードを shiftOut() に書き込むと、LED セグメント ディスプレイに対応する数字が表示されます。