[问答]Hi3861 LiteOS SDK bug report

阅读量0
0
3
在 hi_wifi_csi_api.h
这个头文件夹下面有这样一个结构体:hi_wifi_csi_entry

这个结构体里面有mac地址的数组,但是这个mac地址数组的长度只有6个!!!!

正常的MAC一般是这样的"11:11:11:11:11"
明明最少17个字符,但是作为字符串最后的'',我们得加上,所以整个的长度实际上应该是有18个,
然后我设置成18个之后,下面的这个csi的初始化函数不通过:
int csi_init(hi_void){    printf("CSI init start!rn");        int ret = hi_wifi_csi_register_data_recv_func(at_hi_wifi_csi_cb);    if(ret != HI_ERR_SUCCESS){        printf("register csi callback function error!rn");        return 0;    }        char ifname[] = "wlan0"; /* STA */        unsigned int interval = 100; /* report interval:100ms */        hi_wifi_csi_entry csi_entry = {"08:10:7B:E6:92:45", 7, 12}; /* mac need change to ap's mac */        if(hi_wifi_csi_set_config(ifname, interval, &csi_entry, 1) != 0) {        printf("set csi config failed.rn");        return -1;        }        hi_wifi_csi_start();    printf("start csi monitoring!rn");        return 0;}这个函数直接的输出“set csi config failed”
这个长度理论一改就报错。

回帖

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
链接复制成功,分享给好友