1.背景
在做TFT显示屏驱动的时候,遇到了颜色转换的问题 ,我们正常的RGB颜色是24位(3*8=24 RGB三色各8bit位),但是TFT显示颜色是16位,需要进行转换才能使用。
2.转换原理
如何将24位RGB颜色转换16位RGB颜色 - 走看看
http://t.zoukankan.com/eruca520-p-10189909.html
参考博客如上,
24位RGB红色表示方法为
11111111 00000000 00000000 (十六进制表示为:0xFF0000)
而对应的16位RGB颜色则是由5位红色,6位绿色以及5位红色组成:
RRRR RGGG GGGB BBBB
16位的RGB则需要将8位R值右移3位,变为了5位:11111
8位G值右移2位,变成了6位:000000
8位B值右移3位,变成了5位:00000
<