This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RGB18-bit LCD output on AM3715

Other Parts Discussed in Thread: AM3715

Hi,

If RGB 18-bit is configured for the LCD output on AM3715 DSS, which Pins are used as dss_data[17:0] or dss_data[23:6] ?

And also, what is the exact sequence  to configure the RGB 18-bit  LCD output ?

Thanks and Best Regards,

KIMIZUKA

  • Kimizuka,

    Please see the following Wiki for connectivity information.

    My recommendation is to leave the DSS in 24 bit output mode and simply use the upper 6 bits for each color channel when connecting to an 18 bit LCD.

    The big advantage of this method is that it is very simple to migrate to a 24 bit LCD later, requiring no software changes at all.

    If you decide to configure the output to 18 bit mode then you should use the lowest 18 bits of the DSS output as outlined in figure 15-8 onwards and is controlled through register DISPC_CONTROL.TFTDATALINES.

    BR,

    Steve

  • Ooops, forgot the link.

    Sorry...

    http://processors.wiki.ti.com/index.php/Display_Subsystem

    BR,

    Steve

  • Hi Steve,

     

    We used a 24 bit LCD display with our TI OMAP 3503 processor. The LCD configuration was correct and the display was perfect.

    Now, we have migrated to an 18 bit LCD display and the configuration of LCD has been changed to (bit masking 24 bit DSS output)

                *pAlphaBitMask = 0x00fc0000;

                *pRBitMask     = 0x0003f000;

                *pGBitMask     = 0x00000fc0;

                *pBBitMask     = 0x0000003f;

    and

            OUTREG32( &pDispRegs->DISPC_CONTROL,
                                      DISPC_CONTROL_GPOUT1 |
                                      DISPC_CONTROL_GPOUT0 |
                                     DISPC_CONTROL_TFTDATALINES_24 |
                                     DISPC_CONTROL_STNTFT
                                     );

    Apart from this, there is no change in any other part of the LCD configuration.

    We are able to see the boot up image (four colors) and the Windows CE desktop perfectly. The same are shown below

     

    The problem we have is, when we run OpenGL based based UI applications (like Bounce, Carousel, Bubbles which are provided by TI) which displays some graphics, the graphic aren't appearing properly. Please see below

    and

    Can you please help us know what possibly might have gone wrong in our settings or do we need to change any of the LCD settings

    Thanks and regards,

    Vikram G

  • How did you connect your 18 bit LCD to the 24 DSS data output?

    Is the LCD the exact same resolution?

    Why did you change the bit masking?

    Is your frame buffer still the same color depth? What depth are you using?

    I assume the graphics demos worked fine on the 24 bit LCD?

    BR,

    Steve

  • Hi Steve,

    How did you connect your 18 bit LCD to the 24 DSS data output?

    We connected the 18bit LCD to DSS as

    DSS_D12 -> R0    DSS_D6 -> G0      DSS_D0 -> B0

    DSS_D13 -> R1    DSS_D7 -> G1      DSS_D1 -> B1

    DSS_D14 -> R2    DSS_D8 -> G2      DSS_D2 -> B2

    DSS_D15 -> R3    DSS_D9 -> G3      DSS_D3 -> B3

    DSS_D16 -> R4    DSS_D10 -> G4   DSS_D4 -> B4

    DSS_D17 -> R5    DSS_D11 -> G5   DSS_D5 -> B5

     

    Is the LCD the exact same resolution?

    Both LCD resolutions are of same resolution. Its 800 X 480 pixels.

     

    Why did you change the bit masking?

    For changing to 18 bit LCD without changing the display driver configuration.

    After looking at your reply to Kimizuka (the same thread), I learnt that its better to leave the configuration as 24 data line (when changing from 24 bit LCD to 18 but LCD) and by bit masking we can use the 24 bit DSS data output for 18 bit LCD display.

     

    Is your frame buffer still the same color depth? What depth are you using?

    Yes, the frame buffer is of same size and its depth is 16MB.

     

    I assume the graphics demos worked fine on the 24 bit LCD?

    Yes, the graphics demo application work fine with 24 bit LCD.

    There is one more thing to add which I forgot to mention, we are not able to play any video (the same videos play just perfectly with 24 bit LCD) but

    able to see any .jpg or .bmp images properly.


    Thanks and regards,

    Vikram

     

  • Vikram,

    The entire point of using the 24 bit interface for 18 bit displays is so that you do not need to change anything at all in your software. You do not need to change any masking etc... and the processor will not even know that you are using an 18 bit display.

    The connections you have indicated above do not do this though. The recommendation is to use the 24 bit interface bit connect the 6 color bits from the LCD to the upper 6 bits of each color channel 8 bit output as below...

    DSS_23 => R5
    DSS_22 => R4
    DSS_21 => R3
    DSS_20 => R2
    DSS_19 => R1
    DSS_18 => R0
    DSS_17 => no connect
    DSS_16 => no connect

    DSS_15 => G5
    DSS_14 => G4
    DSS_13 => G3
    DSS_12 => G2
    DSS_11 => G1
    DSS_10 => G0
    DSS_9 => no connect
    DSS_8 => no connect

    DSS_7 => B5
    DSS_6 => B4
    DSS_5 => B3
    DSS_4 => B2
    DSS_3 => B1
    DSS_2 => B0
    DSS_1 => no connect
    DSS_0 => no connect

    With your connectivity try using EXACTLY the same software for your 18 bit display as for your 24 bit display, but change register DISPC_CONTROL -> TFTDATALINES to 0x02 instead of 0x03.

    BR,

    Steve

  • Hi Steve,

    I understood what you said and thanks for your suggestion.

    With my current configuration in the software (i.e., 24 bit DSS confid) and hardware data lines as I mentioned in my previous post,

    the LCD display shouldn't work at all. But after WinCE OS boots, we are able to see the Windows CE desktop on the LCD perfectly.

    I don't understand how the GFX layer is working fine even though the software and hardware configurations are not appropriate.

     

    Since our hardware is finalized and is working in the Linux environment (DSS is being configured for 18 bits in Linux), there is no choice for me to change the hardware LCD data lines as you suggested.

    I will try configuring the DSS for 18 lines in WinCE and update you with my results.

    Thank you very much.

    Regards,

    Vikram

     

  • Hi Steve,

    I have configured the DSS for 18 TFTDATALINES and the hardware configuration remains the same

    DSS0 - DSS5     =>    B0 - B5

    DSS6 - DSS11   =>   G0 - G5

    DSS12 - DSS17 =>   R0 - R5.

    I have not made any other configuration changes to DSS.

    What I observed is:

    1. WinCE desktop which used to appear properly (for 24 bit config) is not appearing the same now (the blue back ground of desktop and

    icons are not appearing fine). Pls see below

    2. The graphic app output is

    3. I played a video (.WMV) file and now its playing fine (which was bad with 24 bit config). Pls see below

    Pls help me

    Thanks and regards,

    Vikram

     

     

     

  • Hi Steve,

    Finally, I am able to fix all my LCD display problems.

    I changed the LCD pixel format from RGB24 to RGB16 and everything started working fine!

    I am thankful for your help and support.

    Regards,

    Vikram G

    TES Electronic Solutions,

    INDIA

     

  • Glad you are working well now :)

    One thing to fully understand is that the frame buffer and the output formats are independent so you can have a frame buffer in 24 bit mode and a display in 18 bit mode, or a 16 bit frame buffer with 24 bit output.

    BR,

    Steve

  •  

    Hi Steve,

    Actually I have an 18 bit LCD and I am in process of laying out my schematic and I like your suggestion to Vikram.  I have two questions please:

    1- If I interface my LCD like the way that Vikram has interfaced,

     

    DSS_D12 -> R0    DSS_D6 -> G0      DSS_D0 -> B0

    DSS_D13 -> R1    DSS_D7 -> G1      DSS_D1 -> B1

    DSS_D14 -> R2    DSS_D8 -> G2      DSS_D2 -> B2

    DSS_D15 -> R3    DSS_D9 -> G3      DSS_D3 -> B3

    DSS_D16 -> R4    DSS_D10 -> G4   DSS_D4 -> B4

    DSS_D17 -> R5    DSS_D11 -> G5   DSS_D5 -> B5

    Would I be able to use the Dss_18~DSS_23 as a general purpose I/O to connect to the LCD (i.e. RESET, DE and etc.)?

    2- My second question would be to reiterate your suggestion that I would be okay if I interface and 18 bit LCD like the way that you suggested.  This way I can exchange the LCD to a 24 bit LCD with little software change. 

     

    High Regards,

    Ali.

     

  • Hello Steve

    You are recommending the following for AM37xx DSS to interface with 18-bit LCD.

    B0-B5 à dss_data[2] to dss_data[7]

    G0-G5 --> dss_data[10] to dss_data[15]

    R0-R5 --> dss_data[18] to dss_data[23]

    However, the above does not seem to match with the details given in the AM/DM37x Multimedia Device, Silicon Revision 1.x, Version N - Technical Reference Manual (pg 1572) "Figure 7-10. LCD Pixel Data Color18 Active Matrix"

    The TRM specifies the following connection:

    B0-B5 --> dss_data[0] to dss_data[5]

    G0-G5 --> dss_data[6] to dss_data[11]

    R0-R5 --> dss_data[12] to dss_data[17]

    With the above connection as specified in TRM, we are having a color issue on our hardware in whcih DSS interfaces with 18-bit DSS.

    Could this be the problem on our hardware?

    Thanks

    -Ganesh