前回のエントリで、ほぼ100%の人間がハンダコテだけでなく、ハンダ吸い取り線やハンダ吸い取り機まで持っている事が判明しましたので、ベルーガさんの

無題

は誤りだったと判定しました。

さて以下備忘録を兼ねたつぶやき。

今回いろいろとPICマイコンに触れるにつれて、日本のPIC界には後閑哲也氏という方がおられて、この人のおかげでPICはずいぶん広まっているんだなぁと知りました。
ウェブページはこちら。
http://www.picfun.com/

当然ながら自分もお世話になっていて、本もなんだかんだで、既に3冊程購入しました。

PICで楽しむAndroidアクセサリの自作
たとえばこの辺。

PICマイコンにはさまざまな種類があって、一個50円から、高いもので600〜700円です。
今回利用しているPIC24FJ64GB002は結構お高めです。ちなみに秋月電子にも売ってません。

このPIC24は16ビットコンピュータで、今回の設計では32MHzで動作させてます。 

ま〜昔のPC98程度の能力があるという感じでしょうか。
なんでこんなに高いPICを使っているのかというと、USBホストを実装したかったからです。
USBクライアントなら、PIC16シリーズという安くて高機能なCPUがあります。

このPIC24のファストスタディに丁度よいページを見つけました。

名古屋アンドロイド勉強会のページです。
http://www.slideshare.net/magoroku15/poormans-adk-11350123 

ざ〜くりとアンドロイドとPICの接続について解説しています。
このようなわかりやすいドキュメントを作れるなんて、すばらしいです。

アンドロイドといえば、今回USBアプリを作れるのは、USBライブラリをGoogleが提供しているからです。
こちらにその説明があります。
http://developer.android.com/guide/topics/connectivity/usb/accessory.html 

このライブラリは、Android3.1、つまりタブレット用のAndroidOSから実装されていますが、Android2.3にもバックポートされています。(ただしUSBクライアント側)
IcecreamSandwitch、つまりAndroid4.0からはUSBのホストクライアント、両方サポートされていますが、ホストになれるかどうかは端末側の実装に依存します。
今回PIC側をホストにしているのは、これが理由です。Android端末はクライアントになれるのはガチですが、ホストになれる端末は数が少ないのです。今のところ。

フューズさんの情報により千石に電源があるという事で急行。
久々のエイプです。
iPhone 002
エイプは速い。
都内下道なら、どんな中型大型にも負けない気がする。
いや、小型スクータには負けるかもしらんけど。 

電源は、、、ちょっとサイズが。
サイズといえば、前回箱に入れたのですが、このサイズはSDRに入らない気がしています。
いやきっと無理。

だもんで千石で悩むこと30分。
一回り小さいタカチの箱+基板をば。
iPhone 005

 高さは20mmなので、これでもどうかなーってな感じ。
まぁ大丈夫な気がしますが、後は現物あわせっすかね。

となると高さが厳しいのはコンデンサです。
抵抗やらコンデンサなら千石地下、という事で行ってみる。
iPhone 001
 
小型電解コンデンサです。 
iPhone 006

高さが非常に低かったりします。半分以下。
便利な世の中ですね〜。
お値段はちょっとお高めの20円。

さて話は変わって、PIC側のプログラムですが、基本的には以下のような要件を考えています。

PIC入力
・設計上20,000rpmまで動作すること
・500rpm以下はエンジン停止とみなしてYPVS全開制御すること
・パルスは割り込みで感知し回転数を計算、ポテンションメータから読み込んだYPVSの角度を調整すること
・高レスポンスモードでは±100rpmを、低レスポンスモードは±500rpmをスレッショルド感知

設定
・設定値はAndroidから書き込み可能とすること
・ノーマル準拠とカスタマイズされた2通りのパターンを持つこと
:切り替えSWを持つこと
 SWは短絡(GND)でノーマル、オープンでカスタム
・高レスポンス、低レスポンスモードにより敏感さを調整

Android表示
・エンジン回転数、YPVSの角度、コントローラ温度、現在の設定値、
・設定画面、デバッグ情報の2ペイン
・最後は絵的に凝る

こんなところっすか。