Changes

Jump to: navigation, search
no edit summary
{{InfoBoxTop}}
{{Applies To Bora}}
{{Applies To BoraX}}
{{InfoBoxBottom}}
==History==
==Introduction==
This application note describes the interfacing of [http://www.ampire.com.tw/en/index.asp Ampire AM-800480STMQW-TA1] display to [[BoraEVB|BoraEVB ]]and [[BoraXEVB|BoraXEVB]]. Main characteristics of this 7" TFT LCD panel are:
* 800x480 resolution
* color depth: 18 bpp
* electrical interface: LVDS (3 pairs).
This project is based on [[Bora_Embedded_Linux_Kit_%28BELK%29#BELK_software_components|BELK 2.2.0]] and [[Bora_Embedded_Linux_Kit_%28BELK%29#BELK_software_components|BELK 3.0.0]].
==Physical interfacing==
===BoraEVB===
To interface the display a small adapter board is needed. It interfaces J22 connector on BoraEVB side and provides a 20-pin connector to directly attach display cable.
Schematics of adapter board can be downloaded from this [http://www.dave.eu/system/files/area-riservata/BORA_LCD_ADAPTOR_ADBL7000C1R_1.0.0_0.pdf link].
 
===BoraXEVB===
In case of BoraXEVB, no adapter board is needed. LCD panel is directly connected to J22 connector where PL bank 13's signals implementing LVDS interface are routed (see [[BoraXEVB#Schematics|page 14]] of the schematics). I/O voltage of bank 13 is set to 2.5V by configuring [[BoraXEVB#BANK13_VDDIO_selector_-_JP25|JP25 ]] as follows:
==Block diagram and Vivado project==
The following picture shows simplified block diagram of the design.
[[File:An-belk-004-01.png|700pxthumb|center|600px|Simplified block diagram of the design (BoraEVB)]][[File:An-belk-004-01.png|thumb|center|600px|Simplified block diagram of the design (BoraXEVB)]]
LCD is driven by a controller implemented in PL that fetches pixel data from frame buffer and periodically refreshes physical screen.
To implement frame buffer, a portion of main SDRAM is used. This area is allocated at runtime by linux frame buffer driver. Even if LCD is 18 bpp, each pixel is represented by 32-bit word in memory. In fact each pixel is in RGB666 format, so for each colour only the six most significant bits of the frame buffer RGB888 are used to drive the display.
===BoraEVB===
Here is the pinout assignment to drive the LCD:
{| class="wikitable" |
(*) This signal is used to control backlight. It is usually driven by a PWM signal whose duty cycle is proportional to backlight intensity. For the sake of simplicity, in this project this signal is driven by a GPIO, thus only two intensity levels are supported (0% and 100%).
 
===BoraXEVB===
TBD
==Enabling frame buffer driver in linux kernel==
4,650
edits

Navigation menu