tft display arduino due brands
LCD Display Modules└ LEDs, LCDs & Display Modules└ Electronic Components & Semiconductors└ Electrical Equipment & Supplies└ Business & IndustrialAll CategoriesAntiquesArtBabyBooks & MagazinesBusiness & IndustrialCameras & PhotoCell Phones & AccessoriesClothing, Shoes & AccessoriesCoins & Paper MoneyCollectiblesComputers/Tablets & NetworkingConsumer ElectronicsCraftsDolls & BearsMovies & TVEntertainment MemorabiliaGift Cards & CouponsHealth & BeautyHome & GardenJewelry & WatchesMusicMusical Instruments & GearPet SuppliesPottery & GlassReal EstateSpecialty ServicesSporting GoodsSports Mem, Cards & Fan ShopStampsTickets & ExperiencesToys & HobbiesTravelVideo Games & ConsolesEverything Else
Quite satisfied with the results of initial "experiments" with the Arduino Due, I decided to spruce it up a bit. I outfitted the Due with some sensors and a touch display with a SD card.
I configured the board for 16bit operation by moving R4 to R5 position.(Faster) This PCB uses LS245 octal transceivers as buffers to the internal 3.3v logic, because the Due is a 3.3V device, it will have no problem driving the octal transceivers. Next I constructed a shield to accommodate a few sensors and to re-route the Due"s SPI bus to match the display. (NOTE: this will normally plug directly into the Mega 2560 where the SPI is on the 36-pin header, on the Due those pins are just digital I/O).
LCD-specified initialization code is provided, so that you can save time to optimize power control register and gamma curves for best display performance. We have test the provided code, it gives the best display performanace
The purpose of this application note is to review the RGB interface and discuss any requirements necessary for communicating with the microcontroller through this interface. The display communicates with the microcontroller over 45 pins through an RGB interface. An additional graphics controller is required to use this interface. The graphics controller chosen for this application is the SSD1963 LCD Controller Graphics card.
The display featured in this application note is a transmissive, 5.0” (67.56mmx122.35mm), portrait mode TFT display. The part number for this display is E50RG84885LWAM520-CA. This display has a built in controller IC ILI9806E. This display also has a capacitive touch feature. Features of this display are listed below.
The display used in this application has an internal built-in display controller IC ILI9806E. This controller IC does not contain internal RAM and therefore an additional graphics controller SSD1963 is required to provide the RAM that supports the RGB interface. The ILI9806E controller IC that is built into the display provides the 3-wire serial interface to input the initialization commands for the RGB interface.
Once the initialization commands are sent via the 3-wire serial interface, the graphic controller will be used to send the RGB commands to the display. The SSD1963 graphics controller chip is used to communicate to the RGB interface on the display. The graphics controller provides the SRAM required to drive the display. This controller provides a 1215kB frame buffer to support the 24-bit graphics data to the display.
The graphics controller would not be required if the internal IC embedded in the display contains internal RAM. The specification sheet for the embedded display controller IC should be used to verify this information. The graphics controller chip is accessed after the SPI initialization of the display. The graphics controller chip communicates with the microcontroller through a 16-bit parallel 8080 MCU interface.
The microcontroller in this application is a 32-bit ARM core processor. This device communicates with the display over the serial interface to send the SPI initialization commands. Once completed, the microcontroller will then communicate to the graphics controller through an 8-bit parallel initialization command and then 16-bit graphical data commands and functions.
A review of the connection ports and pins between each device will be specified in this section. Starting with the display and the connections with the graphics controller as well as the microcontroller. The display’s 3 wire serial pins can be directly connected to the microcontroller. The RGB interface pins will be connected to the graphics controller. Below is a description of the pin connections on the display.
The next hardware connection that will be reviewed is between the graphics controller chip and the microcontroller. The two devices are connected through a 16-bit 8080 parallel interface. The graphics controller will receive initialization commands from the microcontroller specifying its own requirements as well as commands that will be sent to the display over the RGB interface. The parallel connection between the microcontroller and the graphics controller are as follows.
The microcontroller provides the logic voltage and logic ground for both the display and the graphics controller. There are two reset pins total, one connected to the display and one for the graphics controller. It is important to only use the reset pin for the SPI initialization and set the graphics controller reset to 3.3V. If the graphics controller reset pin is toggled, the SPI initialization commands stored on the display will be reset as well.
The Arduino Due is connected to both the display and the graphics controller. First the microcontroller sends the SPI initialization commands to the display’s embedded controller IC. Next it will communicate with the graphics controller over an 8-bit 8080 parallel interface to initialize the 16-bit parallel interface parameters. Once both devices are initialized, further commands can be sent through the graphics controller to the display to create an image.
The initialization commands required for the display and graphics controller to start will be reviewed in this section. The microcontroller will need to send two sets of initialization code over each interface. The pins will need to be calibrated to each of their specified interfaces, SPI and 8080 Parallel interfaces. The first set of initialization commands are sent to the display’s SPI pins. This code will define the RGB interface parameters required to use this interface.
This code defines the RGB interface timing characteristics, the resolution of the display, the voltage settings and much more. The initialization commands and data specific to the display can be found in the data sheet of the embedded IC controller ILI9806E. Review the specification sheet for this controller for details on the commands and functions of this code.
The initialization code for the graphics controller is sent over a parallel 8080 interface. The sequence of commands is to first initialize the graphics controller and specify the display parameters, followed by the code that will be sent over the 16 data buses. The initialization commands for the graphics controller SSD1963 are detailed in the controller’s specification sheet. The code used to initialize the graphics controller can be found here.
The initialization code for the graphics controller defines the parameters of the display and the required timing characteristics. The specifications and timing definitions can be found in the spec sheet of the display. The commands that are sent in this section lets the graphics controller know the details specific to the display that we are using in this example. The data is sent over the 8080-parallel interface to the graphics controller. Below is the timing diagram of this parallel interface.
After the initialization commands for both the display and the graphics controller are sent, the display is now ready for communication. The graphical data or images will be sent to the graphics controller’s RAM to be accessed by the display via the RGB interface. Communication to the display is fast and efficient for transmitting images that are to be displayed. For this example, an application was written to display bitmaps on the screen. Below is the output of this example.