- ベストアンサー
ロジックICを使ったカウンタの繰り下がり抑止
ロジックICを使ったカウンタの繰り下がり抑止 74HC193を使った簡単な非同期式アップダウンカウンタを作成しています。 アップ/ダウンの押しボタンに同期してカウントが増/減し、 カウントが0000の状態でダウンボタンを押すと、 Borrow :H→L カウント:1111 となり、繰り下がりが起こりますが、これを、 カウント:0000 を保持する回路を実現するにはどうすればよいでしょうか? ど素人の質問ですが、どうかよろしく願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
0000からの減算だけを禁止したいわけですから、その条件を検出する論理と、 検出したあとに動作をさせる論理を追加することになります。 真正面からやるなら、0000のカウントを検出して、 そのときだけ減算の入力を受け付けないようにゲートでとめる方法か、 または0000から1111への遷移を検出して、遷移した瞬間に リセットして、0000に戻す、という方法のどちらかになるでしょう。 幸い193は各種機能ピンがあるので、それを考えます。 データシートのタイミングダイアグラムを見ると、Borrowが使えそうです。 Borrowを反転して、Clearに入れるだけですみそうです。 まあ本来のリセット回路があるでしょうから、それとは無論ORですね。
その他の回答 (1)
- inara1
- ベストアンサー率78% (652/834)
「本来のリセット回路と無論OR」というのは、実際には、添付図のように、NANDを使うことになると思います。193のクリアはHレベルなので、普通はCR積分回路でリセット回路を作り(L レベルがクリア)、それをインバータで反転して 193 のCLR 端子に入れます。ANo.1さんの回答にある「Borrow を反転させてCLR と OR をとる」というのは、「CLRの反転と Borrw のNAND をとる」のと同じにことになります。 添付図のタイミングチャートは回路シミュレータの結果ですが、DOWNクロックの立上がりで状態が変化し、その結果が 0 の場合、DOWNクロックの立下がりでBorrow信号が L になるようです。Borrow が L になりると NANDの出力が H になってクリアされますが、次のDOWNクロックの立上がりで一旦 Borrw信号が消え、その後のDOWNクロックの立下がりでBorrow信号がまた L になるようです。DOWNクロックが入る度にこのような変化が起こりますがカウンタの状態は 0 のままで、所望の動作になっています。
お礼
補足・解説ありがとうございます。 「本来のリセット回路」をPICからのL→Hへの状態変化(CR微分回路+バッファ)で作成しているのですが、 今回は手持ちのORを使って所望の動作を得ることが出来ました。
お礼
ご回答ありがとうございます。 「Borrowを反転してClearに入力」 は試していたものの、 「本来のリセット回路と無論OR」 していませんでした! 後ほど実験結果をレポートしたいと思います。
補足
質問者です。 「本来のリセット回路」とORを取ることで所望の動作を得ることができました。 ご指導ありがとうございました。