关于RGB888和RGB565每个像素包含几个字节的疑问

2019-07-20 19:11发布

原子官方手册上的代码:
#if LCD_PIXFORMAT==LCD_PIXFORMAT_ARGB8888||LCD_PIXFORMAT==LCD_PIXFORMAT_RGB888
        ltdc_framebuf[0]=(u32*)&ltdc_lcd_framebuf;
        lcdltdc.pixsize=4;                                //每个像素4字节
#else
    lcdltdc.pixsize=2;                                //每个像素2字节
        ltdc_framebuf[0]=(u32*)&ltdc_lcd_framebuf;
#endif        


对于RGB565格式,很好理解:16位,所以每个像素是2字节。
RGB8888,也很好理解,32位,自然每个像素是4字节。
但是RGB888,,24位,不应该是每个像素是3字节吗????而上面原子的代码,RGB888也是4字节,是什么原因???求解释

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
shibinjie
2019-07-21 04:56
xkwy 发表于 2016-10-31 14:29
其实在ASCII设计时char是占7-bit的,为什么现在char占8bit(1byte)你不觉得有问题?
很简单啊,单片机中简 ...

你好,我现在改成RGB888,每个像素3个字节,能正常显示。但是在写缓冲区的时间内显示是乱的(像老式电视机没有信号时的那样),只有等缓冲区的数据全部写完之后,突然就显示正常了。你能分析大概是什么原因吗

一周热门 更多>