[Essay] Kinetisという楽しいマイコン

ここんとこ、お仕事も絡んでマイコン弄りをやってる時間がまた増えてきた。これは自分にとっては非常に楽しい時間なんだけど、たぶん普通の人から見たらワケわからないんだろーなとも思う(^_^;)。おまけに、扱ってるマイコンは巷で販売されてる基板に載ってるような奴ぢゃないしな。

で、折角なのでここんとこずっと使ってるKinetisのマイコンをちょっと紹介してみようかと。

試作中の基板

モノはFreeScale…今は買収されちゃってNXPになっているが…が出してるKinetis。これのLシリーズをここ数年ずっと使っている。これ、マイナーなんだけどかなりの素敵仕様なのですわ。

●コア

コアはCortex M0+なので、重い算術演算をしない限りは概ね問題なし。クロックも48MHzまでイケるし、開発環境としてもSWD装備なので最近の環境から好きな奴を使えばいい。ぶっちゃけ、トラ技ライターでもある程度までは動くし(^_^;)。もっとも、トラ技ライターではなんかバイナリサイズ8KB超えぐらいでコケるようになったので、今はNXPのLPC-Link2でデバッグしてるけど。

●パッケージ

パッケージはいくつかあるけど、その中に5mm角の32pinQFNってのがあって、一般の実装屋さんで実装して頂ける点を考えると、ほぼ最小サイズに近い。BGAとか、結構嫌がられるみたいですからね(^_^;)。上記の写真のがまさにソレ。ケータイ撮影なのでちょっとボケてるけど。

RCサーボの基板なんて、酷いのになると1cm四方以下だからね(爆)。それでも4層を使わず、両面にしてるヲイラ(笑)。そんな時、このパッケージサイズはありがたいのよ。

●タイマ

タイマが複数装備されているんだけど、そのうちの一つがなんと6ポートも持っていて、なおかつ独立してPWM幅を変更できる。これ、BLDCやる時には結構対応がラクなんですわ。

さらに、専用のインターバルタイマもあって、割り込みだけ発生させられるので、制御周期なんかはそっちを使えばいいし、オマケに様々なトリガも自動で掛けられるようになってるので、そういう機能も結構素敵だったりする。

●ADC

どういうワケか、ADCの分解能が16bitもある。サンプリングもそこそこ速いうえに、ハードウエアによる平均処理まで可能。実はこのマイコンを採用する決め手の一つがココ。

RCサーボの場合、120度のスイングの中で0.1度をキメてくれと言われるんだけど、機構的には180度スイングも可能な構造になっているために、ポテンショはマージン込みで220度なんてのを使っている。

分解能0.1度を220度上で実装しろってコトは、2200ポイントでキッチリ止まって欲しいワケで、この時点で11bitでは足りず、12bitでギリギリ。しかも、それでは微妙に前後するし制御もシンドいワケで、さらにその4倍ぐらいの分解能が欲しいってコトになる。また、通常ADCの下1bitは結構揺れるので使い物にならない。この時点で既に15bit欲しいんだよね。

でも、ほとんどのマイコンのオマケADCって12bitなんだよね。色々調べたけど、あんまり他にはこのレベルのADCを積んでるのは見ない。実際問題、過去の製品で12bitで実装されてた時期のものは、やはりちょっと分解能的に難があったように思うんだけど、概ねその問題はコレで解消しちまったんだよな(笑)。

●消費電流

こんだけ色々あって全部稼働状態にしていても、せいぜい数mA程度しか流れない。某社のマイコンだと、下手すりゃ数十mA流れてたワケで、バッテリ駆動の装置としてはこの差はデカい。

特にホビーロボットの場合、20軸程度は普通にあるワケで、仮に20mAでも400mAもの消費になってしまう。これではバッテリはどんどん消費されちゃうよね。

●値段

こんだけ美味しい仕様で、なんとバラで購入しても単価200円台半ば。量産で数千個ってなってくると、100円台の前半だったりする。いやぁ、恐ろしい時代だよね…48MHzの32bitマイコンがこの値段ですよ(^_^;)。オマケに普通にデジキーとかでも買えるし。

 

とまぁ、色々ヲイラ視点で色々書いてみた。でも、コレももう数年前のチップなので、今はまだコレを使っているんだけど、将来的には別のシリーズのを使ってみたいなぁとは思ってる。実は他にもチョイと興味深いのがあるんだよねぇ、ココ(^_^)。

Zak について

基本的にヲタクです。いや、別に萌えとかいうのではなく、ハマるとトコトン進めようとする癖があるので、自制が必要だという…。
カテゴリー: なんか作る, マイコン, 電子回路 パーマリンク