<?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>LPC Microcontrollers中的主题 Re: TFT LCD Video Compare Interrupt is NOT working properly</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/TFT-LCD-Video-Compare-Interrupt-is-NOT-working-properly/m-p/516517#M1720</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by emulund on Thu Dec 05 06:20:30 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for the reply&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Even&amp;nbsp; LCD's Next Base Address Update (INTSTAT &amp;amp; 0x04). is also misbehaving for me.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Should i do something inside the ISR ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The interrupt is NOT repeating...&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I used the above same ISR just changed LCD_INTMSK to this&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;code&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;LCD_INTMSK = (1 &amp;lt;&amp;lt; 2); &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;/code&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks in advance&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 17:24:11 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T17:24:11Z</dc:date>
    <item>
      <title>TFT LCD Video Compare Interrupt is NOT working properly</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/TFT-LCD-Video-Compare-Interrupt-is-NOT-working-properly/m-p/516514#M1717</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by emulund on Wed Dec 04 17:33:43 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hello All,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I Have my own custom build LPC1788 board.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;i am able to make my TFT LCD 320x240 work with external SDRAM.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Everything works fine as expected.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;But for some reason i need to use LCD's Vertical compare interrupt.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;When i enabled it and if i use my IAR debugger to set break point on the ISR then it triggers the ISR.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;But if i run without break point then it some time triggers for only once or twice but never again.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;still My TFT LCD is displaying a steady nice picture without any problem.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;my LCD's Horizontal,vertical sync &amp;amp; LCD DOT Clock&amp;nbsp; could be observerd on oscilloscope at the correct frequency and are very stable.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;i am running the lpc1788 at 96Mhz.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;My code to enable the vertical compare interrupt&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;
volatile __no_init __READ_WRITE unsigned long ISER1 @ 0xE000E104;

&amp;nbsp;&amp;nbsp; LCD_INTMSK = (1 &amp;lt;&amp;lt; 3); //Enable Vertical compare interrupt
&amp;nbsp;&amp;nbsp; ISER1 |= (1 &amp;lt;&amp;lt; 5);&amp;nbsp;&amp;nbsp; //Enable LCD Controller's Interrupt
//Enable LCD Controller
&amp;nbsp;&amp;nbsp; LCD_CTRL = (6 &amp;lt;&amp;lt; 1) | (1 &amp;lt;&amp;lt; 5) | (1 &amp;lt;&amp;lt; 11);
&amp;nbsp;&amp;nbsp; LCD_CTRL |= (1 &amp;lt;&amp;lt; 0); //Enable LCD Signals

My ISR

void LCD_IRQHandler(void)&amp;nbsp;&amp;nbsp; &amp;lt;------- execute only once or twice not any further
{
&amp;nbsp;&amp;nbsp; static unsigned int msk = 0;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp; if (LCD_INTSTAT &amp;amp; (1 &amp;lt;&amp;lt; 3)) //if vertical sync interrupt
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LCD_INTCLR = 0xf;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(!msk)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; msk = 1;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FIO5PIN |= KEY_ROW_MASK; //Just toggle the pin to observe the ISR's execution on oscilloscope
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; msk = 0;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FIO5PIN &amp;amp;= ~KEY_ROW_MASK;//Just toggle the pin to observe the ISR's execution on oscilloscope
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp; }
&amp;nbsp;&amp;nbsp; else
&amp;nbsp;&amp;nbsp; {
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LCD_INTCLR = 0xf;
&amp;nbsp;&amp;nbsp; }
}

&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;SPAN&gt;Please help me solve this problem.&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:24:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/TFT-LCD-Video-Compare-Interrupt-is-NOT-working-properly/m-p/516514#M1717</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:24:09Z</dc:date>
    </item>
    <item>
      <title>Re: TFT LCD Video Compare Interrupt is NOT working properly</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/TFT-LCD-Video-Compare-Interrupt-is-NOT-working-properly/m-p/516515#M1718</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by wmues on Thu Dec 05 03:20:43 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;I have not used the vertical sync interrupt.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have used the lcd next base address update (INTSTAT &amp;amp; 0x04). This is working.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I do not know why you need the vertical sync interrupt - maybe you can use the address update interrupt?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Wolfgang&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:24:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/TFT-LCD-Video-Compare-Interrupt-is-NOT-working-properly/m-p/516515#M1718</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:24:10Z</dc:date>
    </item>
    <item>
      <title>Re: TFT LCD Video Compare Interrupt is NOT working properly</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/TFT-LCD-Video-Compare-Interrupt-is-NOT-working-properly/m-p/516516#M1719</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by Pacman on Thu Dec 05 04:00:45 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Please wrap you code snippet in [color=#060][[/color][color=#060]code][/color] ... [color=#060][[/color][color=#060]/code][/color] tags, so it becomes readable.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;To do that, click the "Edit" tab at the top of your post.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Example:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;[color=#060][[/color][color=#060]code][/color]int32_t myVar = 1;[color=#060][[/color][color=#060]/code][/color]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;...results in...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;int32_t myVar = 1; &lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;If you do that, II will have a look at your post and see if I can find an answer.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:24:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/TFT-LCD-Video-Compare-Interrupt-is-NOT-working-properly/m-p/516516#M1719</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:24:11Z</dc:date>
    </item>
    <item>
      <title>Re: TFT LCD Video Compare Interrupt is NOT working properly</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/TFT-LCD-Video-Compare-Interrupt-is-NOT-working-properly/m-p/516517#M1720</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by emulund on Thu Dec 05 06:20:30 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for the reply&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Even&amp;nbsp; LCD's Next Base Address Update (INTSTAT &amp;amp; 0x04). is also misbehaving for me.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Should i do something inside the ISR ?&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;The interrupt is NOT repeating...&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I used the above same ISR just changed LCD_INTMSK to this&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;code&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;LCD_INTMSK = (1 &amp;lt;&amp;lt; 2); &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;lt;/code&amp;gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks in advance&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:24:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/TFT-LCD-Video-Compare-Interrupt-is-NOT-working-properly/m-p/516517#M1720</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:24:11Z</dc:date>
    </item>
    <item>
      <title>Re: TFT LCD Video Compare Interrupt is NOT working properly</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/TFT-LCD-Video-Compare-Interrupt-is-NOT-working-properly/m-p/516518#M1721</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by mc on Thu Dec 05 18:35:29 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi emulund,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I briefly looked into your code and was unable to catch any problem.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;You can also look into the example at below link which uses LCD interrupt for multiple buffering on EA LPC1788 board.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;A class="jive-link-external-small" href="https://community.nxp.com/external-link.jspa?url=http%3A%2F%2Fwww.lpcware.com%2Fcontent%2Fnxpfile%2Fan11328-implementing-emwin%25E2%2580%2599s-multiple-buffering-feature-lpc1788-microcontroller" rel="nofollow" target="_blank"&gt;http://www.lpcware.com/content/nxpfile/an11328-implementing-emwin%E2%80%99s-multiple-buffering-feature-lpc1788-microcontroller&lt;/A&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 17:24:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/TFT-LCD-Video-Compare-Interrupt-is-NOT-working-properly/m-p/516518#M1721</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T17:24:12Z</dc:date>
    </item>
  </channel>
</rss>

