• DIGI XBEE RPO模块API帧说明【转】


    注明1

    [1][6]需测试XBEE PRO模块验证其结果。

    [1]发送选项0x08不被支持。

    [2]发送API帧,最大RF数据负载不是72字节,由AT指令中NP命令查看。

    [3]64bit目标地址可以设为0,作为协调器地址。

    [4]最大广播半径是32

    [5]在节点识别指示器(0x95)中,AT指令中NO命令可以被用包含DD参数

    [6]14)节点识别指示器帧的结构需确定。

    注明2

    nBytes代表字段的大小是可变的。

    注明3

    API帧中的转义字符(Escape Characters)AT指令中AP命令参数等于2时。

    UART帧的收发就需要注意以下方面:

    当发出或者到一个串口的数据帧时,特殊数据值必须进行转义,这样的帧就不会与数据帧序列干扰。

    为了转义干扰数据字节,插入0x7D,其后的字节与0x20异或。

    需要转义的数据字节有:0x7E,0x7D,0x11,0x13

    转义字符不参于检验和运算。

    DIGI XBEE RPO模块API不同类型帧的详细说明:

    API Frame Names  Values

    Modem Status 0x8A

    AT Command 0x08

    AT Command - Queue Parameter Value 0x09

    AT Command Response 0x88

    Remote Command Request 0x17

    Remote Command Response 0x97

    ZigBee Transmit Request 0x10

    Explicit Addressing ZigBee Command Frame 0x11

    ZigBee Transmit Status 0x8B

    ZigBee Receive Packet (AO=0) 0x90

    ZigBee Explicit Rx Indicator (AO=1) 0x91

    ZigBee IO Data Sample Rx Indicator  0x92

    XBee Sensor Read Indicator (AO=0)  0x94

    Node Identification Indicator (AO=0) 0x95

     

    1)MODEM状态帧(RF模块状态信息从模块发出)(什么条件产生此帧)

    API标志符:0x8A

    API帧的结构:

    Start identifier

    Frame Data Length

    Frame Data

    Checksum

     

    API帧中字段说明:

    Start Identifier0x7E(1Byte)

    Frame Data LengthMSB---LSB(2Bytes)

    Frame DataAPI Identifier + Identifier specific Data(cmd Data)

    Frame Data详细说明:

    API Identifier---0x8A(1Byte)

    Identifier specific Data(1Byte)---返回modem具体状态

    0=Hardware reset

    1=Watchdog timer reset

    2=Associated

    3=Disassociated

    4=Synchronization lost(Beacon-enabled only)

    5=Coordinator realignment

    6=coordinator started

    Checksum0xFF-( Frame Data各个元素的和)(1Bytes)

    返回头部

    2)AT命令帧(使用API帧允许对所有模块参数寄存器进行查询或者设定)

    API标志符:0x08

    API帧的结构:

    Start identifier

    Frame Data Length

    Frame Data

    Checksum

     

    API帧中字段说明:

    Start Identifier0x7E(1Byte)

    Frame Data LengthMSB---LSB(2Bytes)

    Frame DataAPI Identifier + Identifier specific Data(cmd Data)

    Frame Data详细说明:

    API Identifier---0x08(1Byte)

    Identifier specific Data(n Bytes)---[Frame ID] + [AT command] + [Parameter Value]

    [Frame ID]:1Byte, Identifies the UART data frame for the host to correlate with a subsequent

    ACK(acknowledgement).If set to ‘0’, no response is sent.

      [AT command]:2 Bytes, Command Name - Two ASCII characters that identify the AT Command.

      [Parameter Value]:n Bytes, If present, indicates the requested parametevalue to set the

    Given register.If no characters present, register is queried.

    Checksum0xFF-( Frame Data各个元素的和)(1Bytes)

    返回头部

    3)AT命令-队列参数值帧(使用API帧允许模块参数可以被排列或者设定)(相对“AT命令”类型,新的参数被排队而不被应用,直到“AT命令”类型,或者AC命令发出).

    API标志符:0x09

    API帧的结构:

    Start identifier

    Frame Data Length

    Frame Data

    Checksum

     

    API帧中字段说明:

    Start Identifier0x7E(1Byte)

    Frame Data LengthMSB---LSB(2Bytes)

    Frame DataAPI Identifier + Identifier specific Data(cmd Data)

    Frame Data详细说明:

    API Identifier---0x09(1Byte)

    Identifier specific Data(n Bytes)--- [Frame ID] + [AT command] + [Parameter Value]

    [Frame ID]:1Byte, Identifies the UART data frame for the host to correlate with a subsequent

    ACK(acknowledgement).If set to ‘0’, no response is sent.

      [AT command]:2Bytes, Command Name - Two ASCII characters that identify the AT Command.

      [Parameter Value]:n Bytes, If present, indicates the requested parametevalue to set the given

    register.If no characters present, register is queried.

    返回头部

    4)AT命令反馈帧(AT命令的反馈,一些命令将会反馈多个帧)

    API标志符:0x88

    API帧的结构:

    Start identifier

    Frame Data Length

    Frame Data

    Checksum

     

    API帧中字段说明:

    Start Identifier0x7E(1Byte)

    Frame Data LengthMSB---LSB(2Bytes)

    Frame DataAPI Identifier + Identifier specific Data(cmd Data)

    Frame Data详细说明:

    API Identifier---0x88(1Byte)

    Identifier specific Data(n Bytes)---[ Frame ID]+[ AT Command]+[ Status]+[ Value]

    [Frame ID]: 1Byte,Identifies the UART data frame being reported.Note: If Frame ID = 0 in

    AT Command Mode, no AT Command Response will be given.

    [ATCommand]:2Bytes,Command Name -Two ASCII characters that identify the AT Command.

    [Status]:1Byte

    0 = OK

    1 = ERROR

    2 = Invalid Command

    3 = Invalid Parameter

    [Value]: nByte,The HEX (non-ASCII) value of the requested register.

    返回头部

    5)远程AT命令请求帧(允许远程对模块参数寄存器进行查询或者设定)

    API标志符:0x17

    API帧的结构:

    Start identifier

    Frame Data Length

    Frame Data

    Checksum

     

    API帧中字段说明:

    Start Identifier0x7E(1Byte)

    Frame Data LengthMSB---LSB(2Bytes)

    Frame DataAPI Identifier + Identifier specific Data(cmd Data)

    Frame Data详细说明:

    API Identifier---0x17(1Byte)

    Identifier specific Data(n Bytes)---[FrameID] + [64-bit-Destination-Address] + [16-bit

    DestinationNetwork Address] + [Command Options] + [Command Name]+[Command Data]

    [FrameID]: 1Byte,Identifies the UART data frame for the host to correlate with a subsequent

    ACK(acknowledgement).If set to ‘0’, no AT Command Response will be given.

    [64-bit-Destination-Address]:8Bytes,Set to match the 64-bit address of the destination, MSB

    first,LSB last. Broadcast =0x000000000000FFFF.

    [16-bit-Destination-Network-Address]:2Bytes,Set to match the 16-bit network address of the

    destination, MSBfirst, LSB last. Set to 0xFFFE for broadcast TX, or if the network

    address is unknown.

    [Command Options]: 1Byte,0x02 - Apply changes on remote. (If not set, AC command must be

    Sent before changes will take effect.)All other bits must be set to 0.

    [Command Name]:2Bytes, Name of the command

    [Command Data]: nBytes,If present, indicates the requested parameter value to set the given

    register. If no characters present,the register is queried.

    返回头部

    6)远程命令反馈(相对于远程AT命令请求)

    API标志符:0x97

    API帧的结构:

    Start identifier

    Frame Data Length

    Frame Data

    Checksum

     

    API帧中字段说明:

    Start Identifier0x7E(1Byte)

    Frame Data LengthMSB---LSB(2Bytes)

    Frame DataAPI Identifier + Identifier specific Data(cmd Data)

    Frame Data详细说明:

    API Identifier---0x97(1Byte)

    Identifier specific Data(n Bytes)---[Frame ID] + [64-bit Responder Address] + [16-bit

    Responder Network Address] + [AT Command]+[Status] + [Value]

    [Frame ID]: 1Byte, Identifies the UART data frame being reported.Matches the Frame ID of the Remote Command Request the remote is responding to.

    [64-bit Responder Address]: 8Bytes,Indicates the 64-bit address of the remote module that is

    responding to the Remote AT Command request

    [16-bit Responder Network Address]: 2Bytes,Set to the 16-bit network address of the remote. 

    Set to 0xFFFE if unknown.

    [AT Command]:2Bytes,Command Name -Two ASCII characters that identify the AT Command.

    [Status]:1Byte

    0 = OK

    1 = ERROR

    2 = Invalid Command

    3 = Invalid Parameter

    [Value]: n Bytes,The HEX (non-ASCII) value of the requested register.

    返回头部

     

    7)Zigbee发送请求帧(TX请求消息将使模块发出RF包)TX包帧

    API标志符:0x10

    API帧的结构:

    Start identifier

    Frame Data Length

    Frame Data

    Checksum

     

    API帧中字段说明:

    Start Identifier0x7E(1Byte)

    Frame Data LengthMSB---LSB(2Bytes)

    Frame DataAPI Identifier + Identifier specific Data(cmd Data)

    Frame Data详细说明:

    API Identifier---0x10(1Byte)

    Identifier specific Data(n Bytes)---[FrameID] + [64-bit-Destination-Address] + [16-bit

    DestinationNetwork Address] + [Broadcast Radius] + [Options] + [ RF Data]

    [FrameID]: 1Byte,Identifies the UART data frame for the host to correlate with a subsequent

    ACK(acknowledgement).If set to ‘0’, no AT Command Response will be given.

    [64-bit-Destination-Address]:8Bytes,Set to match the 64-bit address of the destination, MSB

    first,LSB last. Broadcast =0x000000000000FFFF.

    [16-bit-Destination-Network-Address]:2Bytes,Set to match the 16-bit network address of the

    destination, MSBfirst, LSB last. Set to 0xFFFE for broadcast TX, or if the network

    address is unknown.

    [Broadcast Radius]: 1Byte, Sets maximum number of hops a braodcast transmission can

    traverse. If set to 0, the TX raidus will be set to the maximum hop value (10).

    [Options]:1Bytes, 0x08 =Send multicast transmission. (Unicast set if not sent.) All other bits

    Must be set to 0.

    [RF Data]: nBytes, Up to 72 Bytes per packet

    返回头部

    8) Explicit Addressing ZigBee命令帧(帧中允许应用层区域“终端和簇ID”被指定)

    API标志符:0x11

    API帧的结构:

    Start identifier

    Frame Data Length

    Frame Data

    Checksum

     

    API帧中字段说明:

    Start Identifier0x7E(1Byte)

    Frame Data LengthMSB---LSB(2Bytes)

    Frame DataAPI Identifier + Identifier specific Data(cmd Data)

    Frame Data详细说明:

    API Identifier---0x11(1Byte)

    Identifier specific Data(n Bytes)---[FrameID] + [64-bit-Destination-Address] + [16-bit

    DestinationNetwork Address] + [Source endpoint] + [Destination endpoint] + [Cluster ID] +

    [Profile ID] +[Broadcast Radius]+ [Options] + [RF Data]

    [FrameID]: 1Byte,Identifies the UART data frame for the host to correlate with a subsequent

    ACK(acknowledgement).If set to ‘0’, no AT Command Response will be given.

    [64-bit-Destination-Address]:8Bytes,Set to match the 64-bit address of the destination, MSB

    first,LSB last. Broadcast =0x000000000000FFFF.

    [16-bit-Destination-Network-Address]:2Bytes,Set to match the 16-bit network address of the

    destination, MSBfirst, LSB last. Set to 0xFFFE for broadcast TX, or if the network

    address is unknown.

    [Source endpoint]: 1Byte,Source endpoint for the transmission.

    [Destination endpoint]: 1Byte, Destination endpoint for the transmission.

    [Cluster ID]:2 Bytes,Cluster ID used in the transmission

    [Profile ID]:2 Bytes, Profile ID used in the transmission

    [Broadcast Radius]: 1Byte, Sets the maximum number of hops a broadcast transmission

    can traverse. If set to 0, the transmission radius will be set tothe network maximum hops value.

    [Options]:1Bytes, Set to 0

    [RF Data]: nBytes, RF data size must be less than oequal to the maximum number of

    RF data bytes (NP command).

    返回头部

    9)ZigBee发送状态帧(TX状态帧,TX请求完成时,模块会发出状态信息,这个信息将给出数据包是否被成功发送,或者发送失败)

    API标志符:0x8B

    API帧的结构:

    Start identifier

    Frame Data Length

    Frame Data

    Checksum

     

    API帧中字段说明:

    Start Identifier0x7E(1Byte)

    Frame Data LengthMSB---LSB(2Bytes)

    Frame DataAPI Identifier + Identifier specific Data(cmd Data)

    Frame Data详细说明:

    API Identifier---0x8B(1Byte)

    Identifier specific Data(n Bytes)---[FrameID] + [Remote Network Address]+ [Transmit Retry

    Count] + [Delivery Status] + [Discovery Status]

    [FrameID]:1Byte, Identifies UART data frame being reported.

    [Remote Network Address]: 2Byte, 16-bit Network Address the packet was delivered to

     (if success). If not success, this address matches the Destination Network Address that was provided in the Transmit Request Frame.

    [Transmit Retry Count]: 1Byte, The number of applicationtransmission retries that took place.

    [Delivery Status]: 1Byte,

    0x00 = Success

    0x02 = CCA Failure?

    0x15 = Invalid destination endpoint

    0x21 = Network ACK Failure

    0x22 = Not Joined to Network

    0x23 = Self-addressed

    0x24 = Address Not Found

    0x25 = Route Not Found

    [Discovery Status]: 1Byte,

    0x00 = No Discovery Overhead

    0x01 = Address Discovery

    0x02 = Route Discovery

    0x03 = Address and Route Discovery

    返回头部

    10)ZigBee接收帧(RX包帧,模块收到RF包时,将把RF信息发出到UART)

    API标志符:0x90

    API帧的结构:

    Start identifier

    Frame Data Length

    Frame Data

    Checksum

     

    API帧中字段说明:

    Start Identifier0x7E(1Byte)

    Frame Data LengthMSB---LSB(2Bytes)

    Frame DataAPI Identifier + Identifier specific Data(cmd Data)

    Frame Data详细说明:

    API Identifier---0x90(1Byte)

    Identifier specific Data(n Bytes)---[64-bit Address] + [16-bit Network Address]+ [Options] + [RF Data]

    [64-bit Address]:8Bytes

    [16-bit Network Address]:2 Bytes

    [Options]:1Byte,

    0x01 - Packet Acknowledged

    0x02 - Packet was a broadcast packet

    [RF Data]:nBytes, Up to 72 Bytes per packet

    返回头部

    11) ZigBee Explicit RX指示器帧(模块收到RF包时,将把RF信息发到UART,AO=1)

    API标志符:0x91

    API帧的结构:

    Start identifier

    Frame Data Length

    Frame Data

    Checksum

     

    API帧中字段说明:

    Start Identifier0x7E(1Byte)

    Frame Data LengthMSB---LSB(2Bytes)

    Frame DataAPI Identifier + Identifier specific Data(cmd Data)

    Frame Data详细说明:

    API Identifier---0x91(1Byte)

    Identifier specific Data(n Bytes)---[64-bit Source Address] + [16-bit Source Network Address]

    + [Source endpoint] + [Destination endpoint] + [Cluster ID] + [Profile ID] + [Broadcast

    Radius] + [Options] + [RF Data]

    [64-bit Source Address]:8Bytes,

    [16-bit Source Network Address]:2Bytes,

    [Source endpoint]: 1Byte,Source endpoint for the transmission.

    [Destination endpoint]: 1Byte, Destination endpoint for the transmission.

    [Cluster ID]:2 Bytes, Cluster ID the packet was addressed to.

    [Profile ID]:2 Bytes, Profile ID the packet was addressed to. (Multiple profile IDs

    not yet supported.)

    [Broadcast Radius]: 1Byte, Sets the maximum number of hops a broadcast transmission

    can traverse. If set to 0, the transmission radius will be set tothe network maximum hops value.

    [Options]:1Bytes,

    0x01 – Packet Acknowledged

    0x02 – Packet was a broadcast packet

    [RF Data]: nBytes, RF data size must be less than equal to the maximum number of

    RF data bytes (NP command).

    返回头部

    12) ZigBee IO数据采样Rx 指示器帧(模块从远程设备收到I/O采样帧时,会将数据帧发出到串口)

    API标志符:0x92

    API帧的结构:

    Start identifier

    Frame Data Length

    Frame Data

    Checksum

     

    API帧中字段说明:

    Start Identifier0x7E(1Byte)

    Frame Data LengthMSB---LSB(2Bytes)

    Frame DataAPI Identifier + Identifier specific Data(cmd Data)

    Frame Data详细说明:

    API Identifier---0x92(1Byte)

    Identifier specific Data(nBytes)---[64-bit Address] + [16-bit Network Address] + [Receive

    Options] + [Num Samples] + [Digital Channel Mask] + [Analog Channel Mask] + [Digital

    Samples] + [Analog Samples]

    [64-bit Address]:8Bytes,

    [16-bit Network Address]:2Bytes,

    [Receive Options]:1Byte,

    0x01 - Packet Acknowledged

    0x02 - Packet was a broadcast packet

    [Num Samples]:1Byte,Number of sample sets included in the payload. (Always set to 1)

    [Digital Channel Mask]:2Bytes,Bitmask field that indicates which digital IO lines on the

    remote have sampling enabled (if any)

    [Analog Channel Mask]:1Byte, Bitmask field that indicates which Analog IO lines on the

    remote have sampling enabled (if any).

    [Digital Samples]:2Bytes, If the sample set includes any digital IO lines (Digital Channel Mask > 0), these two bytes contain samples for all enabled digital inputs. DIO lines that do not have sampling enabled return 0.  Bits in these 2 bytes map the same as they do in the Digital Channels Mask field.

    [Analog Samples]: 2 bytes each sample, If the sample set includes any analog input lines

    (Analog Channel Mask > 0), each enabled analog input returns a 2-byte value indicating the A/D measurement of that input.  Analog samples are ordered sequentially from AD0/DIO0 to AD3/DIO3, to the supply voltage.

    返回头部

    13)XBee传感器读取指示器帧(暂不)

    14)节点识别指示器帧(当模块发送节点信息给协调器以标志它自己时,协调将收到这个帧.AO=0.这个帧的数据部分与节点发现反馈帧相似.AT指令中的ND命令”)

    (帧的结构需通过模块验证)

    余锡钱,09-08-28整理


    DIGI XBEE RPO模块重要的AT命令说明(调试过程中验证):

  • 相关阅读:
    System.Web.HttpException: 应用程序已预编译,因此不允许使用目录“/App_Code/”。
    ASP.NET导出Excel文件
    简单易学的OA报表
    input添加邮箱的时候自动显示后缀
    Sql Server中存储过程执行很快,但程序调用时执行非常慢的问题(连接超时)
    C#如何卸载已安装的Windows Service服务
    CSS专题(二):元素大小与位置offsetLeft offsetTop offsetWidth offsetHeight clientWidth clientHeight scrollWidth scrollHeight scrollLeft scrollTop
    Eclipse maven构建springmvc项目
    49个jQuery代码经典片段
    CSS专题(一):Background
  • 原文地址:https://www.cnblogs.com/CCJVL/p/1663579.html
Copyright © 2020-2023  润新知