serial_read

受信データを読み取る

serial_read out_buf, max_bytes

out_buf   : 受信先変数 (sdim 自動、max_bytes + 16)
max_bytes : 最大読み取りバイト数

(プラグイン / モジュール : iron_serial.hsp)

解説

最大 max_bytes まで非ブロッキング read します (内部 timeout は
MAXDWORD = ノンブロッキング)。戻り値は実際に読み取ったバイト数です。
serial_avail でバッファ内のバイト数を先にチェックする運用を推奨します。

例:
  serial_avail
  if stat > 0 {
      sdim buf, 256
      serial_read buf, 255
      mes "received: " + buf
  }

関連項目

serial_avail受信バッファ内のバイト数を取得(iron_serial.hsp)

情報

プラグイン / モジュールiron_serial.hsp
バージョン1.0
作成日2026-04-15
著作者IronHSP / iron_serial
URLhttps://github.com/inovia/IronHSP
備考iron_serial.hsp は Win32 の CreateFile + SetCommState + ReadFile /
WriteFile を直接ラップしたシリアルポート読み書きモジュールです。
kernel32.dll のみ利用するので追加 DLL は不要で、Arduino / マイコンとの
UART 連携に適しています。

#include "iron_serial.hsp"

注意:
現状 1 ポートのみ同時に open 可能です (内部グローバル状態)。
COM1~COM9 は "COM3" のように書けますが、COM10 以降は
"\\\\.\\COM10" という形式が必要です。
タイプ拡張命令
グループiron_serial ― 受信
対応環境
  • その他 : Win32 / Win64
hs ファイルhsphelp\iron_serial.hs