コメを噛め

コメを噛め

rerofumi の電子工作メモ

hatena bookmark

PSoC3/5 の開発環境は新規に提供される “PSoC Creator” というものになる。PSoC1 の “PSoC Designer” とはまた違った感じの特徴がある代物。

psoccreator_01
PSoC Creater にはARMのGCCが含まれており、PSoC5ではそれを利用することとなる。
PSoC3 の 8051 Cコンパイラは Keil の C51 を利用するが、別ダウンロードでインストールする必要あり。C51 は30日間の free trial なので一応すぐ利用する事が可能。そのあとはライセンスをアクティベートする必要があるのだけれども、ここではとりあえず省略。

CD 内にある PSoC DevelopmentKit つーのはドキュメントやサンプルをインストールしたり Keil C51 をダウンロードしてインストールしたりするお役立ちバッチの模様。

psoccreator_04
PSoC1 の時は PSoC Designer を立ち上げるといきなり内部ブロック配線図が表示されてびっくりしたけれども、PSoC Creator の場合は回路図エディタがでんと表示されてそれなりに度肝を抜かれる。
必要なユーザーモジュールを配置していくところから始まるのは変わらないっぽい。

まずは PSoC の定番、プログラムに依らずにモジュールだけで LED チカチカでもやってみましょか。


PSoC Desighner は内部のブロック構成が見えていて、そこにモジュールをはめていくといった電子ブロックの様な楽しみがあったけれども、PSoC Creator ではそういったチップ側の都合は隠蔽されていてより抽象度の高い形で設計を進めていくことになる。
俺はこういう機能が必要なんだと設計すると後は開発環境とコンパイラとチップがうまいことやってくれるとかそんなイメージで。

psoccreator_05
カウンターも置いてからビット数を決める形に。そのビット数でいくつデジタルブロックが必要なのかということはあまり考えなくて良いということになったらしい。もちろん裏では考慮しておかないとブロックが足りなくてビルドできないということになっちゃうけれども。

モジュールを置いて、IN/OUT も決めましたと。次にピン配置をどう指定するの?
psoccreator_06
リソース編集を開くと、ピンアサインや割り込み管理などといったチップとソフトの間のリソースが管理できる模様。
このピンアサイナーをみて「おーっ」と思った人は PLD 開発の経験がある人ではないだろうか。逆にマイコン開発しか経験が無い人はただただ面食らうような、そんな気がする。

psoccreator_08
今回作ったLEDチカチカモジュール。カウンターを使いたかったので 24MHz クロックを入力しているけれども、 1KHz の低周波クロックもあってサンプルコードではそれを利用していた。
右の方にある緑の四角はピンIN/OUTモジュールで、ピン出力するときはこれを使うのがお作法らしい。ソフトウェアでIN/OUTピンを使うときもこのモジュールを置いておいてソフトウェアアクセスに設定しておく。メリットは数ビットまとめたバスにできることと、ポートセグメントを気にせずにバスアクセスできること、名前が付けられることなど。チップやレジスタレベルでのポートも抽象化してしまう方向なのだろう。
ちなみにビルド中このモジュール図が VerilogHDL にいったんトランスレートされてからフィッティングしているみたいなんだけれども、見た限り HDL を直接書くことはなさそう。難しそうではなくて、なさそう。

psoccreator_07
モジュールを動かすのに Counter_1_Start(); などとライブラリをたたいて始動させるのは PSoC1 と同じ。なので、ソースコードを必ず書くことにはなる。
そして Miniprog3 でソースコードデバッグをしているところ。これがうれしい人も多いんじゃないかな。

dsc00916
そんなこんなで LEDチカチカが完成。
プログラムを書いていないので消化不良だけれども、これで開発の流れは見て取れたのではないかと。

なんというか、PSoC Designer や PSoC1 の頃はマイコンプログラミングが主で便利な周辺回路が従な感じだったけれども、PSoC Creator は完全にモジュール設計がメインになっているっぽい。それらモジュールを制御するためにソフトウェアがあるといった雰囲気で。
PSoC そのものが主役になるんではなくて、回路の一部分をまとめて引き受ける便利屋さんとかそんな視点で作られている様に見受けられる。

全体的に、PLD の開発経験があると入りやすいなあというのが印象。

2 Comments to “こんにちは!PSoC3 ~ PSoC Creator の世界”

  1. fenrir Says:

    新しいPSoc3、とても魅力的ですね。Silicaon LablatoriesのC8051をつかっている者としては、特に8051+DMAという構成に引かれるものがあります。開発キットがはやく価格、入手性の点で手ごろになってくれるといいなぁ、なんて思っています。

  2. rerofumi Says:

    いまのところ「使える!」というより「おもしれぇ!」と言う方が勝っている感じですが、それはそれで良いのかもしれませんね。
    システムレベル開発を指向している PSoC Creater でもソフトウェアは書かないとならないあたりに色々考えたいところがあるかも。

Leave a Reply