<?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: MKE04VTG4 Timing Issue in LPC Microcontrollers</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/MKE04VTG4-Timing-Issue/m-p/1030632#M40120</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Muralidhar,&lt;/P&gt;&lt;P&gt;I remember that there is a bug for the PIT for Kinetis, user has to read the PIT control register beside clearingf the flag in PIT-&amp;gt;CHANNEL[0].TFLG .&lt;/P&gt;&lt;P&gt;Pls use the code and have a try.&lt;/P&gt;&lt;P&gt;BR&lt;/P&gt;&lt;P&gt;XiangJun Rong&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void PIT_CH0_IRQHandler()&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;//PIT-&amp;gt;CHANNEL[0].TFLG = 0x01;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;// Disable Interrupt&lt;BR /&gt;&amp;nbsp;//PIT-&amp;gt;CHANNEL[0].TCTRL = 0x00;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;// Disable timer &amp;amp; Stop timer&lt;BR /&gt;&amp;nbsp;//PIT-&amp;gt;CHANNEL[0].TCTRL = 0x03;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Start Timer &amp;amp; Interrupt Enable&lt;/P&gt;&lt;P&gt;&amp;nbsp;PIT-&amp;gt;CHANNEL[0].TFLG = 0x01;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;// Disable Interrupt&lt;/P&gt;&lt;P&gt;PIT-&amp;gt;CHANNEL[0].TCTRL;&lt;BR /&gt;&amp;nbsp;count_l++;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(count_l &amp;gt;= LED_TOGGLE_VALUE)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;flag = flag^1;&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;&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;&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;&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;&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;&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;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GPIO_PortToggle(kGPIO_PORTB, 0x20);&amp;nbsp; // toggle led for every 500msec&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;count_l = RESET;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;BR /&gt;&amp;nbsp;ADC_SetChannelConfig(ADC,&amp;amp;sADC_Config_1);&lt;BR /&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 16 Mar 2020 07:01:46 GMT</pubDate>
    <dc:creator>xiangjun_rong</dc:creator>
    <dc:date>2020-03-16T07:01:46Z</dc:date>
    <item>
      <title>MKE04VTG4 Timing Issue</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/MKE04VTG4-Timing-Issue/m-p/1030631#M40119</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;In my application, iam using 16 MKE04VTG4 controllers. Same firmware and Hardware for all.&lt;/P&gt;&lt;P&gt;All the health LEDs are sinking with another for some time around 2 minutes only. Later&amp;nbsp;all&amp;nbsp;Health LEDs are unable sink with&amp;nbsp;&amp;nbsp;one to another.&lt;/P&gt;&lt;P&gt;May I Know what is the reason.&lt;/P&gt;&lt;P&gt;Below is the code in all controllers for health LED.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void PIT_CH0_IRQHandler()&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;PIT-&amp;gt;CHANNEL[0].TFLG = 0x01;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;// Disable Interrupt&lt;BR /&gt;&amp;nbsp;PIT-&amp;gt;CHANNEL[0].TCTRL = 0x00;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;// Disable timer &amp;amp; Stop timer&lt;BR /&gt;&amp;nbsp;PIT-&amp;gt;CHANNEL[0].TCTRL = 0x03;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Start Timer &amp;amp; Interrupt Enable&lt;BR /&gt;&amp;nbsp;count_l++;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(count_l &amp;gt;= LED_TOGGLE_VALUE)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;flag = flag^1;&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;&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;&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;&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;&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;&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;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GPIO_PortToggle(kGPIO_PORTB, 0x20);&amp;nbsp; // toggle led for every 500msec&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;count_l = RESET;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;BR /&gt;&amp;nbsp;ADC_SetChannelConfig(ADC,&amp;amp;sADC_Config_1);&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void pit_init()&lt;BR /&gt;{&lt;BR /&gt;pit_config.enableRunInDebug = false;&lt;BR /&gt;PIT_Init(PIT, &amp;amp;pit_config);&amp;nbsp;&amp;nbsp; // PIT PERIPHERAL RUNS ON BUS CLOCK, AS PER USER MANUAL&lt;BR /&gt;&amp;nbsp;PIT-&amp;gt;MCR&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; = 0x00;&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;&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;&amp;nbsp; // Enable clock for PIT&lt;BR /&gt;&amp;nbsp;PIT-&amp;gt;CHANNEL[0].LDVAL = 240000;//(BUS_CLOCK*(PIT_INT/1000));&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // LOAD VALUE FOR EVERY 10MSEC INTERRUPT&lt;BR /&gt;&amp;nbsp;PIT-&amp;gt;CHANNEL[0].TCTRL = 0x03;&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;&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;&amp;nbsp; // Start Timer &amp;amp; Interrupt Enable&lt;BR /&gt;&amp;nbsp;NVIC_EnableIRQ(PIT_CH0_IRQn);&lt;BR /&gt;&amp;nbsp;NVIC_SetPriority(PIT_CH0_IRQn,0);&lt;BR /&gt;&amp;nbsp;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It is also observed that PIT Interrupt is triggering below count down register becomes zero.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 14 Mar 2020 07:29:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/MKE04VTG4-Timing-Issue/m-p/1030631#M40119</guid>
      <dc:creator>TEMCEFF</dc:creator>
      <dc:date>2020-03-14T07:29:11Z</dc:date>
    </item>
    <item>
      <title>Re: MKE04VTG4 Timing Issue</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/MKE04VTG4-Timing-Issue/m-p/1030632#M40120</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Muralidhar,&lt;/P&gt;&lt;P&gt;I remember that there is a bug for the PIT for Kinetis, user has to read the PIT control register beside clearingf the flag in PIT-&amp;gt;CHANNEL[0].TFLG .&lt;/P&gt;&lt;P&gt;Pls use the code and have a try.&lt;/P&gt;&lt;P&gt;BR&lt;/P&gt;&lt;P&gt;XiangJun Rong&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;void PIT_CH0_IRQHandler()&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;//PIT-&amp;gt;CHANNEL[0].TFLG = 0x01;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;// Disable Interrupt&lt;BR /&gt;&amp;nbsp;//PIT-&amp;gt;CHANNEL[0].TCTRL = 0x00;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;// Disable timer &amp;amp; Stop timer&lt;BR /&gt;&amp;nbsp;//PIT-&amp;gt;CHANNEL[0].TCTRL = 0x03;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Start Timer &amp;amp; Interrupt Enable&lt;/P&gt;&lt;P&gt;&amp;nbsp;PIT-&amp;gt;CHANNEL[0].TFLG = 0x01;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;// Disable Interrupt&lt;/P&gt;&lt;P&gt;PIT-&amp;gt;CHANNEL[0].TCTRL;&lt;BR /&gt;&amp;nbsp;count_l++;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(count_l &amp;gt;= LED_TOGGLE_VALUE)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;flag = flag^1;&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;&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;&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;&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;&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;&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;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;GPIO_PortToggle(kGPIO_PORTB, 0x20);&amp;nbsp; // toggle led for every 500msec&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;count_l = RESET;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&amp;nbsp;&lt;BR /&gt;&amp;nbsp;ADC_SetChannelConfig(ADC,&amp;amp;sADC_Config_1);&lt;BR /&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Mar 2020 07:01:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/MKE04VTG4-Timing-Issue/m-p/1030632#M40120</guid>
      <dc:creator>xiangjun_rong</dc:creator>
      <dc:date>2020-03-16T07:01:46Z</dc:date>
    </item>
    <item>
      <title>Re: MKE04VTG4 Timing Issue</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/MKE04VTG4-Timing-Issue/m-p/1030633#M40121</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi XiangJun Rong,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Thanks for your concern. from ur code it is understand that no need of restart of PIT, once initialised, is it sir..?&lt;/P&gt;&lt;P&gt;Also, iam using 16 controllers parallely in my application, but&amp;nbsp;there is no&amp;nbsp;synchronisation of health leds, of all controllers.&lt;/P&gt;&lt;P&gt;May I know what is the reason. firmware &amp;amp; hardware are same for all controllers.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks &amp;amp; Regards,&lt;/P&gt;&lt;P&gt;K Chandu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Mar 2020 07:26:30 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/MKE04VTG4-Timing-Issue/m-p/1030633#M40121</guid>
      <dc:creator>TEMCEFF</dc:creator>
      <dc:date>2020-03-17T07:26:30Z</dc:date>
    </item>
    <item>
      <title>Re: MKE04VTG4 Timing Issue</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/MKE04VTG4-Timing-Issue/m-p/1030634#M40122</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, Muralidhar,&lt;/P&gt;&lt;P&gt;As you know that the frequency of&amp;nbsp; clock source of different KE04 is a little different, which leads to the issue that the LED on different boards can not synchronize. I suggest you use ONE KE04 as master, it can generate a GPIO signal and trigger all the other slave KE04, the triggering signal from master KE04 can be captured by the slave KE04, the capturing&amp;nbsp; event can be used to reset the PIT counter of slave KE04, in this way, the LED on all KE04 boards will synchronize.&lt;/P&gt;&lt;P&gt;Hope it can help you&lt;/P&gt;&lt;P&gt;BR&lt;/P&gt;&lt;P&gt;XiangJun Rong&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 17 Mar 2020 08:21:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/MKE04VTG4-Timing-Issue/m-p/1030634#M40122</guid>
      <dc:creator>xiangjun_rong</dc:creator>
      <dc:date>2020-03-17T08:21:59Z</dc:date>
    </item>
  </channel>
</rss>

