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.

DM365 LCD Interface

We have a small 128x160 RGB LCD from Microtips that we are trying to interface with the DM365 VPBE.  This LCD has  Himax controller IC that provides a processor interface.  The interface is a parallel data pipe that is 18bits wide.  There are the data pins, a reset pin, and four control pins for chip select, read/write enable, read/write select, and command vs parameter mode.

 We struggled trying to figure out the correct connections to the VPBE, but ultimately decided that we should be able to use the parallel RBG mode of the VPBE.  We connected up 6 data bits for each color and put the other pins to GPIO; including using the VSYNC and HSYNC pins on the VPBE.

 The software team started looking into it more closely and started questioning if we’d be able to use the VPBE in this way.  It may be that the VPBE wants to interface directly with an LCD without the Himax controller, but we’re unsure.  The other question is one of using existing software drivers.  Evidently there is a driver available for using the VPBE directly connected to an LCD without the controller.  So I have a few questions:

 

  1. Can the VPBE of the DM365 be used in parallel mode and utilize the HSYNC and VSYNC lines as GPIO?
  2. Can I connect the VPBE pins (Yout, Cout, etc) directly to this LCD? (Microtips UMNH-8120MD-4T can be found online)
  3. To use the parallel mode, and considering this LCD uses 18bits, can I just use 6 bits of each color and drop off the bottom (least significant) two bits of each color?
  4. Are there any software drivers available to use the VPBE in this way?
  5. Do I have any hope?!

Thanks in advance for any comments,


