cancel
Showing results for 
Search instead for 
Did you mean: 

Code Examples

MotooTanaka
Esteemed Contributor

led7seg_ss.JPG

しばらく前に PSoC 4 では PSoC 5LP のように 7SEG LED のドライバコンポーネントがないのでUDB を使用して、

図の様なコンポーネントを作って力ずくで動かしました。

7seg_led_comp.jpg

しかし、4100S に至っては UDB もないということでどうしたものだろうと考えていました。

確かにメインループの中でアップデートを続ければ表示は出来るのでしょうが美しくない(笑)

というわけで、タイマ割込みでCOMとSEGをアップデートするアプローチで、4桁 7SEG LEDの表示サンプルを作ってみました。

schamtic

schematic.JPG

本当は 7SEG LED の表示だけで、終わらせようと考えていたのですが、

つい出来心でなんちゃって時計の機能を入れてみました。

幸い RTC モジュールがあるので、時間管理はそちらでやってもらえる為、便利なのですが、

内蔵の低速オシレータを源振にしている為、精度はアレです。

※時計として使用されたい場合には外付けの高精度な発振源を用意する必要があると思います。

プログラムのフレームワークは、少し前にポストした UART 入出力サンプルを転用しています。

TeraTerm_log.JPG

今回はアノードコモンのモジュールを使用したので、 led7seg.c というソースの先頭で

  #define ASSERT 0

  #define NEGATE 1

と宣言しています。

もし、カソードコモンのモジュールを使用される場合には

  #define ASSERT 1

  #define NEGATE 0

と変更してビルドしてください。

moto

0 Replies