- ベストアンサー
パラレル-シリアル変換回路について
8*8の64bitのデータを離れた場所にある8*8の発光ダイオードの表示器に表示したいのですが、そのままだと65心のケーブルが必要となるため、パラレル-シリアル変換して送りたいのですが、原理的には理解していても、実際の回路(IC選択等)がわかりません。参考になる回路のあるサイトなどご存知の方、ありましたらよろしくお願いいたします。 ・8*8のデータはすべて0,5Vの電圧の出ている端子が64個あるイメ ージです。 ・随時変化するデータに対し、リアルタイムで表示したいとおもいますが、 300msまでの遅れなら大丈夫です。 ・PICを使う手もあるかと思いますか、当方PICに不慣れなため、できれば すべてTTLで組みたいと思います。
- みんなの回答 (9)
- 専門家の回答
質問者が選んだベストアンサー
No.6です。 申し訳ないです。 前回のカキコ、不手際が有ったようです。 私なら、送信側に74LS165を8個。 受信側に、74LS594 *8個 使用します。 また、これらの制御信号を生成するのに 74LS163 を使用します。 この論理回路の場合、何ビット送信したか カウントしなければ成らないからです。 そのほか、AND,NOT少々。 伝送線は ・信号ライン ・クロックライン ・制御ライン ・グランドライン ・(リセットライン) リセットは、送受信同時にリセットする 必要が無ければ伝送する必要は無いと思います。 図面が見られれば直ぐに理解できる話だとは 思うのですが… 取りあえずは、以上3つのLSIの仕様書を テキサスインスツルメンツのページから ダウンロードして、良く読んでみてください。
その他の回答 (8)
- xanazig
- ベストアンサー率100% (1/1)
No.6です。 回路図を描きながら思ったのですが、 もしかしたら、PCでコントロールされている 回路ですか? もしくは、マイコンが載っていますか? それだと、多少事情が変わってきます。
補足
ありがとうございます。m(_ _)m 今回はPCやマイコン、PICは使用しないつもりです。 専用のカスタムICはOKですが…
- guuman
- ベストアンサー率30% (100/331)
今回は荷が重いかもしれませんが 1信号線は最も望ましい方法です DCフリー反転フリーのデータ構造は 例えば 11100010AaBbCcDc…Zz の繰り返しで実現できます ただしA,B,C,…,Zはそれぞれ1ビットデータであって64個(26個ではない)あり a,b,c,…,zはそれぞれA,B,C,…,Zの反転である 3連続1を検出した後の0→1の時点からデータ打ち抜き位置を決めればいいのです
- xanazig
- ベストアンサー率100% (1/1)
既に、No.5さんが詳しく回答しているようなので 簡単な補足をしてみます。 パラレル -> シリアル 74LS165 74LS597 74LS674 等 シリアル -> パラレル 74LS164 74LS594 74LS673 等 伝送のI/Oには240や540を使った方が良いかも。 LSシリーズで仕様を満たすか要検討です。 LED(7SEG?)に寄っては、ドライブICの出力がO.C.のものを選択した方が良いかもしれません。 300msの遅延が可能なら伝送速度は10Mhz程度で充分ですね。 只、信号品質が10Mhzに耐えられるかは別問題です。 LSIメーカーはここ。 http://www.tij.co.jp/ 通販はココとか… 多分、個人でも売ってくれたと思います。 http://www.rswww.co.jp/ あるいは、トラ技の広告からでも探してください。 昨今、74シリーズは絶滅の危機に瀕してますから、レアな型番は 入手しにくいかもしれません。 この程度の答えでご理解できたでしょうか? どうしても、参考回路が必要なら描きますが…(^_^; それでは、頑張ってください。
補足
もし、参考回路をお願いできるのでしたら、こんなに嬉しいことはありません。m(_ _)m
- xcrOSgS2wY
- ベストアンサー率50% (1006/1985)
SN74シリーズで8ビットのシフトレジスタがありますので、それを8個使って送受信というのはいかがですか。 送信側:SN74LS165×8個で64ビットをラッチして、順次シフトアウト 受信側:SN74LS164×8個で64ビットを順次シフトイン http://focus.ti.com/docs/prod/folders/print/sn74ls164.html http://focus.ti.com/docs/prod/folders/print/sn74ls165a.html 送信側と受信側の接続には2本の信号線を使用するのが楽です。 1. クロック 2. データ 「シリアル転送するデータの先頭に1を追加し、受信側のシフトレジスタの末端から1がシフトアウトされたら表示」とか「転送ビット数を数えて64ビットになったら表示」というふうにする場合、転送の開始を明示する信号が必要です。データに重畳するのは回路が面倒なので、信号線(リセット)を1本追加するのが楽でしょう。 あるいは、送信側で転送ビット数を数えておき、表示タイミングも送信側で制御するという方法もあります。この場合も別の信号線(転送終了)が必要です。 データの転送中は表示をオフにする・・・という場合シフトレジスタは上記だけで済みますが、データの転送中は「前回転送したデータを表示し続ける」としたい場合は、別途ラッチが必要です。これもTTLに8ビットラッチがあるはずなので、それを使えば8個で済みます。
伝送線は何本使えますか。1本だとかなり辛い(同期をどうやって取るか)。(極性反転とか、パルス幅とか使ってでも)3本使えれば楽勝。 8ビットまたは16ビットだと汎用ICで対応しやすいので、64ビットを4か8に分割してそれぞれを送るとすると、6本か10本の伝送線があれば回路規模をずっと小さくできます。 すべてTTLということなので、プログラマブルな部品や大規模集積回路や専用品が無かった時代を思い出しながら書きます。手元に資料が無いので、ICの型番はしらべてくださいね。 まず、変換中に入力が変化すると変な値が出てしまいますから、ラッチが必要です。エッジでラッチするDタイプが便利でしょう。8個入りがあったと思います。 64個のデータを取り込むためにはデータセレクタを使うかシフトレジスタで順に取り出すか。ラッチとシフトレジスタが入ったICもありましたね。 並列のデータを順次読み出すクロックを発生する回路が必要です。これに、ラッチをセットするための開始と終了パルスを生成して・・・・ 読み出し側では、終了信号のタイミングで信号を振り分けてラッチしてゆく。シフトレジスタで順にとりこんで、ラッチして出力。あるはマルチプレクサとラッチか。 伝送線が2本の場合は、スタート・ストップとクロックをうまく重ねる工夫が必要。伝送線が1本だと、信号とクロックをどうやって重ねるか。 今でも手に入るのかなあ? UARTというICがありました。上記のような機能のすべてを含んで、非同期通信できる物でした。これを送受信双方に8個づつ使えば・・・ 値段が・・・
補足
伝送線の数に制限はありません。65本が多すぎるのでパラーシリ変換すれば…、と思いついただけですから。 UARTを調べてみました。 すべてTTLで組みたいと書いたのは、PICを使う事を避けたかったからで、UARTのような専用ICがあるのなら、それを中核において、あとはパラレルデータを切り替えていけばいい訳ですよね。 でも、参考回路がないと…。どこかにそのような専用ICを使った参考回路はないでしょうか?
- guuman
- ベストアンサー率30% (100/331)
ディジタル回路の本を市の図書館でいくつか借りて載っている回路をできるだけ多く見ることをお勧めします 東京だとキーワード検索してインターネットで予約できるのでそれらしい本を制限数まで予約すればよいでしょう 便利になりましたね
- guuman
- ベストアンサー率30% (100/331)
回路などは自分で組むしかありません 論理回路の知識があれば簡単に組めるはずですが 何が難しいのでしょうか?
補足
今回のパラ-シリ変換回路は全く経験がないので、最初のスタートで困っています。 同じような回路(8×8に限らず)で参考にできる回路があれば、すぐ組めると思うんですが… とっかかりがめません。
- guuman
- ベストアンサー率30% (100/331)
信号線1本とGNDを同軸ケーブルで送ればいいでしょう 信号線にはシリアル化した情報に加えて仕切り情報を送らなければなりません 例えば1ワードのタイミングチャートを _  ̄ ̄ ̄ ̄ ̄_  ̄ ̄_  ̄ ̄_ ̄_ ̄ ̄ ̄_ ̄ ̄ ̄_ │__│□│ │□│ │□│ … │□│ │□│ とする□は情報で1ワードあたり64個(ビット) 連続してローレベルになるのはワードのはじめだけだからこれを検出すればデータを打ち抜ける
補足
ありがとうございます。 原理的にはわかるのですが、実際の回路(IC選択等)がわかりません。 回路図等はどこかにないでしょうか?
補足
いろいろとありがとうございます。 今週の土日にゆっくりと考えてみたいと思います。 それで、また、わからないところがあれば、よろしくおねがいいたします。