PICでは60円と格安な16F54を使用した周波数カウンタを作ってみました。
16F84Aではポート数が足りないので、16F88への移植を検討したり、他のPICの在庫を調べたりしているうちに16F54を使用した周波数カウンタを見つけたので早速作ってみました。
作ったのは、JA0BASさんの「CNCプリント基板作成機の自作に挑戦」サイトに掲載されている「超簡単 超安価 PIC16F54 8桁8PIN 周波数カウンター」です。
16F54はI/Oとタイマー0だけの構成です。T0CKIから外部信号はカウントできますが、割り込みがないので、自力でオーバーフローをチェックする必要があります。
ちなみに20本I/Oの16F57も70円と格安です。
ドライバのトランジスタと電流制限抵抗は省略しました。
Charlieplexing接続なので、n本のI/O線があれば nx(n-1)個 のLEDの制御ができますが、変則的な配線が大変です。
今回は8本のI/O線で、8桁x7セグメントです。
闇雲に配線すると間違えるので、配線の手順にはコツがあります。
rb7に接続する線を最初に配線します。aからgの順に接続していき、pは使用しないので、アノードコモンが最後です。
あとはa同士の渡り線を接続しますが、rb7へ接続済みの桁はアノードコモンに接続します。
以下b同士、c同士、・・・g同士の渡り線をします。
変更部分の回路図です。
LEDの裏側です。独立2桁LEDを4個、両面テープで貼り付けて8桁にして、ポリウレタン線で渡り線を配線してあります。
とりあえず、7セグLED側で配線を済ませて、ブレッドボードでテストしてみました。
入力アンプも省略して、14.318MHzのCXOの出力をT0CKIにつなぎました。
ドライバを省略しているので、さすがに暗いです。
画像処理でかなり暗くしてみました。
48MHzのCXOです。
60MHzCXOです。
このあと80MHzのテストをしてみましたが、正しいカウントでできませんでした。
60MHzまで測定できれば十分ですし、7セグなので必要な桁数のみ配線すればいいので簡単です。
あとはオフセット計算を追加しようと思っています。
16F84Aではポート数が足りないので、16F88への移植を検討したり、他のPICの在庫を調べたりしているうちに16F54を使用した周波数カウンタを見つけたので早速作ってみました。
作ったのは、JA0BASさんの「CNCプリント基板作成機の自作に挑戦」サイトに掲載されている「超簡単 超安価 PIC16F54 8桁8PIN 周波数カウンター」です。
16F54はI/Oとタイマー0だけの構成です。T0CKIから外部信号はカウントできますが、割り込みがないので、自力でオーバーフローをチェックする必要があります。
ちなみに20本I/Oの16F57も70円と格安です。
ドライバのトランジスタと電流制限抵抗は省略しました。
Charlieplexing接続なので、n本のI/O線があれば nx(n-1)個 のLEDの制御ができますが、変則的な配線が大変です。
今回は8本のI/O線で、8桁x7セグメントです。
闇雲に配線すると間違えるので、配線の手順にはコツがあります。
rb7に接続する線を最初に配線します。aからgの順に接続していき、pは使用しないので、アノードコモンが最後です。
あとはa同士の渡り線を接続しますが、rb7へ接続済みの桁はアノードコモンに接続します。
以下b同士、c同士、・・・g同士の渡り線をします。
変更部分の回路図です。
LEDの裏側です。独立2桁LEDを4個、両面テープで貼り付けて8桁にして、ポリウレタン線で渡り線を配線してあります。
とりあえず、7セグLED側で配線を済ませて、ブレッドボードでテストしてみました。
入力アンプも省略して、14.318MHzのCXOの出力をT0CKIにつなぎました。
ドライバを省略しているので、さすがに暗いです。
画像処理でかなり暗くしてみました。
48MHzのCXOです。
60MHzCXOです。
このあと80MHzのテストをしてみましたが、正しいカウントでできませんでした。
60MHzまで測定できれば十分ですし、7セグなので必要な桁数のみ配線すればいいので簡単です。
あとはオフセット計算を追加しようと思っています。