<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: FTDI FT800 LCD TFT display + LPC1769 - some problems with graphic commands in LPC Microcontrollers</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/FTDI-FT800-LCD-TFT-display-LPC1769-some-problems-with-graphic/m-p/515639#M1283</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Hi,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Have you solved your problem?&lt;/P&gt;&lt;P&gt;I am interested in about but with the i.MX RT1020 EVK and ft800 or bt 815&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 29 May 2019 08:17:15 GMT</pubDate>
    <dc:creator>floriangermé</dc:creator>
    <dc:date>2019-05-29T08:17:15Z</dc:date>
    <item>
      <title>FTDI FT800 LCD TFT display + LPC1769 - some problems with graphic commands</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/FTDI-FT800-LCD-TFT-display-LPC1769-some-problems-with-graphic/m-p/515637#M1281</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by teslabox on Wed May 11 13:07:22 MST 2016&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi guys,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am dealing with FT800 FTDI LCD TFT 5 inches display.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I run it via SPI0/SSP0 at 10 MHz with my LPCXpresso LPC1769 Rev. C and I am using FT800.h library with mapped memory of FT800&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;and I run some ANSI C example code from FTDI website for ARM:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;A _jive_internal="true" class="" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Fhttp%3A%2F%2Fwww.ftdichip.com%2FSupport%2FSoftwareExamples%2FFT800_Projects.htm%23ARM" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.ftdichip.com/Support/SoftwareExamples/FT800_Projects.htm#ARM&lt;/A&gt;&lt;BR /&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;A _jive_internal="true" class="" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Fhttp%3A%2F%2Fwww.ftdichip.com%2FSupport%2FSoftwareExamples%2FEVE%2FAN_312.zip" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.ftdichip.com/Support/SoftwareExamples/EVE/AN_312.zip&lt;/A&gt;&lt;BR /&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;A _jive_internal="true" class="" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Fhttp%3A%2F%2Fwww.ftdichip.com%2FSupport%2FDocuments%2FAppNotes%2FAN_312%2520FT800%2520Example%2520with%2520ARM.pdf" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.ftdichip.com/Support/Documents/AppNotes/AN_312%20FT800%20Example%20with%20ARM.pdf&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I modified a bit ANSI C code from example to run with my LPC1769 C code libraries and I run example proggram - toggling a point on the backgraound.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;It works great but I want more... and I try do display some button.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;In according to FT800 Proggraming Guide I composed/wrote some C code to display button (just button)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- &lt;/SPAN&gt;&lt;A _jive_internal="true" class="" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Fhttp%3A%2F%2Fwww.ftdichip.com%2FSupport%2FDocuments%2FProgramGuides%2FFT800%2520Programmers%2520Guide.pdf" rel="nofollow noopener noreferrer" target="_blank"&gt;http://www.ftdichip.com/Support/Documents/ProgramGuides/FT800%20Programmers%20Guide.pdf &lt;/A&gt;&lt;BR /&gt;&lt;SPAN&gt;but there is something wrong... the display is not running... &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My C code for button displaying is shown below:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;There is:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Header of Display list&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- First method of button displaying (does not work),&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Second method of button displaying (does not work),&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Displaying the toggle point (works OK),&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;- Ending of Display list&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;DIV class="j-rte-table"&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca" style="border:1px solid black;background-color:#cacaca;border:1px solid black;background-color:#cacaca;border:1px solid black;background-color:#cacaca;border:1px solid black;background-color:#cacaca;border:1px solid black;background-color:#cacaca;background-color:#cacaca;border:1px solid black;background-color:#cacaca;border:1px solid black;background-color:#cacaca;border:1px solid black;background-color:#cacaca;border:1px solid black;"&gt; &lt;PRE&gt;// HEADER OF DISPLAY LIST START - BEGIN
ft800memWrite32 (RAM_CMD + cmdOffset, (CMD_DLSTART));// Start the display list
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer

