こんにちは!Latticeチーム新人エンジニアのりょすです。


今回は7セグLED基板の動作確認をおこなっていきたいと思います。

 

前回は、ライセンス取得方法や設計ツールのインストール、XO3LFの評価ボードについて紹介しました。

 

初めてこのブログを拝見していただいた方にこのブログの概要を少し紹介します。
このブログでは、温度センサ、7セグをFPGAで制御するものを製作する過程を紹介していきます。

(もし興味があったら、下に他の回のリンクを添付するので見ていただけると嬉しいです!)

7セグLEDあれこれ

今回、7セグLEDの動作確認をおこなっていきたいと思いますが

 

たしか、○○ノードのような呼び方でLEDって電流の流れる向きとかあったような気がします、、、

 

そこで、LEDがどのようにして点灯するのか調べてみました。

アノード?カソード?

 LEDはアノード、カソードと呼ばれる極性があります。

 

LEDを光らせるためには、正しいアノード/カソードの向きに電流を流す必要があります。

 

下の図に示したような記号でアノードがプラス(+)、カソードがマイナス(-)となります。

 

LEDを光らせるためには、プラス側からマイナス側へと電流を流します。

 

データシートを確認すると、どの方向に電流を流せばよいかこのように書いてるので、しっかり確認するようにします。

 

また、こような砲弾型LEDの場合、足の長い方がアノード、、足の短い方がカソードとなります。

 

今回使用するのは、砲弾型のLEDではなく、LED表示器なので、もしかしたら光らせ方が違う?と思い、もう少し調べてみることにしました。

アノードコモンとLED表示器

LEDの基礎的な概念は、理解できました。

 

ただ、今回LED表示を光らせたいので調べてみると、アノードコモン/カソードコモンというワードがでてきました。

 

コモン?

 

調べてみるとどうやらコモンとは共通という意味で、LED表示器は I/O の数を節約するために

いくつものLEDのアノード/カソードが共通になっているというのが分かりました。

 

今回使用する7セグLED表示器はアノードコモンのLEDとなります。

 

アノードコモンは下の図のようにアノードを共通で使用するLEDとなります。

 

 

アノードコモンはシンク電流によって光らせます。

 

シンク電流は外部電源をアノード側に、ICの出力ポートをカソードに接続します。

 

ICの出力ポートをLowに落とすことで、LEDに電流が流れて光る仕組みになります。

 

また、7セグLED表示器では

 

上の図にあるように、7つのLED a~g とデシマルポイント(DP)を点灯/消灯させて数字を表現します。

 

7セグLED表示器の動作確認

光る原理や光らせ方が分かったところで、構成図を基に、7セグLED基板を製作します。(第1回掲載)

 

なるべくコンパクトに設計したため、少し窮屈に見えますが、右上に7セグLED、左上に電池ボックスを配置し、

 

右下にXO3LF評価ボードとケーブルで接続できるようにピンを出し、左下に電源とGNDを配置しました。

この基板を作る前に先輩から、

 

「2桁表示するのに配線沢山引くとFPGA側の I/O数が足りなくなるよ」

 

と言われました。

 

同時に「ダイナミック点灯にしたほうがいいよ」

 

とも教えてもらいました。

 

ダイナミック点灯は、I/Oピンを節約するためにFPGA側で表示する桁を切り替える方法です。

 

もう少し詳細に説明するとダイナミック点灯は、桁の切り替えを

 

一定周期(人の目では切り替えていると分からない速さ)で行い

 

あたかも複数の桁を同時に点灯しているように点灯させる方法です。

 

このダイナミック点灯による桁の制御も LED制御と同様に FPGA にて制御したいと思います。

 

フリーソフトを用いて、回路図を作成しました!

 

回路図は以下のようになります。

 

中心少し左にあるのが、FPGAのバンクになります。

 

そのバンクを挟んで左側が温度センサー、右側が7セグLEDの回路となります。

 

7セグLEDの回路のポイントは、使用 IO数を削減するために7セグLED表示器の桁制御を4本の信号線でおこなうことです。

 

ダイナミック点灯を用いて、2桁の表示をおこないたいと思います。

 

実際に作った基板がこちらになります。

久しぶりにはんだこてを使い、1基板つくるのに相当な時間がかかってしまいました、、、

 

基板が製作し終えたら、テスターで通電チェックをおこないます。

 

ショートしていないことが確認できたら、実際に7セグLEDが点灯するか動作確認をおこないます。

 

しっかり点灯するかドキドキです、、、

とても地味な作業となりますが、ちゃんと1つずつ正常に点灯するか確認をしていきます。

 

 

全て点灯しました!よかった!

 

 

無事、4桁全て点灯することが確認できたので7LEDの動作確認は終わりにします。

 

 

今回は、7セグLEDの動作確認をおこないました。

 

感想としては、

 

自分ではんだして繋げたLED表示器がちゃんと光って感動しました!(泣)

 

次回は温度センサの動作確認について述べたいと思います。

 

では、また次回!See ya!

Lattice FPGA 入門ブログについて

この記事は、LED制御に焦点を当てた記事となっています。しかし、LED制御だけではなく

 

全記事を通して、温度センサーにて取得した温度を、FPGA内部で変換して7セグLED表示器に表示するモジュールを製作しています!

 

もし、「この新人君は何を作っているんだろう?」と興味を持っていただいた方がいましたら

 

ぜひ以下ページより、モジュールの制作過程や全体像をチェックいただけると嬉しいです!