TFT LCD屏中关于BGR和RGB转换函数问题, rgb=(b<<11)+(g<<5)+(r<<0);

2019-07-21 00:56发布

u16 LCD_BGR2RGB(u16 c)
   {
     u16  r,g,b,rgb;      
     b=(c>>0)&0x1f;
     g=(c>>5)&0x3f;
     r=(c>>11)&0x1f;  
     rgb=(b<<11)+(g<<5)+(r<<0);   
     return(rgb);
    }

rgb=(b<<11)+(g<<5)+(r<<0);  请问大神,这个rgb中,r应该在最前,b在低5位。但是这条公式不是把b放在前面、r放在低5位去了吗?求解
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
萌新00
1楼-- · 2019-07-21 17:22
正点原子 发表于 2018-4-9 01:56
完全没问题,c输入的就是BGR格式的数据,调换R和B的位置,代码就是这么写。

嗯,已经明白了!谢谢原子哥
萌新00
2楼-- · 2019-07-21 17:43
fEndman 发表于 2018-4-9 07:05
emmm插一句,大部分液晶自带反转控制寄存器

一周热门 更多>