Google Chrome Package Apps用のJavaScriptライブラリです。
v0.9.6以降はこちらでメンテナンスを行います。
Windows/Linux/MacOS上のGoogle Chrome 33以上で動作します。
- sample_appsフォルダをローカルに保存します。
- Chromeの設定→拡張機能でデベロッパーモードにチェックを入れます。
- 'パッケージ化されてない拡張機能を読み込む'をクリックして保存したフォルダを指定します。
- Chromeのアドレスバーに'chrome://apps/'を入力(またはChromeのブックマークバーを右クリック→アプリのショートカットを表示)
- アプリウィンドウに追加したアプリが表示されているのでクリックして起動。
- USBでホストPCに接続します。
- Windowsの場合は、デバイスマネージャから該当ドライバのVCPロードするにチェックを入れ、再度接続し直します。
- アプリを起動して、Serial Portの中からPERIDOTが接続されているポートを選択してConnectボタンを押します。
- 正しく認識されればチェックアイコンが出て、ボタン表示がDisconnectに切り替わります。
- 'ファイルを選択'から、RBF形式のコンフィグレーションデータを選択し、Configurationボタンをクリックします。正常にコンフィグされればチェックアイコンが出て、接続状態になります。
- peridot_avalon_bridgeペリフェラルを組み込んだQsysシステムが存在する場合は、I/O AcceessとMemory DumpでQsysのペリフェラルにアクセスすることができます。
Qsysコンポーネントの存在しないコンフィグでは動作しません。
var myps = new Canarium();
myps.open(port portname, function callback(bool result));
portname : chrome.serialで返されるポート名を指定
result : 成功=true / 失敗=false
myps.close(function callback(bool result));
result : 成功=true / 失敗=false
myps.config(obj boardInfo, arraybuffer rbfdata[], function callback(bool result));
boardInfo : コンフィグレーション対象のボード情報オブジェクト(普通はnullを指定する)
rbfdata[] : コンフィグデータが格納された ArrayBufferオブジェクト
result : 成功=true / 失敗=false
myps.avm.iord(uint address, int offset, function callback(bool result, uint readdata));
myps.avm.iowr(uint address, int offset, uint writedata, function callback(bool result));
address : AvalonMMベースアドレス
offset : レジスタオフセット
writedata : 書き込むレジスタ値
readdata : 読み出したレジスタ値
result : 成功=true / 失敗=false
myps.avm.read(uint address, int bytenum, function callback(bool result, arraybuffer readdata[]));
myps.avm.write(uint address, arraybuffer writedata[], function callback(bool result));
address : AvalonMMメモリ先頭アドレス
bytenum : リードするバイト数
readdata[] : 読み出したデータバイト列
writedata[] : 書き込むデータバイト列
result : 成功=true / 失敗=false
- canarium.avm.readメソッドでメモリから大量のデータをリードする場合に、高確率で失敗(シリアルポートのタイムアウトあるいはデッドロック)します。
- Mac OS X上で、コンフィグレーションまたはcanarium.avm.writeメソッドにて送信データが先頭から1024バイトで打ち切られる場合があります。