ちびでぃーの2でばんとさんRT8564ライブラリー機能を確かめるため環境構築してます。
今回はPIC16F1827使用のキャパシティブセンシングキーをつなぎます。アドレスは0x70にしました。また、キーパッドは0x30-0x33の4つです。実験がわかりやすいようにキースレーブはキー判定情報(周波数)のダンプ表示を出しています。また、キースタートは立ち上がり自動にして、ちびでぃーの側からのスタートコードは不要にしました。
タイマー1で5mS作り、その時間のTMR0でキャパシティブセンシング発振器のカウントを行います。上の段が立上げ時4回平均値で各キー0x4E0ぐらいになってます。キーセンス判断する瞬時値が下段であり、2回続けて平均値より60低くなったらキーが押されたと判断します。そして該当PADにあわせ0x3x(xは0,1,2,3)をi2cポート0x70のREADポーリングで返します。
このキャパシティブセンシングキースレーブをちびでぃーのにつなぎました。ストリナのLCDが0x3E、RTCが0x51、そしてキーが0x38です。ちゃんと真面目にスレーブたちがつながっているのかはi2cアドレススキャンで確かめました。はじめこのCSMキーが応答しないので1週間ぐらいMPLABでPICKIT3つなぎ試行錯誤デバッグしました。なんと原因はPIC16F1827のPDAポートが壊れていたというお粗末でした。
キャパシティブセンシングキーの3番端子裏に触ってますので、0x33が返され、ちびでぃーの側のキーモニター表示が応答しております。
これでi2cにつながるRTCとLCDとキー入力が準備できました。これらを使ってまずはRTCに時刻設定を行うコードを書こうと思います。