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.

MSP430FR2355: Implement PI control loop running while MCU is asleep / DMA

Part Number: MSP430FR2355
Other Parts Discussed in Thread: MSP430FR5994,

Hi, 

I'm new to the MSP430 world...I'm working on a small energy harvesting project

  1. I'd like to implement a simple / compact DC-DC converter using an MSP430FR23xx. I'd use the timer block to output a PWM signal, the OpAmps to measure the output voltage and form a PI controller. The output voltage of the PI controller I'd feed into the AD-Converter, which then updates the PWN duty cycle. Reading from the ADC and writing to the PWM is certainly possible while the device is awake, but is there a way to achieve this while the device is asleep (LPM3)? The implementation should be as low power as possible.
  2. Is there or will there soon be a MSP430FR23xx variant (must have OpAmps / Comparators) with DMA included (like the MSP430FR5994)?

Thanks in advance

Eric

  • Hi Eric,

    1. The OpAmps, ADC and Comparators can work in LPM3 without CPU. But CPU is necessary for reading the ADC data, running PI algorithm and writing to the PWM need CPU. Even if for a MCU with DMA, the PI algorithm still needs CPU.

    2. We have no plan for MSP430FR23xx variant with DMA right now.

  • Hi Winter,

    Thanks for you quick response!

    Winter Yu said:

    1. The OpAmps, ADC and Comparators can work in LPM3 without CPU. But CPU is necessary for reading the ADC data, running PI algorithm and writing to the PWM need CPU. Even if for a MCU with DMA, the PI algorithm still needs CPU.

    My intention is to use the available OpAmps to form a PI controller (analog) and then feed the resulting voltage to the ADC. The resulting value would then be used to update the PWM duty cycle (no calculation needed), that's why I was looking for DMA. Basically I'm looking for ways to update the PWM duty cycle directly with a value from the ADC while the MCU is asleep (LPM3). Any ideas?

  • MSP430FR2355 couldn't implement your request. The reading of ADC result need CPU intervention if no DMA.

**Attention** This is a public forum