3-Wire Interface for LCD Display - AN2138これなら8pin PSoCにもLCDを繋ぐことができる。
いや28pin PSoCにLCDモジュールを複数繋ぐ時(必要かどうかは別として)にも使えるかもしれない。
2008-07-09(Wed) | PSoC | comment : 0 | Trackback : 0
PONGSOC (IN COLOR!) - AN13781PSoCでカラーのゲームができる。面白いのだけど、ちょっとびっくりなのは、この回路。

DigInvを使って水晶発振回路を形成している。考えてみればなるほどと思うが。
なんか面白い使い道がありそう。
2008-07-08(Tue) | PSoC | comment : 0 | Trackback : 0
トランジスタ技術2008年7月号の243ページ、「ラジオ時報で時刻を校正する高精度デジタル時計の製作」で使われていたPSoC用の基板を
Asa工房からゲットしました。

ご覧のように真ん中で割る事ができます。

電源、グランドパターンが広くとってあります。
外部オシレータ用のパターンもあります。

24MHzのオシレータとICソケットをのせてみたところ。
2008-06-27(Fri) | PSoC | comment : 1 | Trackback : 0
先の周波数カウンタに簡単なアンプを付けてみた。
PSoCのデジタル入力はシュミットトリガになっている、ただし
TTLレベルなのでVRを調節してドレイン電圧を1.5V位にしておく。
100mVp-pぐらいから正常にカウントするようだ、
まだ周波数特性までは測定していない。
2008-06-04(Wed) | 電子工作 | comment : 0 | Trackback : 0
私が作ったのではありません。
こちらの
PSoCの部屋の
カウンタの実験で詳しく記されています。
1KHz以下ではレシプロカル式・すなわち周期を測定し逆数を計算して周波数を求めています。このときの分解能は0.1Hzで、直接計測式でこの分解能を実現しようとするとゲートタイム10秒になってしまい実用的ではありません。
早速実験、とりあえずPSoC単体で試しました、入力アンプは付けていません。

手持ちのパルスジェネレータで300Hzを入力したところ。

1.2KHzを入力したところ。
直接計測式とレシプロカル式が切り替わっています。
いやぁ、いいですね、これ。
2008-05-22(Thu) | PSoC | comment : 1 | Trackback : 0
以前作った
オシレータを繋いでみた。

このオシレータの上限は約30MHzなんだけどどうやら問題なくカウント出来ているようだ。
ちなみにLCD右上の数字が電池の電圧、右下が温度。
2008-05-20(Tue) | PSoC | comment : 0 | Trackback : 0
恥ずかしながら公開します。

前に公開した回路図では一部省略がありました。
9Vの電池を使うことを想定して、電池の電圧を表示できるようにしてあります。
さらに温度センサのLM35DZを使って温度を表示しています。
プロジェクトファイルは
http://briefcase.yahoo.co.jp/konyack2001
に置いてあります、PSoCというフォルダの
DualFcounter2946.lzh
です。かなりいい加減なコーディングです(汗)
2008-05-20(Tue) | 未分類 | comment : 1 | Trackback : 0

入力をCPUクロックに繋いでみた結果が、左の写真。
当然12,800,000Hzとなるはずだと思ってたんですが・・・。
何でやねん??1カウント多い。
配線ミスかプログラムのバグかと調べたあげく、ようやく前の記事の結論に達しました。

だったら入力信号を反転してやればいいのでは、と思いつき配線を一部変更し、2つあるカウンタの1つにを反転した入力信号を入れてみました。
ちなみに74AC00は74HC132に、74AC393は74HC393に変更してあります。
配線も一部変更してます。
74ACシリーズは高速な分、グランドや電源ラインに注意が必要で、今回は撤退します^^;

結果、入力信号を反転したカウンタ部はめでたく12,800,000Hzとなりました。

などと喜んでいられません。
入力に何も繋がないのに信号反転したカウンタ部は1Hzという表示が・・・。
これは想定内の結果で、前回の記事で入力がHレベルのままなら当然こうなります。
で、思いついたのが2つのカウント結果を比べて小さい方を採用すればいいんじゃないか。
でもなぁ、今回の実験ではゲートパルスと入力信号は同期しているけど、実際の周波数測定では非同期があたり前田のクラッカー(古^^;)なんだし、そこまでする必要があるのかどうか。
2008-05-16(Fri) | 電子工作 | comment : 0 | Trackback : 0

周波数カウンタのおおざっぱな構成は左図の通り、ゲートパルスが開いている間に入力信号をカウンタで数えて表示すると周波数カウンタになる。
ゲートパルスの幅が1秒ならその間に数えたパルス数が周波数になる。
さて真ん中の図のタイミングを考えてみる。
ゲートパルスの幅は1秒、入力の周期も1秒、すなわち周波数は1Hz。
ゲート出力は入力とゲートパルスのAND(論理積)なので、ゲート出力は図のようになりカウンタは2進む。
すなわち2Hzとカウントされてしまう。
下の図のタイミングでは1Hzとカウントされる。
図ではわかりやすくするために入力は1Hzとしたが、これが1KHzでも1MHzでも同じである。
要はゲートパルスと入力のタイミングによって1カウントの誤差が生ずることになる。
2008-05-16(Fri) | 電子工作 | comment : 1 | Trackback : 0

PSoCを使ったデュアル表示の周波数カウンタ。
ストロベリー・リナックスの
PSoCマイコンボードに組み込んだ。
PSoCの内蔵オシレータは精度がよくないので、秋月電子の
高精度クリスタルモジュールを
外部クロックとして使っている。ただ発振周波数が12.8MHzなので測定できるのは半分以下の約6MHzまでとなってしまう。
単純にカウンタ(プリスケーラ)を付けただけでは分解能が悪くなる、そこでカウンタの出力を読み込むことにした。

そのためカウンタの前にゲートが必要になる、またカウンタのリセットもしなければならない。
ここでは74AC00と74AC393を使ってみた、100MHz近くまで動作する高速ICである。
こんな高速なICだとグランドと電源周りをよほどしっかりしておかないとノイズに悩まされることになる。
最初、動作が不安定だったのでグランドや電源ラインを見直して何とか安定動作するようになった。

実験中。
2008-05-13(Tue) | PSoC | comment : 3 | Trackback : 0