ここんところ、いろんな講座や講習会にでることが多くて
意外に楽しんでいたりします。
GENET 画像処理分科会 では、ひさびさ?にガッツリ受講生していますし。
テクノス株式会社の利弘さんが講師なのですが、。話慣れてるのか、
キャラが立ってるのもあって、おもしろく聞かせてもらえてます。
まだ、第一回が行われたばかりで、本題には入っていないわけですが
のんびりとでいいので、しっかり教えて欲しいところです。
僕的には、
- アルゴリズムや手法の組み合わせの妙
- 実装事例
あたりが、ざっくりでもいいのでみれればいいなぁ、とおもうのですが
さすがにここらあたりは、経験的なものだろうし、仕事のキモになる部分でしょうから
なかなか教えてもらいにくいところかもしれません。
まぁ、ゆっくり、落第しないようにがんばりたいところです。
閑話休題。
7月に、サイプレス社のPSoC3ワークショップに行ったわけですが
実際に、手元のボードで、チコチコと遊んでみています。
ワークショップのお題を適当にやってみたら、おおむねわかってくるんですが
逆に言うと、あまりにも従来版の考え方とちがうので、「???」ってなるカンジですね。
PSoC Creater2.0 を立ち上げて、まずは利用コンポーネントをスケマティック画面に
貼り付けて配線しちゃいます。
画面では3つのブロックでつくっています。枠囲みはとくに意味はないので
ほんとうに図面チックに進められます。(ただし、日本語入力が×なのはご愛敬...)
今回は、ワークショップの例題どおり、
1.ボタンの割り込み取得でLEDの点灯
2.VRの値に応じて、LEDをPWM点灯
3.VRの設定値をLCDに表示して、バーグラフ的にも表示させる
っていうのを一度に実装しちゃおう!的内容です。
このうち、2についてはハード的にPGAがやってくれるので、コードが
ありません。(初期化&開始処理のみ)
これをソフト的にやろうとすると結構面倒くさいので、PSoCの面目躍如といったところでしょうか。
で、これがソースコード一式。
メインループ内ではADの変換完了をまって表示に展開しているだけです。
う~ん、お手軽感が伝わらないけど、まぁそれなりにおもしろいなぁと。
今回はAD値を12bitのΔΣにしたけど、20bitまではいけるのでいろいろ
おもしろいことにはつかえそうなカンジですね。
実際に動作させている写真はこれ。
基板左端のVRを回すとLEDがそれに応じて光るわけです。
そのときのVRの取得値はADで取り込んでLCDに表示すると。
さて、実際にここまでやってみて、おもしろいとはおもうんだけど、
スケマティックで変更したり、ユニット追加してから、ソースツリーに
対応ソースが生成されるまでに差があって、そのままではうまく追加されない
ことも結構あって、関数名をさがせないことが結構あったりします。
まぁ、スケマティックを変更したら、その場で一旦Buildしちゃえば
生成されるわけだけど、それなりに時間がかかるので、もうすこしなんとかならないかなぁと。
ま、PSoCデザイナーのダメダメぶりとはひと味ちがうかんじで、これなら許せる感じに
しあがってますね。
あとはもうすこしわかりやすい、チュートリアルがそろってくればいいのかなぁ。
あ、そうそう、デバイスの価格が高いのもちょっと問題かもしれず。
いまつかってるPSoC3の最上位版だと2500円くらいかかるので
安いCPU+CPLDとの差別化がうまくいくかどうか、が問題かもしれませんな。