加速度センサMMA8451Q用のmbedJS用ドライバを書きました。
@ban4jpさんが実装した加速度センサデモプログラムを元にして、加速度センサMMA8451QをmbedJSから使うためのドライバを書きました。
mbedJSで加速度センサー動かしたので、動画撮ってみた。 http://t.co/83Fv1PQpiH #mbed
— ban4jp (@ban4jp) 2014, 7月 7
こんな感じで加速度センサの値がとれます。
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript" src="http://mimic.sourceforge.jp/jsapi/mbedJS.all.js"></script> <script type="text/javascript" src="http://mimic.sourceforge.jp/jsapi/MMA8451Q.js"></script> <script type="text/javascript"> function get() { var mcu=new mbedJS.Mcu(document.getElementById("addr").value, { onNew:function(){ var dev=new mbedJS.MMA8451Q(mcu,[0x3A,mbedJS.PinName.p28,mbedJS.PinName.p27],function(){ dev.getAccAllAxis(function(v){ alert("Axis:"+v.x+","+v.y+","+v.z); mcu.close(); }); }); }, onClose:function(){ log("[PASS]onClose"); }, onError:function(){ alert("Error"); } }); } </script> </head> <body> <h1>MMA8451Q test</h1> <hr/> <input type="text" id="addr" value="192.168.128.39"></input> <button onclick="get();">get value</button> </body>
説明
- mbedJSはリビジョン38以降であれば動作します。
- サンプルではオンラインのmbedJS.all.jsとMMA8451Q.jsを使用していますが、ダウンロードしてmbedのローカルディレクトリにコピーしておけばインターネットに接続しなくても使えます。
- 関数のメンバは、mbedJSの標準関数と同じく、グローバルイベント、個別コールバック、Generatorの3つの使い方ができます。
ドキュメントとソースコード
ソースコード
https://github.com/nyatla/mbedJS-Javascript-API
driverディレクトリの下にjsファイルがあります。