<?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>i.MX RT Crossover MCUsのトピックRe: Synchronize flexPWM-Modules</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897157#M2876</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Markus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sorry for the delay reply.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;For synchronizing all PWM-Outputs I can use the FORCE-OUT Signal. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;For this I can configure&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWMx-&amp;gt;SM0CTRL2[FORCE_SEL] = 0; // The local force signal, CTRL2[FORCE], from this submodule is used to force updates.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWMx-&amp;gt;SM1CTRL2[FORCE_SEL] = 1;// The master force signal from submodule 0 is used to force updates.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWMx-&amp;gt;SM2CTRL2[FORCE_SEL] = 1; // The master force signal from submodule 0 is used to force updates.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWMx-&amp;gt;SM3CTRL2[FORCE_SEL] = 1; // The master force signal from submodule 0 is used to force updates.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;For the actual synchronization, I´ve to call&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWM1-&amp;gt;SM0CTRL2[FORCE] = 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWM2-&amp;gt;SM0CTRL2[FORCE] = 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWM3-&amp;gt;SM0CTRL2[FORCE] = 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWM4-&amp;gt;SM0CTRL2[FORCE] = 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I couldn't find your configuration with any problem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please check each PWM submodule INIT register value. If those INIT register value are same?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Mike&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt; Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 30 May 2019 08:04:03 GMT</pubDate>
    <dc:creator>Hui_Ma</dc:creator>
    <dc:date>2019-05-30T08:04:03Z</dc:date>
    <item>
      <title>Synchronize flexPWM-Modules</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897154#M2873</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;how can I synchronize the four flexPWM-Modules on the iMXRT Controller? I haven´t found a way to do so. Synchronizing the four Submodules of one Module seems to be easy, but not synchronizing several Modules.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I like to start and stop them simultaneously and have them running synchronized. Is there an Application Note or some code-examples available?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks and best regards&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Markus&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 May 2019 07:40:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897154#M2873</guid>
      <dc:creator>Masmiseim</dc:creator>
      <dc:date>2019-05-16T07:40:59Z</dc:date>
    </item>
    <item>
      <title>Re: Synchronize flexPWM-Modules</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897155#M2874</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Markus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sorry for the later reply.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;From RT1060 eFlexPWM module [Counter Synchronization] Figure, the external FORCE_OUT signal can force all submodules counter initialization.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_1.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/83607iCED0507B5EADF56C/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_1.png" alt="pastedImage_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;More detailed info, please check RT1060 reference manual chapter 54.4.1.7 &amp;lt;Synchronous Switching of Multiple Outputs&amp;gt; and chapter 54.4.2.3 &amp;lt;Counter Synchronization&amp;gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Wish it helps.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Mike&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt; Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 23 May 2019 01:19:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897155#M2874</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2019-05-23T01:19:22Z</dc:date>
    </item>
    <item>
      <title>Re: Synchronize flexPWM-Modules</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897156#M2875</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Hui Ma,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for the feedback.&lt;/P&gt;&lt;P&gt;To clarify if I understood correctly.&lt;/P&gt;&lt;P&gt;For synchronizing all PWM-Outputs I can use the FORCE-OUT Signal. For this I can configure&lt;/P&gt;&lt;P&gt;PWMx-&amp;gt;SM0CTRL2[FORCE_SEL] = 0; // The local force signal, CTRL2[FORCE], from this submodule is used to force updates.&lt;/P&gt;&lt;P&gt;PWMx-&amp;gt;SM1CTRL2[FORCE_SEL] = 1;// The master force signal from submodule 0 is used to force updates.&lt;/P&gt;&lt;P&gt;PWMx-&amp;gt;SM2CTRL2[FORCE_SEL] = 1; // The master force signal from submodule 0 is used to force updates.&lt;/P&gt;&lt;P&gt;PWMx-&amp;gt;SM3CTRL2[FORCE_SEL] = 1; // The master force signal from submodule 0 is used to force updates.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;For the actual synchronization, I´ve to call&lt;/P&gt;&lt;P&gt;PWM1-&amp;gt;SM0CTRL2[FORCE] = 1;&lt;/P&gt;&lt;P&gt;PWM2-&amp;gt;SM0CTRL2[FORCE] = 1;&lt;/P&gt;&lt;P&gt;PWM3-&amp;gt;SM0CTRL2[FORCE] = 1;&lt;/P&gt;&lt;P&gt;PWM4-&amp;gt;SM0CTRL2[FORCE] = 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Am I wrong or is this not synchronal as it is started with sequential commands.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Next approach:&lt;BR /&gt; I can configure all Submodules to use the external Force-Signal by setting&lt;/P&gt;&lt;P&gt;PWMx-&amp;gt;SMxCTRL2[FORCE_SEL]= 6; // For all submodules of the four modules&lt;/P&gt;&lt;P&gt;Now I can use the Xbar with the output signals&lt;/P&gt;&lt;P&gt;kXBARA1_OutputFlexpwm1ExtForce&lt;/P&gt;&lt;P&gt;kXBARA1_OutputFlexpwm2ExtForce&lt;/P&gt;&lt;P&gt;kXBARA1_OutputFlexpwm3ExtForce&lt;/P&gt;&lt;P&gt;kXBARA1_OutputFlexpwm4ExtForce&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, which Input to choose? When using kXBARA1_InputLogicHigh / &amp;nbsp;kXBARA1_InputLogicLow I have to reconfigure the four XBar-Channels which will also lead to a unsynchronized PWM.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Maybe I have overlooked something. Could you help me out?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks and best regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 27 May 2019 10:08:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897156#M2875</guid>
      <dc:creator>Masmiseim</dc:creator>
      <dc:date>2019-05-27T10:08:03Z</dc:date>
    </item>
    <item>
      <title>Re: Synchronize flexPWM-Modules</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897157#M2876</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Markus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Sorry for the delay reply.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;For synchronizing all PWM-Outputs I can use the FORCE-OUT Signal. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;For this I can configure&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWMx-&amp;gt;SM0CTRL2[FORCE_SEL] = 0; // The local force signal, CTRL2[FORCE], from this submodule is used to force updates.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWMx-&amp;gt;SM1CTRL2[FORCE_SEL] = 1;// The master force signal from submodule 0 is used to force updates.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWMx-&amp;gt;SM2CTRL2[FORCE_SEL] = 1; // The master force signal from submodule 0 is used to force updates.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWMx-&amp;gt;SM3CTRL2[FORCE_SEL] = 1; // The master force signal from submodule 0 is used to force updates.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;For the actual synchronization, I´ve to call&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWM1-&amp;gt;SM0CTRL2[FORCE] = 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWM2-&amp;gt;SM0CTRL2[FORCE] = 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWM3-&amp;gt;SM0CTRL2[FORCE] = 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008000;"&gt;PWM4-&amp;gt;SM0CTRL2[FORCE] = 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I couldn't find your configuration with any problem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please check each PWM submodule INIT register value. If those INIT register value are same?&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Mike&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt; Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 30 May 2019 08:04:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897157#M2876</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2019-05-30T08:04:03Z</dc:date>
    </item>
    <item>
      <title>Re: Synchronize flexPWM-Modules</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897158#M2877</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Hui Ma,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;sorry, I can’t get it working, not even for a single module.&lt;/P&gt;&lt;P&gt;I altered the PWM Example from the SDK slightly. See below, I’ve highlighted my changes.&lt;/P&gt;&lt;P&gt;After calling&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;PWM1-&amp;gt;SM[0].CTRL2 |= PWM_CTRL2_FORCE_MASK;&lt;/P&gt;&lt;P&gt;the Counter are not going to the init Value.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks and best regards&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Markus&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/*!&lt;BR /&gt;&amp;nbsp;* @brief Main function&lt;BR /&gt;&amp;nbsp;*/&lt;BR /&gt;int main(void)&lt;BR /&gt;{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Structure of initialize PWM */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pwm_config_t pwmConfig;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; static uint16_t delay;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint32_t pwmVal = 4;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; uint16_t i;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Board pin, clock, debug console init */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BOARD_ConfigMPU();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BOARD_InitPins();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BOARD_BootClockRUN();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BOARD_InitDebugConsole();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CLOCK_SetDiv(kCLOCK_AhbDiv, 0x2); /* Set AHB PODF to 2, divide by 3 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; CLOCK_SetDiv(kCLOCK_IpgDiv, 0x3); /* Set IPG PODF to 3, divede by 4 */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Set the PWM Fault inputs to a low value */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; XBARA_Init(XBARA1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; XBARA_SetSignalsConnection(XBARA1, kXBARA1_InputLogicHigh, kXBARA1_OutputFlexpwm1Fault0);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; XBARA_SetSignalsConnection(XBARA1, kXBARA1_InputLogicHigh, kXBARA1_OutputFlexpwm1Fault1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; XBARA_SetSignalsConnection(XBARA1, kXBARA1_InputLogicHigh, kXBARA1_OutputFlexpwm1234Fault2);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; XBARA_SetSignalsConnection(XBARA1, kXBARA1_InputLogicHigh, kXBARA1_OutputFlexpwm1234Fault3);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PRINTF("FlexPWM driver example\n");&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * pwmConfig.enableDebugMode = false;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * pwmConfig.enableWait = false;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * pwmConfig.reloadSelect = kPWM_LocalReload;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * pwmConfig.faultFilterCount = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * pwmConfig.faultFilterPeriod = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * pwmConfig.clockSource = kPWM_BusClock;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * pwmConfig.prescale = kPWM_Prescale_Divide_1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * pwmConfig.initializationControl = kPWM_Initialize_LocalSync;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * pwmConfig.forceTrigger = kPWM_Force_Local;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * pwmConfig.reloadFrequency = kPWM_LoadEveryOportunity;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * pwmConfig.reloadLogic = kPWM_ReloadImmediate;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * pwmConfig.pairOperation = kPWM_Independent;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PWM_GetDefaultConfig(&amp;amp;pwmConfig);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Use full cycle reload */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pwmConfig.reloadLogic = kPWM_ReloadPwmFullCycle;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* PWM A &amp;amp; PWM B form a complementary PWM pair */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pwmConfig.pairOperation = kPWM_ComplementaryPwmA;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pwmConfig.enableDebugMode = false;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Initialize submodule 0 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (PWM_Init(BOARD_PWM_BASEADDR, kPWM_Module_0, &amp;amp;pwmConfig) == kStatus_Fail)&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; PRINTF("PWM initialization failed\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Initialize submodule 1 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pwmConfig.clockSource = kPWM_Submodule0Clock;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pwmConfig.initializationControl = kPWM_Initialize_MasterSync;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pwmConfig.forceTrigger = kPWM_Force_Master;&lt;/STRONG&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (PWM_Init(BOARD_PWM_BASEADDR, kPWM_Module_1, &amp;amp;pwmConfig) == kStatus_Fail)&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; PRINTF("PWM initialization failed\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BOARD_PWM_BASEADDR-&amp;gt;SM[kPWM_Module_1].CTRL2 |= PWM_CTRL2_FRCEN_MASK;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Initialize submodule 2 the same way as submodule 1 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (PWM_Init(BOARD_PWM_BASEADDR, kPWM_Module_2, &amp;amp;pwmConfig) == kStatus_Fail)&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; PRINTF("PWM initialization failed\n");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return 1;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; BOARD_PWM_BASEADDR-&amp;gt;SM[kPWM_Module_2].CTRL2 |= PWM_CTRL2_FRCEN_MASK;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Call the init function with demo configuration */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PWM_DRV_Init3PhPwm();&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Set the load okay bit for all submodules to load registers from their buffer */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PWM_SetPwmLdok(BOARD_PWM_BASEADDR, kPWM_Control_Module_0 | kPWM_Control_Module_1 | kPWM_Control_Module_2, true);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Start the PWM generation from Submodules 0, 1 and 2 */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; PWM_StartTimer(BOARD_PWM_BASEADDR, kPWM_Control_Module_0 | kPWM_Control_Module_1 | kPWM_Control_Module_2);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; delay = 0x0fffU;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while (1U)&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; for (i = 0U; i &amp;lt; delay; i++)&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; __ASM volatile("nop");&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;&amp;nbsp;&amp;nbsp; pwmVal = pwmVal + 4;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Reset the duty cycle percentage */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (pwmVal &amp;gt; 100)&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pwmVal = 4;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PWM1-&amp;gt;SM[0].CTRL2 |= PWM_CTRL2_FORCE_MASK;&lt;/STRONG&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Update duty cycles for all 3 PWM signals */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PWM_UpdatePwmDutycycle(BOARD_PWM_BASEADDR, kPWM_Module_0, kPWM_PwmA, kPWM_SignedCenterAligned, pwmVal);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PWM_UpdatePwmDutycycle(BOARD_PWM_BASEADDR, kPWM_Module_1, kPWM_PwmA, kPWM_SignedCenterAligned, (pwmVal &amp;gt;&amp;gt; 1));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PWM_UpdatePwmDutycycle(BOARD_PWM_BASEADDR, kPWM_Module_2, kPWM_PwmA, kPWM_SignedCenterAligned, (pwmVal &amp;gt;&amp;gt; 2));&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Set the load okay bit for all submodules to load registers from their buffer */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; PWM_SetPwmLdok(BOARD_PWM_BASEADDR, kPWM_Control_Module_0 | kPWM_Control_Module_1 | kPWM_Control_Module_2, true);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;}&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Jun 2019 08:40:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897158#M2877</guid>
      <dc:creator>Masmiseim</dc:creator>
      <dc:date>2019-06-05T08:40:58Z</dc:date>
    </item>
    <item>
      <title>Re: Synchronize flexPWM-Modules</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897159#M2878</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Markus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;First of all, sorry for the so later reply.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I tested with your code at IMXRT1050-EVKB board and couldn't find [Counter Synchronization] working.&lt;/P&gt;&lt;P&gt;I need to check with i.MXRT product team and check if they could provide some info about eFlexPWM submodules synchronize. I will let you know when there with any feedback.&lt;/P&gt;&lt;P&gt;Thanks for the patience.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Mike&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Jun 2019 10:42:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897159#M2878</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2019-06-10T10:42:55Z</dc:date>
    </item>
    <item>
      <title>Re: Synchronize flexPWM-Modules</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897160#M2879</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Markus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I get the eFlexPWM module validation code, for the NXP community is public and we don't allowed to post module validation code at here.&lt;/P&gt;&lt;P&gt;Could you help to submit an online support case? And then I can share that validation code with that case.&lt;/P&gt;&lt;P&gt;Please check &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-329745"&gt;here &lt;/A&gt;to submit an online support case and please let me know the case number. Thanks.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Mike&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------&lt;BR /&gt;Note:&lt;BR /&gt;- If this post answers your question, please click the "Mark Correct" button. Thank you!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- We are following threads for 7 weeks after the last post, later replies are ignored&lt;BR /&gt; Please open a new thread and refer to the closed one, if you have a related question at a later point in time.&lt;BR /&gt;-------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Jun 2019 01:32:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897160#M2879</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2019-06-25T01:32:36Z</dc:date>
    </item>
    <item>
      <title>Re: Synchronize flexPWM-Modules</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897161#M2880</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Hui Ma,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;the case Number is&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;A&gt;Case 00219602&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;thanks and best regards&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Markus&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Jun 2019 12:04:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897161#M2880</guid>
      <dc:creator>Masmiseim</dc:creator>
      <dc:date>2019-06-25T12:04:59Z</dc:date>
    </item>
    <item>
      <title>Re: Synchronize flexPWM-Modules</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897162#M2881</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Markus,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;best regards,&lt;/P&gt;&lt;P&gt;Mike&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Jun 2019 13:05:03 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/897162#M2881</guid>
      <dc:creator>Hui_Ma</dc:creator>
      <dc:date>2019-06-25T13:05:03Z</dc:date>
    </item>
    <item>
      <title>Re: Synchronize flexPWM-Modules</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/1272303#M14098</link>
      <description>&lt;P&gt;It is an old question and I could not find a solution.&lt;/P&gt;&lt;P&gt;After some time I found the solution to bring a signal from the AOI unit by XBARA1 to Ext_Force Input of any PWM-Module, in my case 2 and 4.&lt;/P&gt;&lt;P&gt;FLEXPWM2_SM0CTRL2 |= FLEXPWM_SMCTRL2_FORCE_SEL(6); // 110b - The external force signal, EXT_FORCE, from outside the PWM module causes updates.&lt;BR /&gt;FLEXPWM4_SM0CTRL2 |= FLEXPWM_SMCTRL2_FORCE_SEL(6);&lt;/P&gt;&lt;P&gt;The signal from AOI is routed via XBARA 1:&lt;/P&gt;&lt;P&gt;xbar_init();&lt;BR /&gt;xbar_connect( XBARA1_IN_AOI1_OUT0, XBARA1_OUT_FLEXPWM2_EXT_FORCE);&lt;BR /&gt;xbar_connect( XBARA1_IN_AOI1_OUT0, XBARA1_OUT_FLEXPWM4_EXT_FORCE);&lt;/P&gt;&lt;P&gt;A positive edge is created by:&lt;/P&gt;&lt;P&gt;delay(1);&lt;BR /&gt;AOI1_BFCRT010 = 0xFF; // positive edge as Ext_Force via XBARA AOI to PMW 2 and 4&lt;/P&gt;&lt;P&gt;A delay of ~100 µs between routing and signal seems to be essential, why so ever.&lt;/P&gt;&lt;P&gt;The idea to use the AOI unit came from LAtimes in the PJRC forum.&lt;/P&gt;</description>
      <pubDate>Wed, 05 May 2021 16:39:42 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Synchronize-flexPWM-Modules/m-p/1272303#M14098</guid>
      <dc:creator>Edmund</dc:creator>
      <dc:date>2021-05-05T16:39:42Z</dc:date>
    </item>
  </channel>
</rss>

