昨日横浜であったCypressの無料PSoCセミナーに初めて行ってきました。PSoCはじめて触ってきた。
他にセミナーというものに行ったことがない(就活したこともないし)ので比較しようがないけど、かなり良いかんじだった。Tシャツと開発ボードキットと4000円相当のライターもらったし、昼の軽食のサンドイッチも美味かったし。
PSoCが使われている製品の展示にiPod nanoやゲームボーイミクロや、VAIOのFelicaリーダ付き無線キーボードがあった。静電容量タッチセンサをCapSenseという名前でパッケージングして簡単に扱える様にしてるらしくて結構採用されているみたい。
今回の写真:PSoC Express Seminar – a photoset on Flickr
■PSoCとは?
PSoCは”Programmable System on Chip”の略で、1チップの中に回路と普通のマイコンが入っている感じです。
どういう事かというと、
普通のPICやAVR等のマイコンは、各ピンにそれぞれ専用の機能や特徴があり、それを回路に結びつけ、その後ソフトウェアを書いて各ピンやレジスタの動作を定義するという手順でシステムを作っていました。これは変更が難しくて、最初からかなりきっちり設計する必要がありました。
しかしPSoCでは、
1.チップ内にアンプや論理回路を組める
2.それを汎用のピンに自由に結線する
3.それの動作を定義するプログラムを書く
4. 1~3を1つにまとめた「API」を作って、再利用できる
という風に変わります。もしかしたら電子工作が「回路図とプログラム」という分断された形ではなくて、「スクリプト言語のモジュール」の様に流通する様になるかもしれない。
そうなると、人の書いたプログラムを参考にして自分のプロジェクトに書き写すのではなく、
「今日は~~さんのタッチパネル制御ドライバと~~さんの加速度センサジェスチャードライバを使って3行で書けました、ホラ簡単でしょ?」という風になる可能性がある。
(PSoCのCPAN作って欲しい)
■PSoC Expressセミナ
んで今回は、PSoC Expressという開発環境のセミナーだったわけですが…
最終的にこんなややこしいシステムも、20分ぐらいで作れてしまうというかなりヤバげな開発環境でした。可変抵抗に繋いだADCの値を2台のマイコンでI2Cで共有して、片方はLCD、片方は7セグ4桁ダイナミック点灯。
プログラミングはMax/MSP風にinとoutの部品を線でつないで、プロパティ設定して、if(){}then{}などを挟んだりしてシミュレータで動かす。
その後実際にinとoutの部品に対応させるピンを選ぶ
これがPSoC Expressでの開発で、ある程度PSoC Expressで作ってからPSoC Designer(普通のアセンブラやCで書くIDE)にプロジェクトを書き出す事もできる。
今回の開発ボード CY3121
4つのマイコンボードが1枚にくっついている
ちなみにPSoC Expressは無料で公開されています。
PSoCの開発環境はC言語コンパイラ16000円とライター4000円。アセンブラでやる分には今回もらったライターだけで十分らしい。
・PSoC Express
・PSoC Designer
Read more