[H8-ML(4110)] Re: GPIO の出力を増やす方法
From: nisshan@xxxxxxxxxxxxxxxx
Date: 2003年11月16日(日)03時11分32秒
にっしゃん@デジタルICの本を読みました! です。

hamayanさんのポートの数の指摘を頂いて気付きました。
シフトレジスタでなく、パラレルのラッチ(レジスタ)で出来るのではないかと。

8bit出力のパラレルラッチを8個用い、
 H8とデータ入力(8bit)とOE(Output Enable)を共用で接続、
 H8と各ICのLE(Latch Enable)を一本づつ接続、
とすると、8+1+8で17本でいけます。この数だと大丈夫です。
(欲しい64本のH/L出力は、外部機器へのGATE信号を出すという目的でして、全て
同じ扱いです。)

シフトレジスタを8個数珠繋ぎすると、「H8からの出力は2本で済む」というメリッ
トはありますが、64bit送出するまで出力を確定出来ませんね。(それでもいいのですが)
また、H8とICを1対1で繋いでも2x8で16本必要なので、パラレルラッチより1本少
ないですが、8bit送らないといけないので出力が確定するまでの時間がこちらの
方が多少遅いですね。

↑のように考えましたが、このパラレルラッチの繋ぎ方に何か問題があれば、ご
教授頂きたく思います。

( 実はDACのIC(8bitパラレルデータ入力、ラッチ式)も同じ方法で繋ごうと考えて
おります。 )


>半分洒落で答えていたhamayan です。
>
>nisshan> 「シフトレジスタで検討する」と言ったものの、シフトレジスタを出力ポートと
>nisshan> して使用する方法が分かりません (^^;
>nisshan> (すいません、シフトレジスタを良く分かっていません)
>
>なんかややこしい事になってきている様な・・・
>ちょっと整理した方が良いのでは。
>元の投稿では、シリアル等を抜かして、なんだかんだで”全部”で60本
>程度の入出力が必要だ!と思ったのですが。足りないのが60本なのでし
>ょうか。
>本当は足りない入力は何本で、出力は何本でしょうか?
>
>nisshan> というのも、シフトレジスタとは、
>nisshan> 「シリアルにてデータを流し込むと、クロックのたびに、
>nisshan> ポートnの出力がポートn+1にシフトして出力される」
>nisshan> ものだと理解していますが(さっき知りました)、これだと
>nisshan> 「ある特定のポートnだけをH/Lしたい」
>nisshan> 場合にはどのようにソフト制御すればいいのでしょうか?
>nisshan> 
>nisshan> 基礎的な質問になって申し訳ないのですが、ヒントを頂ければ幸いです。
>
>そうですね、単なるシフトレジスタでは出力がばたついてしまいますか
>ら、シフトレジスタの後ろにレジスタとか、ラッチが必要かも知れませ
>ん。つまり、164と273を組合わせるイメージです。
>
>パラレルI/Fの周辺ICなら、古典的な8255とか71055が有りますが、もう
>秋葉界隈では入手できないものなんでしょうかね。
>今ならFPGAやCPLDで対応しちゃうんでしょうね。
>
>
>これは趣味の電子工作ではなく、業務ですよね。ハードウエア追加し放
>題みたいですし。
>そもそもこれだけバリエーションのあるマイコンの中で、3048だけしか
>選択肢が無いのは業務命令?
>HEW上でC言語を使って開発する分には、HEWのお任せウイザードのお陰
>で、プログラマーが意識するH8とSHの違いは少ないと思いますが。

趣味で作っております。共同で開発してる人の環境と合わせる理由もあり、H8で
行っております。

 -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- 
        西本 晋也
     E-mail : nisshan@xxxxxxxxxxxxxxxx
 -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

スレッド概略
[4097(R)](起点)
 └[表示中]
   └[4113(1)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]