<?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>LPCXpresso IDE中的主题 Re: Inverse PWMs</title>
    <link>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538115#M5847</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 Thu Aug 27 04:56:47 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Another option (without interrupts) is to use PWM and toggle MATCH outputs via EMR.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Of course you have to preset MATCH outputs high / low (via EMR) before...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 15 Jun 2016 21:49:00 GMT</pubDate>
    <dc:creator>lpcware</dc:creator>
    <dc:date>2016-06-15T21:49:00Z</dc:date>
    <item>
      <title>Inverse PWMs</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538108#M5840</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by magnetronus on Thu Aug 27 01:24:35 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;How can I do 2 inverse PWMs in the same timer?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I mean, for example, I configured CT32B0_MAT1 for counter reset, PWM mode is enabled for CT32B0_MAT0 and CT32B0_MAT3 with 50% duty-cycle (half period of MAT1).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;CT32B0_MAT0 and CT32B0_MAT3 have the same waveform.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;My question is, how can I get inverse waveform for CT32B0_MAT3 for example (anti-phase)?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 21:48:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538108#M5840</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T21:48:56Z</dc:date>
    </item>
    <item>
      <title>Re: Inverse PWMs</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538109#M5841</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 Thu Aug 27 01:30:03 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;What about using interrupts?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 21:48:56 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538109#M5841</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T21:48:56Z</dc:date>
    </item>
    <item>
      <title>Re: Inverse PWMs</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538110#M5842</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by magnetronus on Thu Aug 27 02:34:13 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;When I use interrupt (where I toggle GPIOs) I get undesirable time shift (because PIO1_6/MAT0 and R_PIO0_11/MAT3 use different ports).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;See attached screenshot from scope.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 21:48:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538110#M5842</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T21:48:57Z</dc:date>
    </item>
    <item>
      <title>Re: Inverse PWMs</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538111#M5843</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 Thu Aug 27 02:56:11 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: magnetronus&lt;/STRONG&gt;&lt;BR /&gt;...(because PIO1_6/MAT0 and R_PIO0_11/MAT3 use different ports).&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt; :quest: &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Sorry, can't follow you. Could be useful to post a sample (if we are talking about LPCXpresso) to show what you are doing in detail (optimization, inlining...) and which MCU you are using...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 21:48:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538111#M5843</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T21:48:58Z</dc:date>
    </item>
    <item>
      <title>Re: Inverse PWMs</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538112#M5844</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by magnetronus on Thu Aug 27 03:17:14 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;O'k.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I use LPCXpresso, my code optimize for size (-Os).&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I use LPC1343 MCU.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Timer0 32bit initialization:&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;
/* Enable the clock for CT32B0 */
LPC_SYSCON-&amp;gt;SYSAHBCLKCTRL |= (0x01 &amp;lt;&amp;lt; 9);

/* Selects function PIO1_6 */
LPC_IOCON-&amp;gt;PIO1_6 &amp;amp;= ~0x07;

GPIO_SetDir(GPIO_PORT1, GPIO_BIT6, GPIO_DIR_OUT);
GPIO_SetValue(GPIO_PORT1, GPIO_BIT6, GPIO_LEVEL_LOW);

/* Selects function R_PIO0_11 */
LPC_IOCON-&amp;gt;R_PIO0_11 &amp;amp;= ~0x07;
LPC_IOCON-&amp;gt;R_PIO0_11 |= 0x01;

GPIO_SetDir(GPIO_PORT0, GPIO_BIT11, GPIO_DIR_OUT);
GPIO_SetValue(GPIO_PORT0, GPIO_BIT11, GPIO_LEVEL_HIGH);

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Set period */
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LPC_TMR[CT32B0]-&amp;gt;MR[MAT1] = SysTick_GetPeriod(120000);&amp;nbsp;&amp;nbsp;&amp;nbsp; // 120 KHz
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
/* Set interrupt and reset on CT32B0_MAT1 */
LPC_TMR32B0-&amp;gt;MCR = LPC_TIMER_MCR_MR1I | LPC_TIMER_MCR_MR1R;

