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.

Launch Pad - DCO Modulator

Other Parts Discussed in Thread: MSP430F247

need help in DCO modulator. I don't understand how the modulator does to adjust the frequency of DCO.

in the user guide is not well explained
somebody know how really work and how configurate the registers?

  • The DCO is in its core an R/C oscillator like many. However, it's R (or C, I don't know) is composed of multiple precision components that can be switched between by a difital control.

    The RSELx bits configure the main resistance and therefore the operating frequency rane. DCOx controls the switched components to generate one of 8 to 32 (depending on DCO version) frequencies within this range. Since this only gives you a small colleciton of possible frequencies, there is also the modulation (MODx). These bits modulate the DCOx setting with each DCO clock tick based on an internal pattern. So out of 32 DCO clock cycles, the output frequency is taken from DCOx for n and from DCOx+1 for 32-n clock cycles (evenly distributed). Which results in 32 times as many 'averaged' output frequencies. (average over 32 clock pulses)

    However, as it is an R/C oscillator, precision is poor adn no two MSPs give exact the same frequency for the same register setting. 4x and 5x family provide an FLL to auto-adjus tthe DCO registers in comparison to a reference signal (e.g. a 32kHz crystal).
    For the 2x family, many devices contain factory-provided settings for the most common frequencies (e.g. 1-4-8 MHz) that only need to be copied from info memory to the DCO registers.

  • The answer is in the device datasheet and not in the family datasheet (I'm reading the MSP430F247). It is right above the "DCO Frequency" table in the datasheet.

    You need to get f(RSEL,DCO) and f(RSEL,DCO+1), and then use the following formula:

**Attention** This is a public forum