2013年3月14日木曜日

mbedアプリケーションボードのLCDを使う


python-on-a-chip(pymite)のmbedライブラリの動作確認とAceコードエディタの使い勝手のテストを兼ねてmbedアプリケーションボードのLCDを使ってみました。
C++のLCDクラスライブラリを使わずに、pythonでクラスを作って直接mbedライブラリのSPIクラスを使っています。もちろん、LCDへのコマンドやデータの送り方等はC++のを参考にしました。フォントは以前使っていた美咲フォントの8x4サイズのを使っています。

C++のLCDクラスライブラリではLCDに書き込むためにbufferを用意しているが、
pymiteで なにげなくリストで buffer = [0]*512 で確保すると途端にメモリ不足になります。
ループを回すのに for i in range(128): もリストを作るのでメモリ不足になりやすいです。

Aceコードエディタはインデントで折り畳めるので1つのソースファイルでも結構書けそうです。
ただし、コンパイルエラーでWebページをリロードすると折り畳んだのが開いてしまうので、
Webアプリでは工夫の必要があります。

以下、pymiteで書いたコードです。
http://mbed.org/users/va009039/code/pymite/wiki/app-board-LCD
バイトコードのサイズは6,276バイトになりました。

その他に温度センサLM75BとRGB-LEDのもpymiteで書いてみました。
これでI2CとPwmOutのライブラリの動作確認が出来ました。
http://mbed.org/users/va009039/code/pymite/wiki/app-board-LM75B
http://mbed.org/users/va009039/code/pymite/wiki/app-board-RGB

(2013/3/14)
---

0 件のコメント: