BACnet协议栈中的确认型回调函数通常会被传入三个参数:BACNET_ADDRESS *src、uint8_t *apdu和uint16_t apdu_len。
-
BACNET_ADDRESS *src参数表示请求的源地址,它是一个指向BACNET_ADDRESS结构体的指针。该结构体包含了请求的源地址信息,比如发送方的网络号、MAC地址等。 -
uint8_t *apdu参数表示请求的APDU数据单元,它是一个指向字节数组的指针。APDU是BACnet协议中用于传输数据的数据单元,它包含了请求的具体内容,比如读取属性操作的对象ID、属性ID等信息。 -
uint16_t apdu_len参数表示请求的APDU数据单元的长度,它是一个无符号16位整数。通过这个参数,我们可以知道APDU数据单元的长度,从而正确解析请求的内容。
下面是一个示例代码,演示了如何在确认型回调函数中获取这三个参数:
void handle_read_property(
BACNET_ADDRESS *
BACnet协议栈中的apdu_set_confirmed_handler函数处理确认型请求,接收源地址、APDU数据单元及长度三个参数。源地址包含发送方网络和MAC信息,APDU数据单元携带有具体操作内容,如对象ID和属性ID。回调函数示例中,解析请求,处理后将结果打包并回送。
订阅专栏 解锁全文
2678

被折叠的 条评论
为什么被折叠?



