How to Phase Shift or Invert PWM in the TC3x7 Series

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
User19757
Level 1
Level 1
Hi,

I want to try out the phase shift full bridge control with the following three features.
Can you provide me with a sample or method to simply check them?


1. Outputs 8 channels of pwm

 We think it is possible to add the ATOM channel of the previously tried sample.
 Do you have any concerns when considering No. 2 and 3?

 *https://www.infineonforums.com/threa...tion-Kit-TC3x7


4528.attach

2.Output the pwm inversion signal.

 I think it's possible to achieve this by using a dead-time module.
 Is there sample code available for reference to use the DTM?

4529.attach

3.Output phase-shifted pwm

 The CCU6 would make this happen, but there are only three units, CC60-CC62.
 If you want to combine No.1 and 2 to achieve this with 4 phase x 2 channels, could you please tell me how to achieve the same function with GTM? 

4530.attach

Thanks,
0 Likes
3 Replies
User19757
Level 1
Level 1
Hi,

I will describe the results of the trial after I post it.

-------------------------------------------
Board used: KIT_A2G_TC377_5V_TFT
      https://www.infineon.com/cms/en/product/evaluation-boards/kit_a2g_tc377_5v_tft/
Reference source: GTM_ATOM_PWM_1_KIT_TC397_TFT
      https://www.infineon.com/dgdl/Infineon-AURIX_GTM_ATOM_PWM_1_KIT_TC397_TFT-Training-v01_00-EN.pdf?fil...
-----------------------------------------

Question 1.
 I specified P02_00 to P02_07 on the evaluation board and output PWM for 8 channels.
 However, when I specified two specific pins, a bus error occurred and it was not possible to output.

  ・IfxGtm_ATOM0_0_TOUT9_P00_0_OUT
  ・IfxGtm_ATOM0_0N_TOUT17_P00_8_OUT

 Can you tell me why some pins cannot be output?

Question 2.

 I achieved the signal inversion without using DTM by changing the signalLevel of each channel.
 However, this does not allow me to set dead time.
 How do I specify dead time?

  ・atomConfig.signalLevel = Ifx_ActiveState_low or Ifx_ActiveState_high

Question 3.

 Progress has not been good.


Thanks,
0 Likes
lock attach
Attachments are accessible only for community members.
User22142
Level 2
Level 2
First like received First solution authored
Hi NYT,

I used the CCU6 example to create PWM signals with high and low side (each others inverse - question 1).

To add deadtime between them (question 2), I added two lines (search for deadtime).

However, I am now also stuck at phase-shifted output (also called phase delay). I saw something in the brushless PWM output drivers IfxCcu6_PwmBc.c, but I am not sure if that is what still works with the preceding features.

Anyway, I added my additions on the example as an attachment.

Good luck!
0 Likes

Hi,

In case you were able to solve the issue with phase shift between PWMs. Kindly mention the solution. We are stuck on same issue.

Intent is to have a dynamically calculated phase shift between 2 PWMs. All other requirements remaining same (complementary PWM's and dead band).

Thank you

0 Likes