当サイトの一部ページには、アフィリエイト・アドセンス・アソシエイト・プロモーション広告を掲載しています。

Amazonのアソシエイトとして、Security Akademeiaは適格販売により収入を得ています。

広告配信等の詳細については、プライバシーポリシーページに掲載しています。

消費者庁が、2023年10月1日から施行する景品表示法の規制対象(通称:ステマ規制)にならないよう、配慮して記事を作成しています。もし問題の表現がありましたら、問い合わせページよりご連絡ください。

参考:令和5年10月1日からステルスマーケティングは景品表示法違反となります。 | 消費者庁

7セグメントLEDをカウントアップする【Virtual Circuit Board編】

2024年6月23日

7セグメントLEDを作成する

完成した7セグメントLEDは次のとおりです。

ワイヤーが交差しないようにMeshを使って、ジャンプさせています。

シミュレート時に7セグメント内部のワイヤリングの導通を見せたくないので、装飾レイヤーで色をつけています。

これによってシミュレート時に白い部分(LED)だけが光るようになっています。

※ズームアウトすればアイコンが消えますが、ズームアウトしなくても消したければ右側の★アイコンボタンを押して無効にしてください。次の画像は、無効にした状態になっています。

Blueprint

この7セグメント回路を使いたい場合は、次のblueprintをインポートしてください。

VCB+AAAAisCQuTW9AAAAIAAAACoAAAGFAAAAAAAAFQAotS/9YAAUfQsAxAIAAIyrof8uR10qNUH/ZGpXbKFWoYVWVqGNiJiZoVaImYVNOD5We6H/OE1H/4C0qMAlrQHQgpmZoW0DEqBCDAJIOAISIQJLYAROkIQTgREQJJBA5BBOHn1aRQxQrec0sPODx4asH+g4WkYFh8DpEHSP9iZO+cAwyxflgY/Yx8Y0v+T9wTLJXVnntN1d5fXqwiSjT7YD7GvCOl2PbnB3fhDFA3h3fioTrkMGEgBsmj4he+nrvSU1+HbgCw/8L7vWGRD3mIMM8BDBp+vA/q4D3hkGW34AnT7EDgX8RtUAy6azQaj9cnSm2c5K7u8PFsa1NTS7448nP4NsB7TzFD2go7CXcJ4xhr6hGkBkSZiBOfbSGJA+dtUJeLXsgnoyoH6QVzsBr8/k/8F/xB93z2KL/udBtA8grXKdkc0Fr0EdwHgg7vkcEoInXXsfEoPb/pR5sLNdFMsvZ3p4OZByx4LfZu3DGP2nD5mN0+nLjVYgAQAAARMAAAABAAAVACi1L/1gABTtBwAwAABm////gLmo8IUx4IKhKuoSIBF4CkACoKASXIImIAImSGJIoKxYhjEJaWzHO94L2rA4qZMqUidVpE5WkeJXZVZd77pLRHssM5mHZmuSp76p8mZMTomVcBIzelgLo5t4+Q7VSBu+koP+9Gq5ACls9/YbPuu3KfYKb3f2kP6UIzTShq/koD+92tFHd+9C5GJpefH/H+A6DpbfCA4fKR60kEkCP/NH77bwmXzNp1fLQtbxIig+hgY4Wu5uf7Q6Ta0vcArdv2njz+hmi1mRvUHIF78uHlEk8DjgNbk/o8f1+1mUsZv4q/jiDLfXwDPb79TA37/RkEnoekfa0FIZAAABEwAAAAIAABUAKLUv/WAAFO0HADAAAGb/4v+AuajwhTHggqEq6hIgEXgKQAKgoBJcgiYgAiZIYkigrFiGMQlpbMc73gvasDipkypSJ1WkTlaR4ldlVl3vuktEeywzmYdma5KnvqnyZkxOiZVwEjN6WAujm3j5DtVIG76Sg/70arkAKWz39hs+67cp9gpvd/aQ/pQjNNKGr+SgP73a0Ud370LkYml58f8f4DoOlt8IDh8pHrSQSQI/80fvtvCZfM2nV8tC1vEiKD6GBjha7m5/tDpNrS9wCt2/aePP6GaLWZG9QcgXvy4eUSTwOOA1uT+jx/X7WZSxm/ir+OIMt9fAM9vv1MDfv9GQSeh6R9rQUhkAAAAiAAAEAAAAAA0otS/9IA1pAAA3IFNlZ21lbnQgTEVEAAAAMwAABAEAAAAeKLUv/SAe8QAANyBTZWdtZW50IExFRAptYWRlIGJ5IGlwdXNpcm9uAAAAHAAABAIAAAAHKLUv/SAHOQAATEVEN3NlZw==

