rssi值如何转换

Viewed 83

技术支持提问请严格按照以下格式提供对应信息,否则会影响回复时效,一定要描述清楚,以免一次回复无法解决问题

(提问前请先自查自己是否很仔细看过教程了,教程中的每句话都很重要,教程都是经过验证的,不会有问题的)

一、描述你遇到的问题

在结构体中,似乎用了uint8_t 存储rssi值,那无符号类型该如何读取?

二、你具体做的所有步骤结果截图

请插入图片

三、当前开发板状态全景照片

请插入图片

四、开发板串口所有日志

请在此处粘贴串口日志

3 Answers

群里问了问大伙,官方回了我一句是C语言基础,我还是没想明白。
rssi值定义范围是-127到20,但是以无符号类型存储,后续该怎么转换?直接将读取的值减去某个量级吗?
如果觉得我这个问题还是不该问,那我确实水平差了点,这就滚蛋

实际上SDK上用uint8_t来表诉确实不合适,应该换成 int8_t的

这个是在刚连接完成的callback里获取的,如果想连接完成后,动态的获取信号强度,应该如何处理。

哈哈,原来是你啊

uint8_t rssi = 129;
int8_t rssi_int = 0;
rssi_int = rssi
printf("rssi_int: %d\r\n", rssi_int);

================
rssi_int: -1