<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.element14.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>How to connect graphics controller to MCU and LCD?</title><link>https://community.element14.com/technologies/embedded/w/documents/7275/how-to-connect-graphics-controller-to-mcu-and-lcd</link><description /><dc:language>en-US</dc:language><generator>Telligent Community 12</generator><item><title>How to connect graphics controller to MCU and LCD?</title><link>https://community.element14.com/technologies/embedded/w/documents/7275/how-to-connect-graphics-controller-to-mcu-and-lcd</link><pubDate>Thu, 07 Oct 2021 06:38:47 GMT</pubDate><guid isPermaLink="false">93d5dcb4-84c2-446f-b2cb-99731719e767:2c856a1e-a2c4-4124-836c-d4bd0f04579b</guid><dc:creator>Former Member</dc:creator><comments>https://community.element14.com/technologies/embedded/w/documents/7275/how-to-connect-graphics-controller-to-mcu-and-lcd#comments</comments><description>Current Revision posted to Documents by Former Member on 10/7/2021 6:38:47 AM&lt;br /&gt;
&lt;div class="" style="margin:0;"&gt;This article explains a connection of the graphics controller, such as Epson S1D13781, to the TFT LCD and MCU. An example&amp;nbsp; of the embedded graphics system is Colibri Graphics Epson S1D13781 Development&amp;nbsp; Platform (&lt;a class="jive-link-external-small" href="http://www.colibrigraphics.com/" rel="nofollow ugc noopener" target="_blank"&gt;http://www.colibrigraphics.com&lt;/a&gt;).&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="" style="margin:0;"&gt;From the top view, the embedded graphics system&amp;nbsp; consists of: MCU or processor, graphics controller with a frame buffer, and LCD.&amp;nbsp; Sometimes, the graphics controller with the frame buffer and LCD may be integrated&amp;nbsp; in one module. The MCU writes pixel information into the frame buffer. The&amp;nbsp; graphics controller continuously reads the pixel information from the frame&amp;nbsp; buffer and forms a high-speed video stream for the LCD.&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt; &lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;div align="center" class="" style="margin:0;text-align:center;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt;&lt;a href="http://www.colibrigraphics.com/images/article_01/image001.jpg"&gt;&lt;img alt="image" border="0" height="350" src="http://www.colibrigraphics.com/images/article_01/image001.jpg" width="576"  /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt; &lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt; &lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="" style="margin:0;"&gt;Usually, the graphics controller is connected to&amp;nbsp; the MCU via a parallel data bus. There are two main types of parallel data&amp;nbsp; interfaces: Intel 80 and Motorola 68. The difference is the read/write signaling&amp;nbsp; method. Intel 80 has separate read and write strobes while Motorola 68 has an&amp;nbsp; enabling strobe and a read/write selection signal.&lt;/div&gt;&lt;span style="font-size:12pt;"&gt;&lt;br clear="all" /&gt; &lt;/span&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/div&gt;&lt;div align="center" class="" style="margin:0;text-align:center;"&gt;&lt;strong&gt;Motorola&amp;nbsp; 68 and Intel 80 Signaling Methods&lt;/strong&gt;&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/div&gt;&lt;div align="center" class="" style="margin:0;text-align:center;"&gt;&lt;a href="http://www.colibrigraphics.com/images/article_01/image002.gif"&gt;&lt;img loading="lazy" alt="image" border="0" height="344" src="http://www.colibrigraphics.com/images/article_01/image002.gif" width="527"  /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="" style="margin:0;"&gt;Typically, the data width of the parallel interface&amp;nbsp; can be 8- or 16-bit. For 8-bit variants, the first address bus line, A0,&amp;nbsp; defines the byte for the current read or write operation. If the data bus width is&amp;nbsp; 16 bits, the first address bus line, A0, selects the 16-bit words.&amp;nbsp; To operate on just one byte within the 16-bit word, the 16-bit interface has two&amp;nbsp; additional signals: BSL (byte select low) and BSH (byte select high). Sometimes it&amp;nbsp; is possible to connect an 8-bit bus to a 16-bit device. The following&amp;nbsp; diagram shows the data and address signals translation.&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt; &lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;div align="center" class="" style="margin:0;text-align:center;"&gt;&lt;strong&gt;8-Bit&amp;nbsp; Parallel Data Bus to 16-bit Parallel Data Bus Connection&lt;/strong&gt;&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt; &lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;div align="center" class="" style="margin:0;text-align:center;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt;&lt;a href="http://www.colibrigraphics.com/images/article_01/image003.gif"&gt;&lt;img loading="lazy" alt="image" border="0" height="241" src="http://www.colibrigraphics.com/images/article_01/image003.gif" width="481"  /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt; &lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="" style="margin:0;"&gt;To reduce the number of address lines, the address multiplexing can be used. In this case, the data transfer on the&amp;nbsp; parallel bus consists of several stages. At first, the master device transmits the&amp;nbsp; address on the data bus with special address latch strobes. The slave device&amp;nbsp; uses these address latch strobes to store the address in its internal latches.&amp;nbsp; After this, the data are transmitted.&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/div&gt;&lt;div align="center" class="" style="margin:0;text-align:center;"&gt;&lt;strong&gt;Address Multiplexing&lt;/strong&gt;&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/div&gt;&lt;div align="center" class="" style="margin:0;text-align:center;"&gt;&lt;a href="http://www.colibrigraphics.com/images/article_01/image004.gif"&gt;&lt;img loading="lazy" alt="image" border="0" height="218" src="http://www.colibrigraphics.com/images/article_01/image004.gif" width="520"  /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="" style="margin:0;"&gt;A graphics controller is connected to the color TFT&amp;nbsp; LCD via RGB interface. There are different types of RGB interfaces, but usually,&amp;nbsp; it has a parallel RGB data bus, data clock, data enable strobe, and vertical&amp;nbsp; and horizontal synchronization signals. An RGB glass interface can use&amp;nbsp; different data clock polarity (data may be latched on rising or falling clock&amp;nbsp; edges). Sometimes, the glass can be synchronized with an enable signal (without vertical and horizontal signals) and sometimes the enable strobe is not required. Most often, the data width is 18 bits (6 red: 6 green: 6 blue)&amp;nbsp; or 24 bits (8 red: 8 green: 8 blue).&amp;nbsp; If the number of LCD data inputs is more than graphics controller data outputs, then superfluous LCD&amp;nbsp; least-significant data inputs for each color must be connected to the most significant&amp;nbsp; data signals. In this case, the glass can output maximum bright and minimum&amp;nbsp; black intensity.&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt; &lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;strong style="font-size:12pt;"&gt;&lt;br clear="all" /&gt; &lt;/strong&gt;&lt;div align="center" class="" style="margin:0;text-align:center;"&gt;&lt;strong&gt;18-Bit&amp;nbsp; Graphics Controller LCD Data Bus to 24-Bit LCD Data Bus Connection&lt;/strong&gt;&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt; &lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;div align="center" class="" style="margin:0;text-align:center;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt;&lt;a href="http://www.colibrigraphics.com/images/article_01/image005.gif"&gt;&lt;img loading="lazy" alt="image" border="0" height="469" src="http://www.colibrigraphics.com/images/article_01/image005.gif" width="463"  /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt; &lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&lt;span style="font-family:Helvetica;color:black;font-size:10pt;"&gt; &lt;/span&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="" style="margin:0;"&gt;TFT display may require several power sources.&amp;nbsp; Usually, these are digital logic (VDD = +3.3V), analog circuitry (usually VAA = +5V),&amp;nbsp; TFT transistors gates control (usually VGH = +15V and VGL = -10V), and&amp;nbsp; backlight power. The TFT LCD should be powered correctly. Otherwise, the liquid&amp;nbsp; crystal can be degraded during on/off cycles. The recommended power sequence is synchronization signals and digital logic power (+3.3V), analog power&amp;nbsp; (+5V), gate voltage low (-10V), and gate voltage high (+15V). Often, the LCD&amp;nbsp; module has built-in power regulators to get all voltages from one +3.3V source.&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="" style="margin:0;"&gt;In some cases, the LCD module must be programmed&amp;nbsp; before it can be used.&amp;nbsp; Usually, the programming is performed with a 3-wire SPI interface (without slave output line). The number of bits in one&amp;nbsp; transfer can differ from the standard 8- or 16-bit transfers supported by most MCUs.&amp;nbsp; It can be 9- or 24-bit, for example. Also, the additional line may be required&amp;nbsp; for data or command selection.&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="" style="margin:0;"&gt;There are TFT LCDs without VCOM (common electrode)&amp;nbsp; level generation. This analog signal must be formed from a digital liquid&amp;nbsp; crystal polarity signal (ID or REV) with an external analog level shifter.&lt;/div&gt;&lt;div class="" style="margin:0;padding:0px;"&gt;&amp;nbsp;&lt;/div&gt;&lt;span&gt;Anton Alkhim,&lt;/span&gt;&lt;br /&gt;&lt;p style="margin:0;"&gt;&lt;strong&gt;Colibri Software, 2010&lt;br /&gt;&lt;a class="jive-link-external-small" href="http://www.colibrigraphics.com/" rel="nofollow ugc noopener" target="_blank"&gt;http://www.colibrigraphics.com&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;

&lt;div style="font-size: 90%;"&gt;Tags: lcd, s1d13748, gui, s1d13781, mcu, arm, widget&lt;/div&gt;
</description></item></channel></rss>