-
Notifications
You must be signed in to change notification settings - Fork 3
Class_UART
Ko-ichiro Sugiyama edited this page May 15, 2022
·
3 revisions
UARTシリアルインターフェースを扱います。
- uart_num : txPin=17, rxPin=16 --> uart_num = 2
- baud_rate : default 9600
例
uart1 = UART.new( 2 )
指定された文字列を出力します。
例
uart1.write("Output string¥r¥n")
指定されたバイト数のデータを読み込みます。指定されたバイト数のデータが到着していない場合、nilを返します。
例
val = uart1.read( 10 )
(参考)通常、データが到着していなければブロックする方式が一般的ですが、mruby/cで作るアプリケーションの場合、あえてブロックしない方式としたほうがプログラミングしやすかったので、そのような仕様になっています。
指定されたバイト数のデータを読み込みます。指定されたバイト数のデータが到着していない場合、到着している分のデータを返します。
例
val = uart1.read_nonblock( 1024 )
文字列を一行読み込みます。実際には受信キュー内の "\n" までのバイト列を返します。 受信キューに "\n" が無い場合、nilを返します。
例
val = uart1.gets()
(参考)受信キューより長い文字列を受信した場合、gets()では処理できません。その場合、受信キューを大きくしたファームウェアを用意する必要があります。
読み込みバッファをクリアします。
例
uart1.clear_tx_buffer()
書き込みバッファをクリアします。
例
uart1.clear_rx_buffer()