David

  • David,

    You could potentially connect this LCD to the GPMC since it basically behaves as a memory mapped device.

    I don't think this LCD can be connected to the VPBE since the VPBE is resigned for raster displays.

    BR,

    Steve

  • Steve,


    I am not familiar with the GPMC acronym.  Can you define it for me? 

    Thanks,

    -David

  • Sorry...

    EMIF :)

    GPMA stands for General Purpose Memory Controller.

    BR,

    Steve

  • OK, fat fingers... :)

    Obviously I meant GPMC !!!

    BR,

    Steve

  • Ah, I wanted to guess that but was scared of doing it out here in the open!

    Sadly I am already using the EMIF to interface to a NAND flash part.  I don't think there are enough spare pins in the EMIF to be used for the LCD.

    Ugh, it's hard to find this out so late into the design.  If I were to abandon the NAND (I have SD that I could perhaps rely on), and instead connect the EMIF to the LCD - how does that work?  Probably I can't utilize any of the VPBE functions (like OSD), right?  It just seems like I would be severely limiting what I can do with the LCD if I treat it as a memory mapped device.

    This LCD is essentially a viewfinder on a digital camera and there are several things that need to be overlayed using the OSD.

    Based on what you know about this situation, what do you think my options are?

    Thanks Steve,

    -David

  • David,

    You can connect multiple devices to the EMIF. Each device simply has its own CS signal, hence appears at its own logical address. The data lines can be connected in various ways depending on how you want the registers to appear in your memory map. The LCD supports a number of common interface formats and I would anticipate one being compatible with the way the EMIF is configured for the NAND. If not, then you could change the interface protocol on the fly since as long as CS does not go active all other devices should ignore the interface.

    You do loose the ability to automatically utilize the VPBE features though, as you mention. On the other hand, you do end up having complete control over what is displayed since it pushes the requirements back into your application program, where you create your frame buffer in the first place.

    The only other option I can think of at the moment is to use a different LCD, or a different processor (e.g. OMAP3 class devices have what is called RFBI, which is designed for this type of LCD)

    BR,

    Steve

  • Good morning Steve,

    It seems that the best possible outcome here is to find a different LCD.  In the absolute worst case I think I can do as you suggest and interface this thing to the EMIF, although that seems less than ideal.

    I am so far along with the design that any changes are painful, but if I can find the right LCD then I'll take the pain.  Can you recommend any LCD vendors that might have a 1.77" LCD that would interface nicely with the VPBE of the DM365?  Or perhaps you have another customer that is doing something similar who would be willing to put me in touch with an LCD vendor?  Any help you can provide here would obviously be tremendously appreciated!

    Thanks Steve,

    -David

  • David,

    Unfortunately I don't have any information on specific LCDs or suppliers since they tend to change all the time.

    Depending on your volumes I would suggest working with reps. from Avnet, Arrow, Digikey etc... You might also try NewHavenDisplay and ApolloDisplays.

    I think that you will find that all the LCDs in this size range will be of the same micro-processor type interface, hence not suitable for connection to the VPBE, which is targeted at raster type displays.

    What hardware platforms do you currently have available? If possible I would try to get some LCD samples and try them before committing to your final hardware. Simple software could be written to test the basic functionality without requiring fill blown, optimized code.

    BR,

    Steve

  • Thanks Steve, I will look into those options and see what I can find.  I've already got several of the larger distributors looking.  But the initial feedback I have received is exactly what you indicated, that most LCD's in that space are not raster types.

    Why does the DM365 have the low level raster type interface if most  LCD's in the embedded mobile world (where the DM365 is targeted) have an MPU style interface?    Surely this must have been considered.  So the question that comes up is this, 'Is there an interface part that is supposed to (or can) sit between the DM365 VPBE and an MPU enabled LCD?'

    That doesn't make lots of sense to me but I suppose it might be an option to have some sort of secondary video processor between the LCD and the DM365 - but it sure seems like that defeats the purpose of having the VPBE!

    Do you have other customers that are using the DM365 and interfacing to a digital LCD?  Would they be willing to talk with me? 

    I am committed to the DM365 at this point.

    Thanks Steve,

    -David

     

  • David,

    The DM devices are targeted more at multi-media which are typically larger LCDs. These larger LCDs tend to be raster.

    Once you get to about 3" and 320x240 or larger you will notice a shift in display interface to raster.

    These very small displays are designed for cell phone type applications where it is often desirable to be able to virtually completely shut down the main processor whilst still having something on the display (e.g. background image + time). This is only possible with LCDs with integrated frame buffers, and not with raster displays.

    Hope this helps with the rationale a little?

    BR,

    Steve

  • Hi Steve,

    Yes, that does make sense.  Sadly for me, it's a bit late in the game for it to be making sense!  I have misunderstood the interface from the beginning.

    I will go ahead and close out this thread since you've been able to answer my questions.  I should have enough information by tomorrow to make a decision on how we're going to proceed.

    It is looking more and more like we will have to utilize the EMIF of the DM365 and just stick with this LCD.  Should that end up being the case, I will need to consult with you on the details since I will need a boost or headstart to keep my customer from having a timeline panic.  In fact, do you have any app notes that I could start looking into that would help describe how to connect the LCD to the EMIF and how to use it that way from a software perspective? (I will hold off for a moment on closing this out...)

    Thanks again,

    -Dave

  • Dave,

    I think the best course is to work with Katie (I think you are already working with her?). She should be able to help you better than I from the software perspective.

    You should be able to use pretty much all the same frame buffer rendering stack, and should really only need to write additional code to dump your frame buffer to the LCD. This will be very LCD specific since it will require you to program the LCD's registers according to its specific requirements. Dumping the frame buffer to the display should be fairly straight forward after the initial configuration though. I think in your application this is best handled by your application rather than writing a new driver. It should not be too difficult once the fundamental EMIF access is working.

    I can certainly continue to help understand the specifics of the particular LCD though.

    BR,

    Steve

  • Steve,

    Your input has been invaluable.  I'm closing out this thread, but I may still throw something out there about the EMIF connection, just to make sure I don't miss something obvious.

     

    Thanks again,

     

    -David

  • it supports 18bit/16bit RGB mode. RGB is multiplex with YUV.

  • Glad to be of service :)

    Don't hesitate to throw any more questions out and we will do our best.

    BR,

    Steve

  • Hello Liu,

    I'm not sure I understand what you mean.  Can you please clarify this for me?

    Thank you!

    -David