ft800memWrite32 (RAM_CMD + cmdOffset, (DL_CLEAR_RGB | BackgroundColor));// Set the default clear color to black
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer

ft800memWrite32 (RAM_CMD + cmdOffset, (DL_CLEAR | CLR_COL | CLR_STN | CLR_TAG));// Clear the screen - this and the previous prevent artifacts between lists
// Attributes are the color, stencil and tag buffers
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer
// HEADER OF DISPLAY LIST START - END

#if (CREATE_BUTTON_METHOD_NUMBER == 0)
// BUTTON - BEGIN
// Command Button
// Address 0-3; 4 bytes
ft800memWrite32 (RAM_CMD + cmdOffset, (CMD_BUTTON));
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer

// X-coordinate of button top-left, in pixels; Address 4-5; 2 bytes
// Y-coordinate of button top-left, in pixels; Address 6-7; 2 bytes
ft800memWrite32 (RAM_CMD + cmdOffset, ( (100 &amp;lt;&amp;lt; 16) | (100) ));
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer

// Width of button, in pixels;&amp;nbsp; Address 8-9; 2 byte
// Height of button, in pixels; Address 10-11; 2 bytes
ft800memWrite32 (RAM_CMD + cmdOffset, ( (50 &amp;lt;&amp;lt; 16) | (25) ));
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer

// Font of button;&amp;nbsp;&amp;nbsp;&amp;nbsp; Address 12-13; 2 bytes
// Options of button; Address 14-15; 2 bytes
//
ft800memWrite32 (RAM_CMD + cmdOffset, ( (31 &amp;lt;&amp;lt; 16) | (0) ));
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer

// Text of button - "OK": "O" + "K" + "NULL"
// Address 16-19; 4 byte
ft800memWrite32 (RAM_CMD + cmdOffset, ( (0x4F &amp;lt;&amp;lt; 24) | (0x4B &amp;lt;&amp;lt; 16) | (0x00 &amp;lt;&amp;lt; 8) | (0x00 &amp;lt;&amp;lt; 0)));
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer
// BUTTON - END
#endif

#if (CREATE_BUTTON_METHOD_NUMBER == 1)
// BUTTON - BEGIN
// Command Button
// Address 0-3; 4 bytes
ft800memWrite32 (RAM_CMD + cmdOffset, (CMD_BUTTON));
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer

// X-coordinate of button top-left, in pixels
// Address 4-5; 2 bytes
ft800memWrite16 (RAM_CMD + cmdOffset, 100);
cmdOffset = incCMDOffset (cmdOffset, 2);// Update the command pointer

// Y-coordinate of button top-left, in pixels
// Address 6-7; 2 bytes
ft800memWrite16 (RAM_CMD + cmdOffset, 100);
cmdOffset = incCMDOffset (cmdOffset, 2);// Update the command pointer

// Width of button, in pixels
// Address 8-9; 2 byte
ft800memWrite16 (RAM_CMD + cmdOffset, 50);
cmdOffset = incCMDOffset (cmdOffset, 2);// Update the command pointer

// Height of button, in pixels
// Address 10-11; 2 bytes
ft800memWrite16 (RAM_CMD + cmdOffset, 25);
cmdOffset = incCMDOffset (cmdOffset, 2);// Update the command pointer

// Font of button
// Address 12-13; 2 bytes
ft800memWrite16 (RAM_CMD + cmdOffset, 31);
cmdOffset = incCMDOffset (cmdOffset, 2);// Update the command pointer

// Options of button
// Address 14-15; 2 bytes
ft800memWrite16 (RAM_CMD + cmdOffset, 0);
cmdOffset = incCMDOffset (cmdOffset, 2);// Update the command pointer

// Text of button - "OK": "O"
// Address 16; 1 byte
ft800memWrite8 (RAM_CMD + cmdOffset, 0x4F);
cmdOffset = incCMDOffset (cmdOffset, 1);// Update the command pointer

