segtter の電子工作ルーズリーフ / FRDM-KL25Z で Sparkfun Color LCD Shield を使う

FRDM-KL25Z で Sparkfun Color LCD Shield を使う

Arduino の形をした mbed 基板 (?),FRDM-KL25Z でシールドを使いまわしてみる.CPU パワーの面で厳しかった LCD シールドをより高速に制御しようと試みるも…

初出 2013-05-10
最終更新 2013-05-10

概要

新たに mbed IDE 対応ボードとして仲間入りした Freescale 社の評価ボード“FRDM-KL25Z”[1] は,Arduino ボードと互換性のあるピン配置で設計されているという点で,これまでの mbed とは異なる.

Arduino の半ピッチずれた独特なピンアサインは,すでに各種マイコン・ボードの事実上の標準規格として定着し,他機種の基板でもこれらの拡張基板が (概ね) 転用できるというメリットをもたらした.
現在でこそ Arduino Due という高速版が純正で出ているのだが,実際にシールドのなかには液晶や有機 EL など,AVR で高度な処理をするとなれば力不足を感じられるものもある.FRDM-KL25Z は,超低価格 ($12.95) で 32 bit MCU 搭載,かつ手頃に扱えるプログラミング環境の mbed IDE 対応と,かなり魅力的に感じられる.とにかく楽に何かを動かしてみたい場合に最適なボードのひとつだろう.

さて,手元には Arduino で使おうと思って入手したはいいものの,ろくに活用していなかった Sparkfun の LCD シールド[2] が転がっていた.少しはきびきびと動作してくれることを期待しつつ,mbed 化した FRDM-KL25Z でこれを制御してみることにする.

Sparkfun Color LCD Shield (LCD-09363)

設計

Sparkfun が公開している Color LCD Shield ライブラリ (GitHub: sparkfun/ColorLCDShield) を改造し,mbed へ移植.AVR のデバイス依存部分だけを mbed のライブラリに変更し,他はそのままとした.

制作期間

< 1 日

写真

クリックで拡大写真をご覧になれます.

ライフゲーム.128 × 128 セルの判定処理そのものは比較的軽いのだが,RAM 上にバッファエリアを 2 面ぶん確保するために,1 バイトに 8 セルを詰め込んでいる (それでも合計で 4 kB が必要).ちょっと色は付けられそうにない.LCD への転送は,バッファ間で排他的論理和を取り,前世代から変化のある部分のみバイト単位で送る.パターンが小さい内は,それなりに速い.

雑感

外部リンク

  1. FRDM-KL25Z Product Summary Page
    http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=FRDM-KL25Z
  2. Color LCD Shield - SparkFun Electronics
    https://www.sparkfun.com/products/9363
もどる