• ベストアンサー

周波数を10倍にして出力する回路はありますか?

周波数(1Hz~150Hz程度の方形波)の信号を入力すると、 10倍の周波数を出力するような回路はできないでしょうか? 正確に10倍にする必要があるので、誤差はできるだけおさえたいと思っています。 PICを使用してトライしてみましたが、なかなかうまくいきませんでした。 PICを使用した場合のやり方、また、その他の方法でもいいので、 何かいい方法はないでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • pc_net_sp
  • ベストアンサー率46% (468/1003)
回答No.4

再度お邪魔します。 補則を読むと結構私の考えた方式で行き詰まっていたんですね。 入力と出力がかぶると処理が遅くなるのは想定していましたので、出力側のタイミングを1msec~10usecずらして出力するように、手を加えてみては如何でしょうか?? それでも可変なのでかぶる確率がありますが、その時は入力1クロック分だけ不安定になるかと思います。 ただ原因が入力と出力のタイミングがかぶったせいで無い場合は、出力タイミングをずらしても意味がないです。 予断です。 特定周波数をPICで出力させて、x分周で入力されたかをLCDで表示させる事は、1個のPICで出来ると思いますが・・・ 74HC系・4000/4500系ICの動作チェックさせる、ICチェッカーを作ってWebで公開されている方がいました。 が、URLなど控えていませんので少し後悔しています。 (しかも、回路図からプログラムまで公開していました。) 入出力が逆で、x倍のクロックを出力させるのは、ちと骨が折れますね!! お二方も気にしている5倍の正確なクロックが出せれば、あとは楽だと思います。 1つハードルを下げて実験するのも手だと思います。 PIC16F628Aは、20Mhzで動かしていますか??  12.8Mhzで動かして試してみては。 複雑になりますがPIC28Pinに変えて20Mhzで動かし、ベースクロックを別で12.8Mhz・4.194304Mhz・32.768khzのどれかでとり、時計を作成する要領で、分周にかける方法もあるかと思います。 再度、かなりプログラムは複雑になります。この方法だとPIC18Pinを2個にした方が良いかと思います。 ただデメリットは、PIC2個の通信タイムラグが吉と出れば良いのですが・・・ PICに限らず、AVR・H8・ARM他も考えてみる必要もあるかも(専門外ですが・・・) トラ技雑誌で、PICでないマイコンでなんかあったような気がしますが、気のせいかも・・・ 予断事を長々書いて、混乱させる事も多々書いてしまいましたね!!    お邪魔様でした。 m(_ _)m   

Takenori01
質問者

お礼

PICを使うにしても、いろいろな方法がありますね。 もう少し自分でいろいろと試してみます。 ありがとうございました。

その他の回答 (3)

  • fba
  • ベストアンサー率26% (64/241)
回答No.3

…実験した事はないけど。  どういう手段でもいいなら、周波数カウンタで測った周波数を10倍してプログラマブルな発振器に突っ込めば目的は達しますよね。PICで周波数カウンタもプログラマブルな発振器も作れる筈なので、1個では無理かもしれませんが2個使えば何とかなるのでは。  トライしてみたという構成が上記のような仕組みなんじゃないかと思うんだけど?どの程度の精度が必要なくらいは質問の段階で書いておいて欲しい。  アナログ回路などでするのは面倒だよなぁ。一般的な2逓倍や3逓倍では10倍が作れないし5逓倍だとやや無理があるし…。

Takenori01
質問者

補足

ご回答ありがとうございます。 PICを2個使用することも考えましたが、実際にはまだ実験していません。 やはり、PIC1個では難しいのでしょうか? パルス幅の監視用、10倍したパルスの出力用に分けて実験してみます。

noname#252164
noname#252164
回答No.2

難しいですね。 方形波をその周波数の5倍の周波数の同調回路で受けると5倍周波数の交流が出てきます。 交流を全波整流回路で整流すると元の周波数の2倍の周波数の脈流が出てきます。 こんぽ脈流をシュミットトリガで成形すると 5×2倍で10倍の周波数が出てきます。 ただ、これって同調回路のところで周波数が決め打ちされているので、元の周波数が変動すると性能が出ません。 あとはPLLを使うって手がありますが、結構回路規模が大きいし、安定度と周波数変動に対する追従性などを考えるとなかなか難しいです。 うまくいかなかったって、どこがうまくいきませんでしたか?

Takenori01
質問者

補足

ご回答ありがとうございます。 PIC16F628Aのキャプチャ機能を使用して、波形の周期を測定し、その10分の1の周期で波形を出力(タイマー割り込み)できるようにしようとしましたが、割り込み中に割り込みが重なっているのか、思ったより低い周波数が出るようになりました。もう少し原因を調べてみます。

  • pc_net_sp
  • ベストアンサー率46% (468/1003)
回答No.1

PICやAVRで方形波を出力出来ると思いますが・・・・ 使用するPICなどにより綺麗に出力されません。 >正確に10倍にする必要があるので、誤差はできるだけおさえたいと思っています。 PIC24・PIC32あたりを使うのが宜しいかと思います。 既製品でクロックアップさせる商品は、私は見聞きした事がありません。 入力が1Hz~150Hzと可変ですので、自分で頑張ってプログラムを組むしかないと思います。 P.S. 「プログラムを教えて」は、NGです。  

Takenori01
質問者

お礼

ご回答ありがとうございます。 やはり周波数が可変の場合はプログラムを組むしかないのですね。 PIC16シリーズしか使用したことがありませんが、 PIC24,PIC32シリーズについても調べてみます。 ありがとうございました。