彩色液晶与颜色编码

RGB位色:32位 24位 16位 15位
颜色与值:都为0为黑 都为255为白 ,其它相等为无色彩灰度色
RGB颜色公式:RGB()=65536*Blue+256*Green+Red
RGB颜色码(采用16进制24位色):#RRGGBB# 比如RR的取值范围为00~FF
16位色RGB565:采用一个字即2个字节来表示颜色即 RRRRR GGGGGG BBBBB采用位屏蔽和移位操作获取各颜色分量例如:
 #define RGB565_MASK_RED 0XF800
 #define RGB565_MASK_GREEM 0X07E0
 #define RGB565_MASK_BLUE 0X001F
 R=(wPixel&RGB565_MASK_RED)>>11 值范围为0~31
 G=(wPixel&RGB565_MASK_GREEN)>>5 值范围为0~63
 B=(wPixel&RGB565_MASK_BLUE) 值范围为0~31
 RGB(颜色)=(0XF800)*red+(0x07E0)*green+blue

 RGB565转RGB888:将上面分离出的RGB向高位移动填充:R=R<<3;G=G<<2;B=B<<3然后再合成24位格式RGB()=65536*Blue+256*Green+Red

或者:RGB888=(R<<16)|(G<<8)|B


 以下实现24位域16位的转换:
 #define RGB(r,g,b) (unsigned int)((r|0x08<<11)|(g|0x08<<6)|(b|0x08))
 #define RGB(r,g,b) (unsigned int)((r|0x08<<10)|(g|0x08<<5)|(b|0x08))
RGB555:与RGB565类似 只不过最高位不用。
彩色液晶编程(借助工具或者565颜色码表):# define black 0x0000  //定义颜色码

posted on 2012-10-15 16:01  杰瑞鼠  阅读(686)  评论(0编辑  收藏  举报