如何将7位数字2442110解码为WiFi灯泡的RGB值?
解码WiFi灯泡的RGB整数值
- 这类数字一般是把RGB三个8位颜色分量打包成了一个24位十进制整数,通用打包格式为
(R << 16) | (G << 8) | B,解码步骤如下:
- 提取红色分量(R):将数值右移16位(或除以65536取整数部分)
2442110 >> 16 = 37 - 提取绿色分量(G):将数值右移8位后与
0xFF(255)按位与(2442110 >> 8) & 0xFF = 67 - 提取蓝色分量(B):将数值与
0xFF按位与2442110 & 0xFF = 126
最终解码得到的RGB值为 (37, 67, 126),对应十六进制颜色码 #25437E。
如果验证后和灯泡实际颜色不符,可能是设备采用了BGR分量顺序打包,可尝试调换顺序重新计算:
- 按BGR格式解码后,对应RGB值为(126, 67, 37),十六进制颜色码
#7E4325
内容的提问来源于stack exchange,提问作者havaka
相关产品推荐
相关产品推荐

