- ベストアンサー
74LS47を使ってBCD→7セグ表示の回路を作ってみました。
74LS47を使ってBCD→7セグ表示の回路を作ってみました。 回路図を何度見直しても間違いがないはずですが正しく表示されません。 A→cdg B→adfg C→cdg D→abc が表示されて正しい数字になりません。 ICはSN74LS47N、表示器はGL7E220で各セグの配線も間違いないと思います。 参考にした回路は http://homepage2.nifty.com/sampodo/craft/etc02.html です。 どこを勘違いしているのかわからずに困ってここに質問いたしました。よろしくお願いいたします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- shokker02
- ベストアンサー率45% (204/446)
No.1 です。 No.2 さんの回答を見て。 なるほど、そういう意味ですか。 そういう目でみると >A→cdg >B→adfg >C→cdg >D→abc というのは、1本だけLow 入力を与えた時、 という事みたいですね。 入力オープンなら High 相当なので。 4入力の状態とその時のBCD値、4入力の状態は Lowにするpin →点灯するセグメント → BCD → 2進数 A→ cdg→ 11 → 1011 B→ adfg→ 13 → 1101 C→ cdg→ 11 → 1011 D→ abc→ 7 → 0111 という事だったと思われます。 A の時に触れるpinを間違えたんじゃないかと思います。 他のは合ってると思います。 >が表示されて正しい数字になりません。 A,B,C の時は、値が9より大きい為にそういう結果です。 D の時はたまたま値7で、7セグメントの点灯も abc なので ”7”と読めたはずです。 結論、 配線は正しくて、テストの為に与えた4入力のパターンが 適当でなかった、という事だと思います。
- 86tarou
- ベストアンサー率40% (5093/12700)
A→cdg B→adfg C→cdg D→abc というのは、A~D端子をアクティブにした時、LEDの右側のセグメント(a~g)が点灯するという意味ですよね? A→1(bc) B→2(abdeg) C→4(bcfg) D→8(abcdefg) が正解しょうが、全く違うようです。 2進数では 1(0001) 2(0010) 13(1101) 4(0100) 8(1000) 7(0111) となり 2と8については、入力が0と1逆になってればそんな表示になります。1と4については他に問題があるのかもしれません。 あと、入力はどう処理されてますでしょうか?0と1の電圧を掛けているなら良いのですが、オープンになっている端子がないようにしてください。例えば、スイッチで数字を選択するなら、プルアップ抵抗を接続しGNDとの間にスイッチを入れてください(この場合は、スイッチオフで1状態)。
補足
早速の回答ありがとうございます。 入力A~Dはプルアップしていません、オープンでAはA端子だけをアースに落とした状態です。 他の入力をプルアップしてテストしてみます。
- shokker02
- ベストアンサー率45% (204/446)
値0~9は正しく表示されますか? >74LS47を使ってBCD→7セグ表示の回路を というつもりなのに >A→cdg >B→adfg >C→cdg >D→abc とは、値A以降も使う積もりですか? BCD は Binaly Coded Decimal 、「2進化10進数」ですから 普通は値0~9しか使いません・ 従って値A以降の7セグメント表示も普通は使いません。 74シリーズのICは複数のメーカが製造していましたが、 (特に未定義部分は)完全互換でないと思います。 (これは全ICを知らないので推測ですが) お使いの74シリーズICのメーカーのデータシートで確認しましょう。 引用URLのページとつき方が若干違いますが
お礼
ありがとうございます。大きな勘違いをしておりましてA~DをLowに落とすと表示すると勘違いをしておりました。 逆で、それぞれHiにするのですね。 BCDをLowにすると「1」ACDをLowにすると「2」と正しく表示されました。 大変お騒がせしました。