<?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: 32 bit timer; PWM going to completley on state at non regular intervals in LPC Microcontrollers</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/32-bit-timer-PWM-going-to-completley-on-state-at-non-regular/m-p/537124#M11382</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by R2D2 on Wed Nov 20 00:11:43 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: george.thaliath&lt;/STRONG&gt;&lt;BR /&gt;It would be great if some one there could point me in which direction to look. or the cause for this to happen.&lt;BR /&gt;&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;To see a bit of code could be helpful...&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 19:37:05 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T19:37:05Z</dc:date>
    <item>
      <title>32 bit timer; PWM going to completley on state at non regular intervals</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/32-bit-timer-PWM-going-to-completley-on-state-at-non-regular/m-p/537123#M11381</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by george.thaliath on Tue Nov 19 23:20:38 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi, &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I have been working on the LPC1114's 32 bit timer.(configured as PWM)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I am changing the PWM duty cycle at a regular interval of 33Hz&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;while going through the output of the micro, it was noted that the PWM pulse was going to a full hight state for one complete timer period.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;This abnormal operation is repeated at NON REGULAR intervals.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;The piece of code also has UART and WDT in it.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I did check if the WDT was making the system reset(it is not)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;It would be great if some one there could point me in which direction to look. or the cause for this to happen.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;thanks in advance.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Cheers.&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 19:37:04 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/32-bit-timer-PWM-going-to-completley-on-state-at-non-regular/m-p/537123#M11381</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T19:37:04Z</dc:date>
    </item>
    <item>
      <title>Re: 32 bit timer; PWM going to completley on state at non regular intervals</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/32-bit-timer-PWM-going-to-completley-on-state-at-non-regular/m-p/537124#M11382</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by R2D2 on Wed Nov 20 00:11:43 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: george.thaliath&lt;/STRONG&gt;&lt;BR /&gt;It would be great if some one there could point me in which direction to look. or the cause for this to happen.&lt;BR /&gt;&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;To see a bit of code could be helpful...&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 19:37:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/32-bit-timer-PWM-going-to-completley-on-state-at-non-regular/m-p/537124#M11382</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T19:37:05Z</dc:date>
    </item>
    <item>
      <title>Re: 32 bit timer; PWM going to completley on state at non regular intervals</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/32-bit-timer-PWM-going-to-completley-on-state-at-non-regular/m-p/537125#M11383</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 Wed Nov 20 01:18:11 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;How do you synchronize the writing of a new PWM value to the current PWM counter value?&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 19:37:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/32-bit-timer-PWM-going-to-completley-on-state-at-non-regular/m-p/537125#M11383</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T19:37:06Z</dc:date>
    </item>
    <item>
      <title>Re: 32 bit timer; PWM going to completley on state at non regular intervals</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/32-bit-timer-PWM-going-to-completley-on-state-at-non-regular/m-p/537126#M11384</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by george.thaliath on Wed Nov 20 16:03:26 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi mate,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;change in PWM is done by just changing the count up value&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;as shown below.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;//PWMPulse changes value from 0 to 9600 which is what decides the duty of the PWM&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; LPC_TMR32B0-&amp;gt;MR1=9600-PWMPulse ;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I really did not understand, what u ment by sync before change.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;could you please explain. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks. :)&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 19:37:06 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/32-bit-timer-PWM-going-to-completley-on-state-at-non-regular/m-p/537126#M11384</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T19:37:06Z</dc:date>
    </item>
    <item>
      <title>Re: 32 bit timer; PWM going to completley on state at non regular intervals</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/32-bit-timer-PWM-going-to-completley-on-state-at-non-regular/m-p/537127#M11385</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by george.thaliath on Wed Nov 20 16:06:43 MST 2013&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;/*********************************************************************************/&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Main&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;/*********************************************************************************/&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;start loop&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Declare all the pins&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;check vor valid data on the UART&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;update PWM&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Repeat update PWM if or not valid data (refresh rate is around 200Hz)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;end loop&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;/*********************************************************************************/&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;config(delcaration of port pins and init)&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;/*********************************************************************************/&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;void TickHandler(void)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t i;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t millisec_increment = 1000 / SYS_TICK_RATE_HZ;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sys_millisec_cnt += millisec_increment;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (sys_millisec_cnt &amp;gt;= 1000)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sys_millisec_cnt -= 1000;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sys_seconds_cnt++;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; led_state ^= 1;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#ifndef PROTOTYPE_BOARD&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (led_state) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO0-&amp;gt;DATA |=&amp;nbsp; (1 &amp;lt;&amp;lt; 2); /* Led on P0.2 off */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO0-&amp;gt;DATA &amp;amp;= ~(1 &amp;lt;&amp;lt; 2); /* Led on P0.2 on */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#else&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (led_state) {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO0-&amp;gt;DATA |=&amp;nbsp; (1 &amp;lt;&amp;lt; 7); /* Led on P0.7 */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } else {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO0-&amp;gt;DATA &amp;amp;= ~(1 &amp;lt;&amp;lt; 7); /* Led on P0.7 */&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#endif&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=0; i&amp;lt;NR_OF_MSEC_COUNTERS; i++)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; app_millisec_cnt&lt;/SPAN&gt;&lt;I&gt; += millisec_increment;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;void bsp_init(void)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t i;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Init global variables */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; led_state = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sys_seconds_cnt = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sys_millisec_cnt = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=0; i&amp;lt;NR_OF_MSEC_COUNTERS; i++)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; app_millisec_cnt_avail&lt;I&gt; = true;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Setup the system tick timer */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NVIC_SetPriority(SysTick_IRQn, SYSTICK_IRQ_PRIORITY);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SysTick_Config(LPC_CORE_CLOCKSPEED_HZ / SYS_TICK_RATE_HZ);&lt;BR /&gt;&lt;BR /&gt;#ifdef SUPPORT_I2C_BUS&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_SYSCON-&amp;gt;PRESETCTRL |= (1 &amp;lt;&amp;lt; 1);&lt;BR /&gt;#endif&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_SYSCON-&amp;gt;SYSAHBCLKCTRL |= (1 &amp;lt;&amp;lt;&amp;nbsp; 6) |&amp;nbsp; /* Enable AHB clock to the GPIO domain */&lt;BR /&gt;#ifdef SUPPORT_I2C_BUS&lt;BR /&gt;&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; (1 &amp;lt;&amp;lt;&amp;nbsp; 5) |&amp;nbsp; /* Enable AHB clock to the I2C */&lt;BR /&gt;#endif&lt;BR /&gt;&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; (1 &amp;lt;&amp;lt;&amp;nbsp; 7) |&amp;nbsp; /* Enable AHB clock to the 16-bit counter/timer 0 */&lt;BR /&gt;&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; (1 &amp;lt;&amp;lt;&amp;nbsp; 8) |&amp;nbsp; /* Enable AHB clock to the 16-bit counter/timer 1 */&lt;BR /&gt;&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; (1 &amp;lt;&amp;lt;&amp;nbsp; 9) |&amp;nbsp; /* Enable AHB clock to the 32-bit counter/timer 0 */&lt;BR /&gt;&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; (1 &amp;lt;&amp;lt;&amp;nbsp; 10)|&amp;nbsp; /* Enable AHB clock to the 32-bit counter/timer 1 */&lt;BR /&gt;&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; (1 &amp;lt;&amp;lt;&amp;nbsp; 12) |&amp;nbsp; /* Enable AHB clock to the UART */&lt;BR /&gt;&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; (1 &amp;lt;&amp;lt;&amp;nbsp; 15);&amp;nbsp;&amp;nbsp; /* Enable AHB clock to the WDT */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Configuring LED pin P0.3 (traffic LED) */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO0_3 = 0xC0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, no pull up/down, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO0-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 3);&amp;nbsp;&amp;nbsp; // set PIO pin P0.3 as output&lt;BR /&gt;#ifndef PROTOTYPE_BOARD&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Configuring LED pin P0.2 (heartbeat LED) */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO0_2 = 0xC0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, no pull up/down, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO0-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 2);&amp;nbsp;&amp;nbsp; // set PIO pin P0.2 as output&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Configure pin P0.7 for DMX bus data direction control */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO0_7 = 0xC0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, no pull up/down, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO0-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 7);&amp;nbsp;&amp;nbsp; // set PIO pin P0.7 as output&lt;BR /&gt;#else&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Configuring LED pin P0.7 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO0_7 = 0xC0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, no pull up/down, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO0-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 7);&amp;nbsp;&amp;nbsp; // set PIO pin P0.7 as output&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Configure pin P2.6 for DMX bus data direction control */&lt;BR /&gt;&amp;nbsp;&amp;nbsp; // LPC_IOCON-&amp;gt;PIO2_6 = 0xC0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, no pull up/down, disable hysteresis&lt;BR /&gt;&amp;nbsp; //&amp;nbsp; LPC_GPIO2-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 6);&amp;nbsp;&amp;nbsp; // set PIO pin P2.6 as output&lt;BR /&gt;#endif&lt;BR /&gt;&amp;nbsp;&amp;nbsp; // bsp_recv_from_dmx_bus();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Configuring the DIP switches P2.1, P2.4, P3.5 and P0.6 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO2_1 = 0xC8;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, pull up, disable hysteresis DV&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO2-&amp;gt;DIR &amp;amp;= ~(1 &amp;lt;&amp;lt; 1);&amp;nbsp; // set PIO pin P2.1 as input&amp;nbsp; Bit-0&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO2_4 = 0xC8;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, pull up, disable hysteresis&amp;nbsp;&amp;nbsp; DV&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO2-&amp;gt;DIR &amp;amp;= ~(1 &amp;lt;&amp;lt; 4);&amp;nbsp; // set PIO pin P2.4 as input&amp;nbsp; Bit-1&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO3_5 = 0xC8;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, pull up, disable hysteresis&amp;nbsp; DV&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO3-&amp;gt;DIR &amp;amp;= ~(1 &amp;lt;&amp;lt; 5); // set PIO pin P3.5 as input&amp;nbsp; Bit-2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO0_6 = 0xC8;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, pull up, disable hysteresis&amp;nbsp; DV&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO0-&amp;gt;DIR &amp;amp;= ~(1 &amp;lt;&amp;lt; 6); // set PIO pin P0.6 as input&amp;nbsp; Bit-3&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // dmx_set_to_dmx_bus();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO2_11 = 0xC0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, pull up, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO2-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 11);&amp;nbsp;&amp;nbsp; // set PIO pin P2.11 as output X1&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO2_2 = 0xC0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode,pull up, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO2-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 2);&amp;nbsp;&amp;nbsp; // set PIO pin P2.2 as output&amp;nbsp; X10&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO2_10 = 0xC0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode,pull up, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO2-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 10);&amp;nbsp;&amp;nbsp; // set PIO pin P2.10 as output X100&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO2_9 = 0xC0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode,pull up, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO2-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 9);&amp;nbsp;&amp;nbsp; // set PIO pin P2.9 as output&amp;nbsp; Mode&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; Analog_Channel_Set(1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO2_7 = 0xD0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, pull up, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO2-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 7);&amp;nbsp;&amp;nbsp; // set PIO pin P2.7 as output S1&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO2_8 = 0xD0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, pull up, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO2-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 8);&amp;nbsp;&amp;nbsp; // set PIO pin P2.8 as output S2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO3_2 = 0xD0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, pull up, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO3-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 2);&amp;nbsp;&amp;nbsp; // set PIO pin P3.2 as output S0&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO2-&amp;gt;DATA |=&amp;nbsp; (1 &amp;lt;&amp;lt; 7);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO2-&amp;gt;DATA |=&amp;nbsp; (1 &amp;lt;&amp;lt; 8);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO3-&amp;gt;DATA |=&amp;nbsp; (1 &amp;lt;&amp;lt; 2);&lt;BR /&gt;//start of wL control pin and Wlink control&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO0_8 = 0xC0;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, pull up, disable hysteresis DV&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO0-&amp;gt;DIR &amp;amp;= ~(1 &amp;lt;&amp;lt; 8);&amp;nbsp; // set PIO pin P2.1 as input&amp;nbsp; Bit-0&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO0-&amp;gt;DATA |=&amp;nbsp; (1 &amp;lt;&amp;lt; 8);&lt;BR /&gt;//end of WL control pin&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //to be removed, this is been set for demo&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO1_11 = 0xC0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO1-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 11);&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO1_4 = 0xC0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO1-&amp;gt;DIR |= (1 &amp;lt;&amp;lt; 4);&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Configure CT32B0 and CT32B1 match pins 0 and 1 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt; PIO2_5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;= ~0x07;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt; PIO2_5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |= 0x01; // select CT32B0_MAT0&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt; PIO2_6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;amp;= ~0x07;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt; PIO2_6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; |= 0x01;// select CT32B0_MAT1&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO0_1&amp;nbsp; = 0xE2;&amp;nbsp;&amp;nbsp; //CA;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select CT32B0_MAT2&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Timer_PWM_Init(CT32B0);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;JTAG_TDO_PIO1_1&amp;nbsp; &amp;amp;= ~0x07;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;JTAG_TDO_PIO1_1&amp;nbsp; |= 0x03;/* Timer1_32 MAT0 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;JTAG_nTRST_PIO1_2 &amp;amp;= ~0x07;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;JTAG_nTRST_PIO1_2 |= 0x03;/* Timer1_32 MAT1 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;ARM_SWDIO_PIO1_3&amp;nbsp; &amp;amp;= ~0x07;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;ARM_SWDIO_PIO1_3&amp;nbsp; |= 0x03;/* Timer1_32 MAT2 */&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; Timer_PWM_Init(CT32B1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; dim_leds(0,0,0,0,0,0,0);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Configuring UART RXD pin */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO1_6 = 0xD1;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select RXD mode, pull up, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Configuring UART TXD pin */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO1_7 = 0xD1;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select TXD mode, pull up, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Uart_Init();&lt;BR /&gt;&lt;BR /&gt;#ifdef SUPPORT_I2C_BUS&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Configuring I2C SCL pin */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO0_4 = 0x0001;&amp;nbsp;&amp;nbsp; // select SCL mode, standard mode&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Configuring I2C SDA pin */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO0_5 = 0x0001;&amp;nbsp;&amp;nbsp; // select SDA mode, standard mode&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I2C_Init(I2CMASTER,0,0,0);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; lcd_init();&lt;BR /&gt;#endif&lt;BR /&gt;&lt;BR /&gt;#ifdef SUPPORT_MANUAL_CONTROL&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Configuring joystick pins P3.0, P3.1, P2.3, P3.3 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO3_0 = 0xC8;// select PIO mode, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO3-&amp;gt;DIR &amp;amp;= ~(1 &amp;lt;&amp;lt; 0);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO3_1 = 0xC8;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO3-&amp;gt;DIR &amp;amp;= ~(1 &amp;lt;&amp;lt; 1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO2_3 = 0xC8;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, disable hysteresis Deepak Varma&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO2-&amp;gt;DIR &amp;amp;= ~(1 &amp;lt;&amp;lt; 3);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO3_3 = 0xC8;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // select PIO mode, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO3-&amp;gt;DIR &amp;amp;= ~(1 &amp;lt;&amp;lt; 3); // set PIO pin P2.3 as input&lt;BR /&gt;#endif&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //setting up the emergency pins on the micro controller&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //pin numbers 33 is Em on&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //pin number 45 is EM off&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //pin number 45&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;PIO1_5 = 0xD0;// select PIO mode, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO1-&amp;gt;DIR &amp;amp;= ~(1 &amp;lt;&amp;lt; 5);// set as input&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //setting pin number 33&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_IOCON-&amp;gt;JTAG_TMS_PIO1_0 = 0xD0;// select PIO mode, disable hysteresis&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_GPIO1-&amp;gt;DIR &amp;amp;= ~(1 &amp;lt;&amp;lt; 0);// set as input&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; WDT_Init(10);&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; // 10 seconds timeout&lt;BR /&gt;}&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;/*********************************************************************************/&lt;BR /&gt;&lt;BR /&gt;init of the timer &lt;BR /&gt;&lt;BR /&gt;/*********************************************************************************/&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;void Timer_PWM_Init(uint8_t ctId)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t pclk_freq = SystemAHBFrequency;/* get the clock of the timer unit */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t pwmfrq = pclk_freq / PWM_FREQ;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp; switch (ctId)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; case CT32B0:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B0-&amp;gt;TCR&amp;nbsp; = 0x02;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* disable and reset this CounterTimer */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B0-&amp;gt;PR&amp;nbsp;&amp;nbsp; = 0x00;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* set prescaler to zero */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B0-&amp;gt;MR3&amp;nbsp; = pwmfrq;&amp;nbsp;&amp;nbsp; /* set the default frequency in MR3 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Timer_PWM_Set_Duty_Cycle(ctId, CTMAT0, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY,2,4);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Timer_PWM_Set_Duty_Cycle(ctId, CTMAT1, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY,2,4);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Timer_PWM_Set_Duty_Cycle(ctId, CTMAT2, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY,2,4);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B0-&amp;gt;MCR&amp;nbsp; = 0x400;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* reset timer on match of MR3, no interrupts */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B0-&amp;gt;PWMC = 0x07;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* select PWM mode for CT32B0_MAT0 ,CT32B0_MAT1 and CT32B0_MAT2 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B0-&amp;gt;IR&amp;nbsp;&amp;nbsp; = 0x1F;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* reset all interrupt flags */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B0-&amp;gt;CTCR = 0x00;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* use the CounterTimer in timer mode */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B0-&amp;gt;TCR&amp;nbsp; = 0x01;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* CounterTimer enable */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; case CT32B1:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B1-&amp;gt;TCR&amp;nbsp; = 0x02;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* disable and reset this CounterTimer */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B1-&amp;gt;PR&amp;nbsp;&amp;nbsp; = 0x00;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* set prescaler to zero */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B1-&amp;gt;MR3&amp;nbsp; = pwmfrq;&amp;nbsp;&amp;nbsp; /* set the default frequency in MR3 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Timer_PWM_Set_Duty_Cycle(ctId, CTMAT0, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY,2,4);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Timer_PWM_Set_Duty_Cycle(ctId, CTMAT1, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY,2,4);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Timer_PWM_Set_Duty_Cycle(ctId, CTMAT2, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY, PWM_DUTY,2,4);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B1-&amp;gt;MCR&amp;nbsp; = 0x400;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* reset timer on match of MR3, no interrupts */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B1-&amp;gt;PWMC = 0x07;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* select PWM mode for CT32B1_MAT0 , CT32B1_MAT1 and CT32B1_MAT2 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B1-&amp;gt;IR&amp;nbsp;&amp;nbsp; = 0x1F;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* reset all interrupt flags */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B1-&amp;gt;CTCR = 0x00;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* use the CounterTimer in timer mode */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR32B1-&amp;gt;TCR&amp;nbsp; = 0x01;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* CounterTimer enable */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; default:&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; break;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;}&lt;/I&gt;&lt;/I&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 19:37:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/32-bit-timer-PWM-going-to-completley-on-state-at-non-regular/m-p/537127#M11385</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T19:37:07Z</dc:date>
    </item>
  </channel>
</rss>

