This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RE: Generating a PWM with tms570

Other Parts Discussed in Thread: HALCOGEN

What is the Difference between the PWM and the HET when generating code for a PWM signal using halcogen?

does PWM use HET functionality? or other way around, or is it seperatly?
  • Jesper,  I split this thread to answer this question specifically.

    The HET is a programmable timing processor.  To make it easy to get started, in HalCoGen there is a default program for HET that implements common timing functions (PWM, Edge Detection, Input Capture) so that most people can begin doing something useful with the HET without needing to learn to program it.    

    Learning to program HET isn't difficult and if you have a chance you should definitely do so because there is much to gain if you can customize the HET program to do exactly what you need.   In fact we have an IDE/Simulator for HET that is free.   And there is a recent Whitepaper to explain more along with multiple application examples of custom HET functions.   We'll likely develop more of these if the current set is popular.

    Some of the TMS570 devices also include the ETPWM timer.   This is a dedicated PWM module with some nice features like automatic generation of complementary PWM pairs with deadband.   It's great if you are driving power electronics and need very high frequencies.  

    Whereas HET being programmable really excels when the time scale of IO is in the 10us+ range.
    It naturally samples inputs and processes outputs in the range of 640ns to 1.28us...  because it clocks at 10ns and most programs would be between 64 and 128 instructions.    So if you are operating in the 10us range or slower you can actually do quite a lot of processing on HET.

    Hope that gives a high level picture of the differences.

    Now specifically in HalCoGen, if you are using the PWM tabs under the HET tab, then *these* PWM resources are part of the default HET program.   They are very simple PWMs actually and not really a good representation of what you can get from HET.

    If you are under the ETPWM tab - then the PWM there is using the dedicated hardware PWM module I talked about.  Some of our devices have 7 of these PWM modules.  (some don't have any).

    Hope that explains things a bit.  I'd encourage you to try the HET IDE and one of the new application notes if you are interested in learning more about HET.