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.

MSP430FR2000: Best fit for I2C slave and 7 PWM generator

Part Number: MSP430FR2000
Other Parts Discussed in Thread: MSP430FR5731, MSP430FR2475

Hi champs,

customer is looking for a price sensitive solution for an I2C addressable 7 ch PWM generator:

- I2C slave (400KHz)

-7 independend PWMs for LED dimming with variable frequency (common for all 7 channels)

What is our best fit in FR2xx valueline in terms of function and price ?

  • Hi DJ-NG,

    Assuming 2 timers can be used drive 7 PWMS,  The filter for 1 I2C and 2 Timers on the product selector shows:

    https://www.ti.com/microcontrollers/msp430-ultra-low-power-mcus/products.html#p299=0;2&p2089=2;3&sort=p1130;asc

    According to this, it looks like the FR2422 would be the lowest cost solution.

    BR,
    Leo

  • Hello,

    To add to what Leo said, I think most of our timers have 3x Capture compare registers so can only realistically generate 2x PWMs (With same base frequency, but independent duty cycles.).  Some timers, only have 2x CC registers and can only generate 1x PWM.  

    So, realistically, you will probably need 4-5 timers for this.  Below is a filtered list showing 4+ Timer parts, but a few of the smaller devices here have those timers with only 2 CC registers.  So, because of this, I'd probably recommend either MSP430FR2475 or MSP430FR5731.

    https://www.ti.com/microcontrollers/msp430-ultra-low-power-mcus/products.html#p299=1;4&p2089=4;6&sort=p1130;asc

    Thanks,

    JD

  • Hi all,

    yes after digging into datasheets I found MSP430FR2475TRH (QFN40) :

    - Four16-bit timers with threecapture/compareregisterseach(Timer_A3)

    - One 16-bit timer with sevencapture/compareregisters(Timer_B7)

     

    Acc DS in QFN40:

    -          TA0 2xPWM P1.1, P1.2

    -          TA1 2xPWM  P1.5, P1.4

    -          TA2 3xPWM   P2.3, p3.3, p3.0

    -          TA3 3xPWM   P4.1,p4.0,p3.7

    -          TB0  7xPWMs  p6.2,p4.7,p5.0,p5.1,p5.2,p4.3,p4.4

    So 17 PWMs (thanks to Timer B0) should be possible and routed out to pins and solved my issue.

    Do you agree ?

  • Hello,

    All of the Timer pins are brought out on the PT of the MSP430FR2475, so it is possible.  

    CCR0 is usually used to set the PWM Period for the timer in Up or Up/Down mode, and then CCR1+ are used to generate and output PWMs.  Using this method which is the easiest and most adjustable, on the MSP430FR2475 you could easily generate 14 PWM signals using the timers pins Which minimal CPU loading.  

    There are ways to use CCR0 to generate a PWM signal as well that may require changing the MCU clock frequency and/or have the CPU constantly modify the CCRx values.  In this case, 17-19 PWMs might be possible but there will be some CPU overhead taking up bandwidth. There is an app note discussing how to do this:   www.ti.com/lit/slaa513 

    Thanks,

    JD

       

**Attention** This is a public forum