Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kimushu/canarium
PERIDOT board driver for Chrome/Node.js Applications
https://github.com/kimushu/canarium
canarium peridot
Last synced: 10 days ago
JSON representation
PERIDOT board driver for Chrome/Node.js Applications
- Host: GitHub
- URL: https://github.com/kimushu/canarium
- Owner: kimushu
- License: other
- Created: 2015-09-26T07:16:29.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2018-01-25T04:28:35.000Z (almost 7 years ago)
- Last Synced: 2024-12-22T09:36:59.575Z (14 days ago)
- Topics: canarium, peridot
- Language: TypeScript
- Homepage:
- Size: 2.09 MB
- Stars: 1
- Watchers: 3
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
Canarium - PERIDOT board driver
========CanariumはChrome/Node.jsアプリケーション用の[PERIDOTボード](https://github.com/osafune/peridot)ドライバです。
通信仕様
-------|通信仕様世代|対応ボードのシリーズ|コンフィグ\*1|Avalon-MM
マスタ\*2|ストリーム
入出力\*3|Canarium
バージョン|プラットフォーム|
|:--:|:--|:--:|:--:|:--:|:--:|:--:|
|**Gen1**|[PERIDOT Classic](https://github.com/osafune/peridot) および
[PERIDOT New Generations](https://github.com/osafune/peridot_newgen)|対応|対応|非対応|^0.9
>=1.0|Chrome (^0.9.x)
Node.js (>=1.0)|
|**Gen2**|[PERIDOT New Generations](https://github.com/osafune/peridot_newgen)|非対応|対応|対応|>=1.0|Node.js*1) RBF(やRPD)を転送して、FPGAのコンフィグレーションをリアルタイムで行う機能。
*2) CanariumからQsys上のペリフェラル(Avalon-MM Slave)にアクセスする機能。
*3) Avalon-STやNiosII上の疑似ストリームファイルにデータを入出力する機能。APIリファレンス
-------対応ボード種別通信仕様クラス名とAPIリファレンスへのリンク
PERIDOT ClassicGen1Canarium または
CanariumGen1 (Canarium
の別名として定義)
PERIDOT Piccolo (BOOT側)
PERIDOT Piccolo (USER側)
※Rubic対応ファームの場合Gen2CanariumGen2使用例 / Examples (Gen1)
-------
```js
const { Canarium } = require('canarium');
const fs = require('fs');let canarium = new Canarium();
// Connect to PERIDOT Classic (PS mode) on COM3 port
canarium.open('COM3')
.then(() => {
// Program FPGA
return canarium.config(fs.readFileSync('test.rbf'));
})
.then(() => {
// Read memory
return canarium.avm.read(0x10000000, 256);
})
.then((data) => {
// Show memory dump
console.log(data);// Disconnect
return canarium.close();
});
```使用例 / Examples (Gen2)
-------
```js
const { CanariumGen2 } = require('canarium');// Connect to PERIDOT with Gen2 I/F on COM3 port
let canarium = new CanariumGen2('COM3');
canarium.open()
.then(() => {
// Create writable stream on Channel 8
let txStream = canarium.createWriteStream(8);
txStream.write(...);
.then(() => {
// ...
})
.then(() => {
// Disconnect from board
canarium.close();
});
```インストール方法 / How to install
-------
- `npm install canarium`変更履歴 / History
-------
See [CHANGELOG.md](https://github.com/kimushu/canarium/blob/master/CHANGELOG.md)ライセンス / License
-------This package is distributed under **MIT license**.