<?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: Design Strategy for Complementary PWM Generation for motor driver Using eMIOS and LCU on S32K344 in S32K</title>
    <link>https://community.nxp.com/t5/S32K/Design-Strategy-for-Complementary-PWM-Generation-for-motor/m-p/2172950#M52876</link>
    <description>&lt;P&gt;Use OPWMCB mode for complementary (center-aligned) PWM outputs and OPWMT for trigger at half the time high is not possible for the following reasons:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Triggering support is only available via flag generation.&lt;/LI&gt;
&lt;LI&gt;Synchronization is only achievable for channels that share the same time base.
&lt;UL class="lia-list-style-type-circle"&gt;
&lt;LI&gt;The OPWMCB mode needs to be clocking by another eMIOS channel (MCL driver) in MCB_UP_DOWN_COUNTER, as time base.&lt;/LI&gt;
&lt;LI&gt;The OPWMT mode needs to be clocking by another eMIOS channel (MCL driver) in MC_UP_COUNTER or MCB_UP_COUNTER, as time base.&lt;/LI&gt;
&lt;/UL&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Instead trigger at half the time high with OPWMT, it can be triggered by the MCB mode in UP/DOWN Counter, like the approach in &lt;A href="https://community.nxp.com/t5/S32K-Knowledge-Base/RTD400-LLD-K344-Center-Aligned-PWM-Trigger-ADC-BCTU/ta-p/2034211" target="_blank" rel="noopener"&gt;[RTD400 LLD]K344 Center Aligned PWM Trigger ADC BCTU&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;But consider following limitations:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;For OPWMCB mode: it can be only implemented eMIOS channels type G (eMIOS0: ch1-7).&lt;/LI&gt;
&lt;LI&gt;For MCB mode in UP/DOWN Counter: It has 2 flags, not only at the center.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="_Leo__0-1758309438002.png" style="width: 999px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/357790iC79C1390D06366D5/image-size/large?v=v2&amp;amp;px=999" role="button" title="_Leo__0-1758309438002.png" alt="_Leo__0-1758309438002.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;For my part, I continue to recommend my previous suggestion.&lt;/P&gt;
&lt;P&gt;Have a nice day!&lt;/P&gt;</description>
    <pubDate>Fri, 19 Sep 2025 19:20:09 GMT</pubDate>
    <dc:creator>_Leo_</dc:creator>
    <dc:date>2025-09-19T19:20:09Z</dc:date>
    <item>
      <title>Design Strategy for Complementary PWM Generation for motor driver Using eMIOS and LCU on S32K344</title>
      <link>https://community.nxp.com/t5/S32K/Design-Strategy-for-Complementary-PWM-Generation-for-motor/m-p/2170567#M52724</link>
      <description>&lt;H3&gt;&lt;STRONG&gt;Design Objective&lt;/STRONG&gt;&lt;/H3&gt;&lt;P&gt;I am developing a motor control system using the &lt;STRONG&gt;S32K344 microcontroller&lt;/STRONG&gt;. The system is designed to control a &lt;STRONG&gt;motor driver&lt;/STRONG&gt; via &lt;STRONG&gt;PWM signals applied to both IN1 and IN2 &lt;/STRONG&gt;, enabling control of both the &lt;STRONG&gt;direction and speed&lt;/STRONG&gt; of the motor. A key requirement is to ensure that &lt;STRONG&gt;current feedback (motor current)&lt;/STRONG&gt; is sampled by the &lt;STRONG&gt;ADC only during the ON period&lt;/STRONG&gt; of the PWM cycle on both IN1 and IN2.&lt;/P&gt;&lt;H3&gt;&lt;STRONG&gt;My Questions&lt;BR /&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/H3&gt;&lt;P&gt;&lt;STRONG&gt;1- Is OPWMCB Mode the Most Suitable Option for PWM Generation?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I am considering using the &lt;STRONG&gt;eMIOS module in OPWMCB (Output Pulse Width Modulation Center-Aligned Buffered) mode&lt;/STRONG&gt; to generate &lt;STRONG&gt;complementary PWM signals&lt;/STRONG&gt; with &lt;STRONG&gt;built-in dead-time insertion&lt;/STRONG&gt;. This approach appears well-suited for driving both IN1 and IN2 in a synchronized and safe manner.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;2- Can eMIOS alone generate complementary PWM signals without LCU intervention?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;My understanding is that a single eMIOS channel in &lt;STRONG&gt;OPWMCB mode&lt;/STRONG&gt; (specifically EMIOS_PWM_IP_MODE_OPWMCB_TRAIL_EDGE) can generate both the &lt;STRONG&gt;primary and complementary PWM signals&lt;/STRONG&gt;, and that the same channel can be used to &lt;STRONG&gt;trigger ADC conversion at the center&lt;/STRONG&gt; of the PWM cycle to obtain current feedback.&lt;/P&gt;&lt;P&gt;I would like to confirm how this can be achieved in practice. I have attempted to implement this, but it is not functioning as expected. I have attached my project for review.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;3- Is it only possible to generate complementary PWM using the LCU?&lt;/STRONG&gt;&lt;BR /&gt;If eMIOS cannot generate complementary PWM signals independently, is the &lt;STRONG&gt;LCU required&lt;/STRONG&gt; to implement this functionality?&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;4- Using eMIOS for Independent PWM Channels&lt;/STRONG&gt;&lt;BR /&gt;As an alternative, I am also considering using &lt;STRONG&gt;two separate eMIOS channels&lt;/STRONG&gt; to generate independent PWM signals for IN1 and IN2. However, I would like to understand how to &lt;STRONG&gt;synchronize these channels effectively&lt;/STRONG&gt; to avoid timing mismatches or shoot-through conditions. Since both channels would share the &lt;STRONG&gt;same period and time base&lt;/STRONG&gt;, would that be sufficient?&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;4-&amp;nbsp;Most Important Requirement: Triggering ADC Conversion at the Center of OPWMCB?&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;I would like to use the same PWM signal for both IN1 and IN2 to &lt;STRONG&gt;trigger the ADC for sampling current feedback during the ON period&lt;/STRONG&gt; of the PWM cycle.&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;How can this be achieved?&lt;/LI&gt;&lt;LI&gt;Which PWM mode is best suited for this purpose?&lt;/LI&gt;&lt;LI&gt;Can this be done using &lt;STRONG&gt;eMIOS OPWMCB mode&lt;/STRONG&gt;, or is another configuration more appropriate?&lt;/LI&gt;&lt;/UL&gt;</description>
      <pubDate>Tue, 16 Sep 2025 15:49:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Design-Strategy-for-Complementary-PWM-Generation-for-motor/m-p/2170567#M52724</guid>
      <dc:creator>Ayaz</dc:creator>
      <dc:date>2025-09-16T15:49:50Z</dc:date>
    </item>
    <item>
      <title>Re: Design Strategy for Complementary PWM Generation for motor driver Using eMIOS and LCU on S32K344</title>
      <link>https://community.nxp.com/t5/S32K/Design-Strategy-for-Complementary-PWM-Generation-for-motor/m-p/2170712#M52733</link>
      <description>&lt;P&gt;Thank you for your interest in our products and for contributing to our community.&lt;/P&gt;
