mruby/cの規格に合わせたファームウェア用クラスのドキュメント
使用するには別途ファームウェアを書き込む必要があります。(動作検証中)
 →https://github.com/YoshihiroOgura/pic32mx170_mrubyc/releases/tag/v2.1.0.2

Ruby

mruby/cにて対応しているRubyのクラスについては下記公式URLをご参照ください。
https://www.s-itoc.jp/activity/research/mrubyc/mrubyc_docs/library

GPIO

new(pin)

コンストラクタ
pin:0~20

setmode(mode)

入出力方向設定
mode:0(出力),1(入力)

write(value)

出力
value:0(OFF),1(ON)

read()

入力
戻り値:0(OFF),1(ON)

ADC

new(pin)

コンストラクタ
pin:0~20

read

取得値浮動小数点数出力
戻り値:0~1.023(0~3.3V)

read_v

取得値電圧出力
戻り値:0~3.3

I2C

new()

コンストラクタ

write(sl_addr, addr, data1, data2,,,,)

i2c書き込み
sl_addr:スレーブのアドレス
addr:書き込み対象のアドレス
data:書き込むデータ

read(sl_addr, size, addr)

i2c読み込み
sl_addr:スレーブのアドレス
addr:読み込み対象のアドレス
size:読み込むデータのサイズ

SPI

new()

コンストラクタ

write(addr, data1, data2,,,,)

spi書き込み
addr:書き込み対象のアドレス
data:書き込むデータ

read(size)

spi読み込み
size:読み込むデータのサイズ

PWM

new(pin)

コンストラクタ
pin:0~20

frequency(n)

周波数設定。0を指定すると出力を停止します。
n:整数(Hz)

duty(n)

デューティー比を、0(全オフ)から1023(全オン)までで指定します。
n:0~1023

period_us(n)

デューティー比を、0(全オフ)から1023(全オン)までで指定します。
n:整数(us)

UART

new(baud)

19200を基準としているため、これ以上の値を設定するとかなりデータが欠損する。
baud:ボーレート値(例:19200)

gets

文字列受信、"\n" までのバイト列を返します。

write(text)

文字列送信
text:文字列

read(n)

文字列受信、指定した文字数を受信します。
指定されたバイト数のデータが到着していない場合、nilを返します。
n:文字数

clear_buffer

受信文字列のバッファ初期化

Math

https://github.com/YoshihiroOgura/pic32mx170_mrubyc/blob/a0542f4fb76b2f3e1ba6e5078c9e3fc3a7164865/src/c_math.c#L240

その他

leds_write(bit)

led制御
bit : 整数
led 10進数 2進数
1 1 0b0001
2 2 0b0010
3 4 0b0100
4 8 0b1000

sw()

スイッチの状態読み込み
戻り値:0 or 1

pinInit

すべてのピン設定を初期状態へ戻す。

puts(txt)

文字列出力
ターミナルソフトの設定についてはこちら txt:文字列