つれづれなるまゝに

単なる作業メモ。主に、Linux, arduino, raspberry piとか?

arduinoで7セグ表示

2014-08-31 22:46:31 | arduino
センサーの稼働状態を表示させるために、arduinoで7セグを使ってみる。

7セグはマルツーで売っていた以下のものを購入。
KW1391A2B

スケッチは以下のサイトを参考にさせてもらった。
arduinoで1桁7セグLEDをカウントアップ。

ただし、使っている7セグがちがうので、LEDレイアウトが違う。また、KW1391A2Bはアノード・コモンで、参考にしたサイトはカソード・コモン。
カソード・コモンはHIGHで点灯するが、アノード・コモンはLOWで点灯する。
そのため、7セグの3番or8番ピンはグランドではなく5Vに接続。また、定義配列も点灯する際は1でなく0となる。
結果、以下のようなスケッチになった。

boolean Num_Array[10][8]={
 {1,0,0,0,1,0,0,0},{1,1,1,1,1,0,0,1},{0,1,0,0,1,1,0,0},{0,1,1,0,1,0,0,0},
 {0,0,1,1,1,0,0,1},{0,0,1,0,1,0,1,0},{0,0,0,0,1,0,1,1},{1,0,1,1,1,0,0,0},
 {0,0,0,0,1,0,0,0},{0,0,1,0,1,0,0,0}
};
※ 0~9。ドットは点灯させない。



で、できたスケッチを改良し、以下の人感センサーを接続し、人を検知した回数をカウントアップして7セグに表示するようにした。
PIR Motion Sensor Module:DYP-ME003 SEN005

こいつは、先日の大垣 Mini Makers Fairで出店していたヴィストンで購入。350円くらいだった記憶。
ここにあるように、検出範囲を3.5m~7m、HIGH状態の間隔を5s~300sに設定できる。

接続は簡単。VCC,OUT,GNDの3ピンを繋ぐだけ。今回はarduino側は開いている10番ピンにINPUTとして繋いだ。検知すると値がHIGHになる。


あとは、7セグ2つで2桁表示できるようにして、シールド化してみようかと思う。