2
我遵循ZCL報告來實現能夠接收傳感器發送的數據的功能。zigbee模塊回調函數與ZCL規格不兼容
在SDK,它被定義爲如下:
void ZbZclReportFunc{
struct ZbZclClusterT * clusterPtr,
zbApsdeDataInt * dataIndPtr,
uint16_t attributeId,
const uint8_t * data
}
通過實施如上述所示的回調函數,我能夠接收的所有信息,除了數據。
在ZCL規範中,溫度測量集羣定義了其「測量值」帶符號的16位整數。
打印出使用以下格式中的數據:
printf("Degree: 0x%04x", *data);
正如我期望的那樣,所示的數據是「0x002b」爲例。
通過將其轉換爲帶符號的16位整數,它沒有幫助。
printf("Degree: 0x%04x", (int16_t)*data);
任何想法?
謝謝
感謝。溼度是否以相同的方式進行轉換? – Sam