主题 : 有关LCD 中通过LCD_BUFFER[(y)][(x)] = c函数确定像素点颜色的问题, 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 14220
精华: 0
发帖: 39
金钱: 215 两
威望: 43 点
贡献值: 0 点
综合积分: 78 分
注册时间: 2010-02-04
最后登录: 2018-02-08
楼主  发表于: 2010-07-08 17:22

 有关LCD 中通过LCD_BUFFER[(y)][(x)] = c函数确定像素点颜色的问题,

谁最有这方面资料啊
比如如果C=?的时候是红色,有取多少是蓝色,黑色
c分别要为多少啊
那么多颜色,我怎么把C的值和颜色一一对应呢
级别: 新手上路
UID: 24904
精华: 0
发帖: 38
金钱: 205 两
威望: 41 点
贡献值: 0 点
综合积分: 76 分
注册时间: 2010-07-16
最后登录: 2017-09-13
1楼  发表于: 2010-07-21 14:27
这个好办
红色是0xF800,蓝色是0x1F,黑色是0x0
假设你想设置的颜色的红、绿、蓝三种分量分别为r、g、b,那么这种颜色的值可以这样计算得到:
color = (r << 11) | (g << 5) | b;
其中r、g、b的取值范围分别是 31 >= r >= 0、63 >= g >= 0、31 >= b >= 0
你试一下吧,如果显示出来的颜色不对,那就说明你的端口设置错误
级别: 新手上路
UID: 25861
精华: 0
发帖: 4
金钱: 20 两
威望: 4 点
贡献值: 0 点
综合积分: 8 分
注册时间: 2010-07-30
最后登录: 2010-08-02
2楼  发表于: 2010-07-30 16:34
图片:
可以参考一下LCD 驱动IC的规格书,会有详细的图示告诉你每一个bit对应到什么颜色
级别: 新手上路
UID: 15754
精华: 0
发帖: 3
金钱: 20 两
威望: 4 点
贡献值: 0 点
综合积分: 6 分
注册时间: 2010-03-09
最后登录: 2015-01-27
3楼  发表于: 2010-08-23 11:34
0xrgbl其中 r是红色灰度 ,g是绿色的,b是蓝色,这是光三原色,l为亮度
windows的调色板可以得到这些值 把8位的转换为4位的就可以了。
0xf000红
0xff00黄
0xf0f0紫 等等,相关知识可以看看数字图像处理