// Text of button - "OK": "K"
// Address 17; 1 byte
ft800memWrite8 (RAM_CMD + cmdOffset, 0x4B);
cmdOffset = incCMDOffset (cmdOffset, 1);// Update the command pointer

// String terminated with null character, i.e. '\0'
ft800memWrite8 (RAM_CMD + cmdOffset, 0x00);
cmdOffset = incCMDOffset (cmdOffset, 1);// Update the command pointer
// BUTTON - END
#endif

#if (CREATE_TOGGLE_POINT == 1)
// DRAW POINT - BEGIN
ft800memWrite32 (RAM_CMD + cmdOffset, (DL_COLOR_RGB | color));// Set the color of the following item(s) - toggle red/white from above
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer

ft800memWrite32 (RAM_CMD + cmdOffset, (DL_POINT_SIZE | point_size));// Select the size of the dot to draw
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer

ft800memWrite32 (RAM_CMD + cmdOffset, (DL_BEGIN | FTPOINTS));// Indicate to draw a point (dot)
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer

ft800memWrite32 (RAM_CMD + cmdOffset, (DL_VERTEX2F | (point_x &amp;lt;&amp;lt; 15) | point_y));// Set the point center location
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer

ft800memWrite32 (RAM_CMD + cmdOffset, (DL_END));// End the point
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer
// DRAW POINT - END
#endif


// ENDING OF DISPLAY LIST START - BEGIN
ft800memWrite32 (RAM_CMD + cmdOffset, (DL_DISPLAY));// Instruct the graphics processor to show the list
cmdOffset = incCMDOffset(cmdOffset, 4);// Update the command pointer

ft800memWrite32 (RAM_CMD + cmdOffset, (CMD_SWAP));// Make this list active
cmdOffset = incCMDOffset (cmdOffset, 4);// Update the command pointer

ft800memWrite16 (REG_CMD_WRITE, (cmdOffset));// Update the ring buffer pointer so the graphics processor starts executing
// ENDING OF DISPLAY LIST START - END

//////////////////////////////////////////////////////////////////////////////////////
//////////////////////// DISPLAY LIST - END //////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;In the attachements there are full ANSI C code files.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I will be very gratefull for support and help in this case.&lt;/SPAN&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-338134" rel="nofollow noopener noreferrer" target="_blank"&gt;main_24.c.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-338134" rel="nofollow noopener noreferrer" target="_blank"&gt;ssp_0.h.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-338134" rel="nofollow noopener noreferrer" target="_blank"&gt;FT800.h.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-338134" rel="nofollow noopener noreferrer" target="_blank"&gt;ssp_1.c.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:18:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/FTDI-FT800-LCD-TFT-display-LPC1769-some-problems-with-graphic/m-p/515637#M1281</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:18:15Z</dc:date>
    </item>
    <item>
      <title>Re: FTDI FT800 LCD TFT display + LPC1769 - some problems with graphic commands</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/FTDI-FT800-LCD-TFT-display-LPC1769-some-problems-with-graphic/m-p/515638#M1282</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;bump&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 19 Jun 2016 01:10:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/FTDI-FT800-LCD-TFT-display-LPC1769-some-problems-with-graphic/m-p/515638#M1282</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-19T01:10:49Z</dc:date>
    </item>
    <item>
      <title>Re: FTDI FT800 LCD TFT display + LPC1769 - some problems with graphic commands</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/FTDI-FT800-LCD-TFT-display-LPC1769-some-problems-with-graphic/m-p/515639#M1283</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #51626f; background-color: #ffffff;"&gt;Hi,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Have you solved your problem?&lt;/P&gt;&lt;P&gt;I am interested in about but with the i.MX RT1020 EVK and ft800 or bt 815&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 29 May 2019 08:17:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/FTDI-FT800-LCD-TFT-display-LPC1769-some-problems-with-graphic/m-p/515639#M1283</guid>
      <dc:creator>floriangermé</dc:creator>
      <dc:date>2019-05-29T08:17:15Z</dc:date>
    </item>
  </channel>
</rss>

