Difference Between RGB565 and RGB888

Among AM335x series development platforms of Forlinx, the LCD interface of OK335xS development board is in RGB888, while OK335xD development board is in RGB565. If the image of OK335xS is flashed to OK335xD, LCD will display abnormal colors.

In datasheet of AM335x, it describes as follows:


datasheet of AM335x

datasheet of AM335x


From the figure, although high bits of RGB565 and RGB888 correspond to LCD[15:0], LCD data bits corresponding to R[7:3] and B[7:3] are opposite. The two sets of signal lines on carrier board of OK335xS and OK335xD are exchanged. Therefore, if flash the image of OK335xS to OK335xD, display color will be abnormal.

What is the correspondence between RGB565 and RGB888 on other platforms?

First let’s look at i.MX6ULdevelopment platform. From its CPU datasheet, we can see:


From the figure, RGB565 uses LCD_D[15:0], while RGB888 uses LCD_D[23:0]. Carrier board of OKMX6UL-C uses RGB888. If need to reduce number of traces and use RGB565, you must figure out the corresponding relationship between LCD data bits and RGB, otherwise screen will be blurred.

Ok, next, let's take a look at i.MX6DL/i.MX6Q development platform. From its CPU datasheet, we can see:


From the figure, RGB565 has three configurations. User can choose the appropriate configuration according to the actual pin multiplexing.

Finally, let's take a look at AM5718 development platform. From its CPU datasheet, we can see:


From the figure, the configuration of RGB565 and RGB888 on AM5718 development platform is similar to iMX6UL development platform.

To sum up, we have sorted out the LCD display differences between RGB565 and RGB888 of AM335x, i.MX6 series and AM5718 development platform.

When you use LCD display, please figure out the corresponding relationship between RGB mode and LCD pins in advance.