9つのI/Oポートで市販の8×8マトリクスLEDを駆動
Charlieplexing (2)で 市販の8x8のマトリクスLEDを9つのI/Oポートで駆動する方法について考えたので作ってみた。
AVR AT90S2313を使ったが特に意味は無い。SCRは秋月で売っているMCR22-8を使った。
Charlieplexing (2)に書いた方法では全てのLEDが点灯してしまうので↓の方法に変更して制御できた。
ALL_OFF、カソードOFFにするときには時間待ちが必要で50usはCut&Tryで決めた。
- P(0-7)←’ZZZZZZZZ’, P8←Z ; ALL_OFF
- P8←L ; カソードON
- P(X)←H、P(X以外)←L ;カラム(x)ON
- P8←Z ;カソードOFF
- P(0-7)←表示データ(ActiveL) ;データ出力
↓任意の列の制御ソースコード
#define SCR_C 6
void disp_col(uint8_t col, uint8_t data) { |
←リンク先にAVI
よく考えたら、8つのI/Oポートで駆動可能だった。(8つのI/Oポートで市販の8×8マトリクスLEDを駆動)
« 楽しい酒 | トップページ | 誰もやめない会社 »
「日記・コラム・つぶやき」カテゴリの記事
- 修理(4) <とうとう修理不能>(2022.11.08)
- LANケーブルテスター(2022.05.18)
- 今時のWebサイトを構築してみた(2022.05.16)
- Type-C 充電器(2022.04.29)
- 全館停電 <ネットワークトラブル訓練>(2022.03.12)
「AVR」カテゴリの記事
- Google日本語モールス入力(2020.05.01)
- Digispark(3) <RAMが一番大事>(2016.09.19)
- Digispark(2) <ATtiny85+V-USB+Arduino>(2016.09.05)
- Digispark (1)(2016.09.03)
- Atmel買収 <AVRは無くなるのか>(2016.03.01)
« 楽しい酒 | トップページ | 誰もやめない会社 »
コメント