セクションの複数ページをまとめています。 印刷またはPDF形式で保存...

もとのページに戻る

2025-04-22 現在

シリアル通信アプリからの出力(親機・中継機アプリ)

シリアル通信アプリからデータを受信した際の出力書式

    書式モード:簡易形式

    データ形式

    #データ内容備考
    charヘッダ:のみ
    0uint8送信元の論理デバイスID親機0x00,子機0x01-0x64,未設定子機0x78
    1uint8コマンド番号送信側で指定した0x80未満の値
    2[uint8]任意のデータ長さ\(N\)のバイト列
    uint8チェックサムLRC8
    charフッタCR (0x0D/'\r')
    charフッタLF (0x0A/'\n')

    出力データの例

    :780100112233AABBCCDD13
    #データ内容
    :charヘッダ:
    780uint8送信元の論理デバイスIDID未設定子機
    011uint8コマンド番号0x01
    00112233AABBCCDD2[uint8]任意のデータそのまま
    13uint8チェックサム0x13
    charフッタ\r
    charフッタ\n

    データの判別条件

    親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。

    出力されたデータがシリアル通信アプリ(書式モード:簡易形式)のものであるかを確認するには、次の箇所を参照してください。

    #データ項目条件
    0uint8送信元の論理デバイスID0x64以下もしくは0x78であること
    1uint8コマンド番号0x80未満であること
    --ペイロードのサイズ3バイト以上82バイト以下であること

    パーサの実装例

    書式モード:拡張書式

    データ形式

    #データ内容備考
    charヘッダ:のみ
    0uint8送信元の論理デバイスID親機0x00,子機0x01-0x64,未設定子機0x78
    1uint8コマンド番号0xA0のみ
    2uint8応答ID送信側で指定した値
    3uint32送信元の拡張アドレスシリアルIDの先頭へ0x8を加えた値
    7uint32送信先の拡張アドレス論理デバイスID使用時は0xFFFFFFFF
    11uint8LQI受信時の電波通信品質
    12uint16続くバイト列の長さバイト数\(M\)を表す
    14[uint8]任意のデータ長さ\(M\)のバイト列
    uint8チェックサムLRC8
    charフッタCR (0x0D/'\r')
    charフッタLF (0x0A/'\n')

    出力データの例

    :78A0028201015AFFFFFFFFA8000700112233AABBCCC6
    #データ内容備考
    :charヘッダ:
    780uint8送信元の論理デバイスIDID未設定子機
    A01uint8コマンド番号0xA0
    022uint8応答ID0x02
    8201015A3uint32送信元の拡張アドレス0x201015A
    FFFFFFFF7uint32送信先の拡張アドレス論理デバイスID指定
    A811uint8LQI168/255
    000712uint16続くバイト列の長さ7バイト
    00112233AABBCC14[uint8]任意のデータそのまま
    C6uint8チェックサム0xC6
    charフッタ
    charフッタ

    データの判別条件

    親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。

    出力されたデータがシリアル通信アプリ(書式モード:拡張形式)のものであるかを確認するには、次の箇所を参照してください。

    #データ項目条件
    0uint8送信元の論理デバイスID0x64以下もしくは0x78であること
    1uint8コマンド番号0xA0であること
    2uint8応答ID0x80未満であること
    3uint32送信元の拡張アドレスMSBが1であること(0x8???????
    12uint16続くバイト列の長さペイロードのサイズ - 14バイトであること

    パーサの実装例