I would like to know about FLL control for MSP430F47186.
What I am trying is to use 16MHz SMCLK and generate 57600bps UART function.
In my code, I set
SCFQCTL = ((32 * 16)-1);
FLL_CTL0 |= DCOPLUS;
SCFI0 = FLLD_4 + FN_3;
and
UCA0CTL1 |= UCSSEL1; // Use SMCLK
UCA0STAT = 0;
UCA0BR0 = (int)(277) % 256;
UCA0BR1 = (int)(277) / 256;
UCA0MCTL = (7 << 1);
etc, to obtain 57600bps UART.
However, with above setting, the UART bps seems around 70% of 57600bps.
I also confirmed that I2C clock signla generated from SMCLK is slow by a factor of 70%.
However, when I modified into
SCFI0 = FLLD_4 + FN_4;
I obtained 57600bps and I2C clock signals are what I expected.
What's the difference of FN_4 and FN_3 in SCFI0 control register?
According to User Guide for MSP430F4xxx p5-16 , FN_3 is for up to 17.9MHz, and FN_4 is for up to 26.6MHz. So FN_3 seems O.K. for 16MHz SMCLK, but not correctly working.
Best regards