7セグメントLEDの光らせ方

7セグメントLEDには7つの入力線があり、それぞれにラッチ(下の○アイコン)がつながっています。

このラッチを手動でON/OFFすることで、ワイヤーに流れる信号のHigh/Lowを切り替えられます。

右から順にa,b,c,d,e,f,gのLEDに対応しています。

※このa~gは、本物の7セグメントLEDと同じ対応になっています。

実際に操作して確かめてみてください。

本物の7セグメントLEDは、裏側から10本のピンが出ています。
上記の7本に加えて、ピリオド(D.P)の表示用、そしてコモン用が2本があるからです。

1つのラッチ操作で特定の数字を表示させる

上記の7セグメントLEDは7つのラッチが用意されていましたが、今度は1つのラッチで特定の数字を表示させることを目指します。

最初は9を表示させてみます。

そのためには、LED a,b,c,e,f,gを点灯させなければなりません。

つまり、入力a,b,c,e,f,gにHighを流すことになります。

回路は次のとおりです。

ポイントはL字のところはワイヤー(トレース)ではなく、バッファを用いることです。これによって逆流を防止できます。

シミュレートした結果は次のとおりです。

すべての数字に対応させる

うまくいったので、横のワイヤーとL字の部分をまとめて範囲選択して、横のワイヤーが10本になるようにします。

一番上が9で、その下が8、…としていき、一番下が0に対応するようにします。

シミュレートで10種類の数字をチェックします。

※特に「6」に注意してください。

2進-10進デコーダーを組み合わせる

1:回路の設計方針を検討する

3ビットデコーダーだと3入力8出力なので、0から7までの数字しか表現できません。

9と10を表現するには、4入力必要です。

といっても、16進数全部を表現するわけではないので、完全な4ビットデコーダーは要りません。

3ビットデコーダーをちょっと改造して、次の真理値表を満たすようにすればよいのです。

A
CD出力
0000Z0
0001Z1
0010Z2
0011Z3
0100Z4
0101Z5
0110Z6
0111Z7
1000Z8
1001Z9
2進-10進デコーダーの真理値表

3ビットデコーダーは次の記事で完成しているので、これを流用します。

A(4ビット目)のために縦にワイヤーを1本追加します。

Z0~Z7については、そのワイヤーを無視して構いません。

Z8とZ9だけ、Aが1であることに着目した上で、次の論理式を満たすように配線します。

$Z8 = A \cdot \overline{D}$

$Z9 = A \cdot D$

2:Z0~Z7までの回路を実装する

7セグメントLEDの下にあるマトリックス構造は、一番上が9でしたが、デコーダーの出力に合わせて逆順にします。つまり、マトリックス構造の一番上が0になります。

また、マトリックスの間隔も調整してあります。

完成した回路は次のとおりです。

動作確認して、0~7まで正しく表示されることを確認します。

3:Z8とZ9の回路を追加する

回路を組み込んだらテストします。

カウンター回路とクロック信号で自動化する

次の回路になります。

完成した回路は次のように動作します。

動きが遅い場合はシミュレーションスピードのスライダーを操作して、調整してください。

0から9までカウントアップします。以降の処理は考えていないので、0には戻りません。

blueprintは次のとおりです。

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

次回の課題は、9の次は0に戻る回路を組み込むことです。

スムーズに0に循環させる

0000から1001までカウントして、その後スムーズに0000に戻るようにしたいとします。

0000

0001

0010

0011

0100

0101

0110

1000

1001

1010⇒7セグメントLEDが0になるべき

通常のデジタル回路であれば、「4つのFFの入力ClrにHを与えてクリアする」「10進カウンター(ディスケードカウンター)という集積回路を使う」という方法があります。