mruby/c 概要(研修フィードバック)
Bài đăng này đã không được cập nhật trong 8 năm
mruby/c
- mrubyの多機能に対する逆張り(さらに小さくしたい)
- mrubyでできないことを実現したい!
・少ないメモリ(ワンチップ) 例:電池1個、太陽光発電など
・コンカレント動作(OS不要)
・起動を早くする(割り込みを目指す)
・誰でも分かる仕様(見てわかる規模にする)
mruby/cの特徴
1. 高い開発生産性:C言語に比べて、5倍程度と予測
- Rubyの高い生産性を引き継ぐ
- コンカレントな動作(異なる動作は、別のプログラムで実現)
・スピーディーな試作開発、実用化開発を実現
・容易に変更可能
・別のプログラムで、各時間ごとに起動
2. 省電力:従来のmruby比で10分の1程度、メモリ消費50kb未満で稼働
- 本来の機能以外の動作を省き実装を最適化
- マルチコアプロセッサを積極的にサポート
限られた電力供給環境下でも稼働(電池駆動、エナジーハーベスティング)
mruby/cの基本コンセプト
・mruby/cの優先順位
1. メモリ
2. 起動速度
3. 機能(ライブラリ)
4. 実行速度
・想定するアプリケーション領域
省電力デバイス・手軽に試作
mruby/c ターゲットCPU
PSoC5(32bit) Cypress
RX63N(32bit) ルネサス
PIC24(16bit) Microchip Technology
mruby/c β版
githubで公開: https://github.com/mrubyc/mrubyc
mruby/c への機能追加
- MQTT(IOT向けプロトコル)をmrubyに実装
・mrubyのビルド設定に1行追加するだけでMQTT対応のVMを作成できる。
・「build_config.rb」の中に1行追加するだけ
conf.gem :github => 'sabakan21/mruby-mqtt'
mruby/c ボード開発状況
1. mruby/cが動く状態のマイコン
・マイコンのフラッシュ内にmruby/cのVMを書き込み済みで配布する。PSoC5を搭載
2. IDE
・ケーブルを接続するだけで、mruby/cのマイコン開発を可能に
3. ローカル・クラウドコンパイラ
mruby/c 現状
- エディタ・コンパイラについては開発中・無償で提供予定
- ドキュメントがあまり公開されていない。
All rights reserved