Raspberry Pi – シフトレジスタ―~7セグメントLED

 

シフトレジスターには74HC595を使う。

ここでは、別々のGPIOから7セグメントLEDを点灯させたときと逆に、a→dpのビット順にしていて、コードではLSBから順に読みだしてシフトレジスターに送ることにした。

表示 a b c d e f g dp Hex
0 11111100 0xfc
1 01100000 0x60
2 11011010 0xda
3 11110010 0xf2
4 01100110 0x66
5 10110110 0xb6
6 10111110 0xbe
7 11100000 0xe0
8 11111110 0xfe
9 11110110 0xf6
A 11101110 0xee
B 00111110 0x3e
C 10011100 0x9c
D 01111010 0x7a
E 10011110 0x9e
F 10001110 0x8e

以下はRaspberry Piで7セグメントLEDを点灯させるコード。リストのpatternsに0~Fまでのセグメント点灯パターンを入れ、対応する桁数分シフトしてシフトレジスターに送っている。そして、各パターンを0.5秒ずつ表示させてカウントアップさせている。

キットのテキストのコードでは、time.sleep()を入れていたり入れていなかったりするが、特にこれがなくても問題なく動作する。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です