&lt;P&gt;Regarding your questions:&lt;/P&gt;
&lt;P&gt;1. They are various ways to archive complementary PWM outputs with dead-time insertion using eMIOS (with or without LCU), the OPWMCB mode is one of this ways.&lt;BR /&gt;2. Without LCU you need two eMIOS channels in OPWMCB mode for complementary outputs using the polarity parameter, and a third one for ADC triggering.&lt;BR /&gt;3. From my opinion, eMIOS-&amp;gt;TRGMUX-&amp;gt;LCU is the best way for complementary outputs, because you only need one eMIOS channels instead, which means that you only have to update the duty cycle to one channel.&lt;BR /&gt;4. Synchronization is only achievable for channels that share the same time base.&lt;BR /&gt;5. Triggering support is available via flag generation, for the OPWMB, DAOC, OPWMCB, and OPWFMB modes is on rising and/or falling edges. The OPWMT mode is the most flexible for this feature, which allows trigger at any moment of the period time, using &lt;EM&gt;Trigger&lt;/EM&gt; parameter.&lt;/P&gt;
&lt;P&gt;My suggestion is to use eMIOS(OPWMB)-&amp;gt;TRGMUX-&amp;gt;LCU for complementary PWM outputs with dead-time insertion and OPWMT for ADC triggering, both eMIOS channels (OPWMB and OPWMT) sharing the same time base.&lt;/P&gt;
&lt;P&gt;For more details, please refer to the following knowledge base post:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;S32M27x/S32K3 – eMIOS/TRGMUX/LCU – [RTD600]&lt;/EM&gt; -&amp;gt; &lt;A href="https://community.nxp.com/t5/S32M-Knowledge-Base/S32M27x-S32K3-eMIOS-TRGMUX-LCU-RTD600/ta-p/2163968" target="_self"&gt;https://community.nxp.com/t5/S32M-Knowledge-Base/S32M27x-S32K3-eMIOS-TRGMUX-LCU-RTD600/ta-p/2163968&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;S&lt;EM&gt;32M27x/S32K3 – eMIOS/BTCU/ADC/DMA – [RTD600]&lt;/EM&gt; -&amp;gt; &lt;A href="https://community.nxp.com/t5/S32M-Knowledge-Base/S32M27x-S32K3-eMIOS-BTCU-ADC-DMA-RTD600/ta-p/2155542" target="_self"&gt;https://community.nxp.com/t5/S32M-Knowledge-Base/S32M27x-S32K3-eMIOS-BTCU-ADC-DMA-RTD600/ta-p/2155542&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Additionally, please check &lt;EM&gt;6.6. PWM design considerations&lt;/EM&gt; section of the following post, which deeps into supported features across PWM modes:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;&lt;EM&gt;S32M27x/S32K3 – eMIOS Usage&lt;/EM&gt; -&amp;gt; &lt;A href="https://community.nxp.com/t5/S32M-Knowledge-Base/S32M27x-S32K3-eMIOS-Usage/ta-p/2129760" target="_blank" rel="noopener"&gt;https://community.nxp.com/t5/S32M-Knowledge-Base/S32M27x-S32K3-eMIOS-Usage/ta-p/2129760&lt;/A&gt;&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;I hope this information is helpful.&lt;/P&gt;</description>
      <pubDate>Wed, 17 Sep 2025 01:07:02 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Design-Strategy-for-Complementary-PWM-Generation-for-motor/m-p/2170712#M52733</guid>
      <dc:creator>_Leo_</dc:creator>
      <dc:date>2025-09-17T01:07:02Z</dc:date>
    </item>
    <item>
      <title>Re: Design Strategy for Complementary PWM Generation for motor driver Using eMIOS and LCU on S32K344</title>
      <link>https://community.nxp.com/t5/S32K/Design-Strategy-for-Complementary-PWM-Generation-for-motor/m-p/2171207#M52778</link>
      <description>&lt;P&gt;I would like to avoid using the LCU.&lt;/P&gt;&lt;P&gt;My goal is to configure two eMIOS PWM channels in &lt;STRONG&gt;OPWMCB&lt;/STRONG&gt; mode to control &lt;STRONG&gt;IN1&lt;/STRONG&gt; and &lt;STRONG&gt;IN2&lt;/STRONG&gt; for speed and direction control at &lt;STRONG&gt;40 kHz&lt;/STRONG&gt; (25 µs period).&lt;/P&gt;&lt;P&gt;Additionally, I want to configure a third eMIOS PWM channel in &lt;STRONG&gt;OPWMT&lt;/STRONG&gt; mode, offset by &lt;STRONG&gt;12.5 µs&lt;/STRONG&gt;, to consistently trigger ADC sampling at the midpoint of the IN1/IN2 PWM period.&lt;/P&gt;&lt;P&gt;However, the timebase for the eMIOS channels used for IN1 and IN2 &lt;STRONG&gt;cannot be shared&lt;/STRONG&gt; with the eMIOS channel used for ADC triggering, since they operate in different modes (OPWMCB vs OPWMT).&lt;/P&gt;&lt;P&gt;My questions are:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;If all the timebases are configured within the &lt;STRONG&gt;same eMIOS instance&lt;/STRONG&gt;, can they still be synchronized?&lt;/LI&gt;&lt;LI&gt;Is synchronization only possible by enabling the &lt;STRONG&gt;Global Time Base (GTB)&lt;/STRONG&gt; in MCL?&lt;/LI&gt;&lt;LI&gt;My main goal is to ensure that the ADC samples &lt;STRONG&gt;once per PWM period&lt;/STRONG&gt;, precisely when either IN1 or IN2 is active.&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;How can I achieve this design, or do you have any alternative suggestions?&lt;/P&gt;</description>
      <pubDate>Wed, 17 Sep 2025 15:12:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Design-Strategy-for-Complementary-PWM-Generation-for-motor/m-p/2171207#M52778</guid>
      <dc:creator>Ayaz</dc:creator>
      <dc:date>2025-09-17T15:12:11Z</dc:date>
    </item>
    <item>
      <title>Re: Design Strategy for Complementary PWM Generation for motor driver Using eMIOS and LCU on S32K344</title>
      <link>https://community.nxp.com/t5/S32K/Design-Strategy-for-Complementary-PWM-Generation-for-motor/m-p/2172950#M52876</link>
      <description>&lt;P&gt;Use OPWMCB mode for complementary (center-aligned) PWM outputs and OPWMT for trigger at half the time high is not possible for the following reasons:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Triggering support is only available via flag generation.&lt;/LI&gt;