/* Enable interrupt vector for 32-bit Timer 0 */
NVIC_EnableIRQ(TIMER_32_0_IRQn);
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Interrupt (for GPIOs toggle):&lt;/SPAN&gt;&lt;BR /&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD bgcolor="#cacaca"&gt; &lt;PRE&gt;
if (LPC_TMR32B0-&amp;gt;IR &amp;amp; LPC_TIMER_IR_MR1INT)
{
LPC_TMR32B0-&amp;gt;IR |= LPC_TIMER_IR_MR1INT;/* clear interrupt flag */

volatile uint8_t math1_6 = GPIO_TestValue(GPIO_PORT1, GPIO_BIT6, GPIO_LEVEL_LOW) ? GPIO_LEVEL_HIGH : GPIO_LEVEL_LOW;
volatile uint8_t math0_11 = GPIO_TestValue(GPIO_PORT0, GPIO_BIT11, GPIO_LEVEL_LOW) ? GPIO_LEVEL_HIGH : GPIO_LEVEL_LOW;

&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; assert(math1_6 != math0_11);

GPIO_SetValue(GPIO_PORT1, GPIO_BIT6, math1_6);
GPIO_SetValue(GPIO_PORT0, GPIO_BIT11, math0_11);
}
&lt;/PRE&gt; &lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 21:48:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538112#M5844</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T21:48:58Z</dc:date>
    </item>
    <item>
      <title>Re: Inverse PWMs</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538113#M5845</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 Thu Aug 27 03:23:56 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm not sure which toolchain and libraries you are using in detail (code snippets are not very informative&amp;nbsp; :(( ), but of course functions like GPIO_TestValue() and GPIO_SetValue() are damned slow and should be replaced...&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 21:48:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538113#M5845</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T21:48:59Z</dc:date>
    </item>
    <item>
      <title>Re: Inverse PWMs</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538114#M5846</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by magnetronus on Thu Aug 27 03:51:22 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;You right.&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 21:48:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538114#M5846</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T21:48:59Z</dc:date>
    </item>
    <item>
      <title>Re: Inverse PWMs</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538115#M5847</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 Thu Aug 27 04:56:47 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;Another option (without interrupts) is to use PWM and toggle MATCH outputs via EMR.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Of course you have to preset MATCH outputs high / low (via EMR) before...&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 21:49:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538115#M5847</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T21:49:00Z</dc:date>
    </item>
    <item>
      <title>Re: Inverse PWMs</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538116#M5848</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;STRONG&gt;Content originally posted in LPCWare by lpcxpresso-support on Thu Aug 27 06:11:29 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;If your part has an SCT (a.k.a. SCTimer) you might look into using that. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;There is the Red State tool in LPCXpresso to help configure it and the LPCOpen libraries have an API for some configurations.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Ciao,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;LPCXpresso-Support&lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 21:49:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538116#M5848</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T21:49:00Z</dc:date>
    </item>
    <item>
      <title>Re: Inverse PWMs</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538117#M5849</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 Thu Aug 27 06:14:10 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;HR /&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;Quote: lpcxpresso-support&lt;/STRONG&gt;&lt;BR /&gt;If your part has an SCT (a.k.a. SCTimer) you might look into using that. &lt;BR /&gt;&lt;/SPAN&gt;&lt;HR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;LPC1343&amp;nbsp; :D &lt;/SPAN&gt;&lt;BR /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 21:49:01 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538117#M5849</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T21:49:01Z</dc:date>
    </item>
    <item>
      <title>Re: Inverse PWMs</title>
      <link>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538118#M5850</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 Thu Aug 27 07:47:35 MST 2015&lt;/STRONG&gt;&lt;BR /&gt;&lt;SPAN&gt;And with EMR your delay should disappear:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&lt;SPAN&gt;[img=640x480]&lt;/SPAN&gt;&lt;A _jive_internal="true" href="https://community.nxp.com/external-link.jspa?url=https%3A%2F%2Fwww.lpcware.com%2Fsystem%2Ffiles%2FF0002TEK.JPG%5B%2Fimg%5D" rel="nofollow" target="_blank"&gt;https://www.lpcware.com/system/files/F0002TEK.JPG[/img]&lt;/A&gt;&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 15 Jun 2016 21:49:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPCXpresso-IDE/Inverse-PWMs/m-p/538118#M5850</guid>
      <dc:creator>lpcware</dc:creator>
      <dc:date>2016-06-15T21:49:02Z</dc:date>
    </item>
  </channel>
</rss>

