Whinis' Webpage
About Me
Random Pictures

USB 2.4 Inch Touch Screen Post

Created :07-05-2021
Last Updated:07-05-2021 23:36
Whenever your design actually works

Created :04-24-2021
Last Updated:04-25-2021 19:25
How I spent 6 months trying to figure out how ram works

It all comes together

Long Journey

So I am on the cusp of trying to graduate but ripped some time away to work more on my USB monitor. I had gotten the boards back from a Chinese producer and finally had all the parts for a few weeks so put one together. While not the best picture taken with my phone you can see it below

Finished Board

This is the same board mentioned in the previous post. The purple board is a module I designed that can fit either way round (so pins are mirrored) that supplies the backlight to the screen and allows for one to use different screens with different requirements with a single board. It has 3 debug buttons allowing one to enter all the available ISP modes and is important for if you get the processor in a stuck state as with a cortex-m4 the debugging core is not running constantly.There is also a reset button. However It was time to test RAM.

Testing The Board

First thing I did was take the EMC SDRAM test program from the LPC54628 SDK and it failed constantly. I asked reddit for help but got little actual answers other than some traces may be long. So I started to probe every pin and found that UDQM was staying low. I started checking at every point and found out that the pin was not soldered on the MCU side, so I reflowed the entire MCU one more time and while my RAM does not pass at the highest speed it does pass at 120MHz which should be fast enough for my designs.

Next I tested the screen which in its test mode does not require the SDRAM for the general test. I could not get a good image on the screen with only the first 10-15 lines showing anything and never anything consistent. I started checking all the lines and thought there was a discrepancy however whenever I checked versus the development board it was just that the LCD signals are much faster than I expected to see. I forgot to take a picture of the capture so you will just have to take my word for it. However what I did notice is that the data enable signal worked for a few clocks and then seems to hover around 1.3v instead of going to ground. I decided to reflow the resistor network going to the data enable as well as other control signals and suddenly my screen was displaying properly

Finally the preview image for this article is combining the two, Using the SDRAM as the screen buffer for the LCD. It works but the SDRAM appears to have some integrity issue that hopefully will be solved in the next version of the board that will be BGA. The working screen can be seen below.

Working Screen

Hopefully over the coming days I can work on the firmware for the board and get the bulk usb transfer working and integrated with LCDHost