&lt;LI&gt;Synchronization is only achievable for channels that share the same time base.
&lt;UL class="lia-list-style-type-circle"&gt;
&lt;LI&gt;The OPWMCB mode needs to be clocking by another eMIOS channel (MCL driver) in MCB_UP_DOWN_COUNTER, as time base.&lt;/LI&gt;
&lt;LI&gt;The OPWMT mode needs to be clocking by another eMIOS channel (MCL driver) in MC_UP_COUNTER or MCB_UP_COUNTER, as time base.&lt;/LI&gt;
&lt;/UL&gt;
&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;Instead trigger at half the time high with OPWMT, it can be triggered by the MCB mode in UP/DOWN Counter, like the approach in &lt;A href="https://community.nxp.com/t5/S32K-Knowledge-Base/RTD400-LLD-K344-Center-Aligned-PWM-Trigger-ADC-BCTU/ta-p/2034211" target="_blank" rel="noopener"&gt;[RTD400 LLD]K344 Center Aligned PWM Trigger ADC BCTU&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;But consider following limitations:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;For OPWMCB mode: it can be only implemented eMIOS channels type G (eMIOS0: ch1-7).&lt;/LI&gt;
&lt;LI&gt;For MCB mode in UP/DOWN Counter: It has 2 flags, not only at the center.&lt;/LI&gt;
&lt;/UL&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-center" image-alt="_Leo__0-1758309438002.png" style="width: 999px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/357790iC79C1390D06366D5/image-size/large?v=v2&amp;amp;px=999" role="button" title="_Leo__0-1758309438002.png" alt="_Leo__0-1758309438002.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;For my part, I continue to recommend my previous suggestion.&lt;/P&gt;
&lt;P&gt;Have a nice day!&lt;/P&gt;</description>
      <pubDate>Fri, 19 Sep 2025 19:20:09 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/Design-Strategy-for-Complementary-PWM-Generation-for-motor/m-p/2172950#M52876</guid>
      <dc:creator>_Leo_</dc:creator>
      <dc:date>2025-09-19T19:20:09Z</dc:date>
    </item>
  </channel>
</rss>

