100円タッチライトの改造 その4
先ほどようやくPIC18FのCTMUを使った静電タッチ検出が動くようになりました。
どうにも動作しないで悩んでいたのですが、原因はOSCCON(内部クロックの周波数決めているレジスタ)の設定漏れで、PICの動作クロックが遅い設定になっていて、CTMUのチャージ時間も異常に長くなっていたのがやっと分かりました。
一定チャージ時間での容量成分へのチャージ電圧を測定するのがCTMUの原理ですので、そのチャージ時間が長くなればダメですね。(^^;
とりあえず確認用電極を付けて、触ると対応したLEDが点灯するソフトを組んでみました。
回路は以下の通りです。最初のものにTouch0-Touch3をつけただけですが。
AN0-AN3をアナログ設定として、CTMUの入力に使っています。
上の写真の動作を動かしているソースコードは以下の通りです。
CTMUの制御はPIC18F25J11のデータシートの25.0 CHARGE TIME MEASUREMENT UNIT (CTMU)にあるコード例を参考にしています。(まだちょっと調整がいるかもしれません。)
次は音を付けて、いよいよゲーム化に進みたいと思います。
それではまたです。
コメント