2020-10-05 07:54 AM
PLEASE EXPLAIN WHY 104.167 IS CONVERTED TO 104.1875 AND HOW ITS ENCODED AS 0X683
MY UNDERSTANDING FOR ENCODING IS 104 IS CONVERTED TO HEX AS MANTISSA PART AS DECIMAL TO HEX AND O.1875 IS CONVERTED SEPARATELY FOR FRACTION PART.
IF I USE FCLK/BAUDRATE I.E 16MHZ/9600= 1666.666d =1667d=0x683h
why use above formula i don't understand.
2024-07-08 04:17 AM
I'm understanding now the calculation of the mantissa and fraction and with that the baudrate when it's 16x oversampling.
I guess now that the calculation formula for 8x oversampling is the following:
BAUD = fCK / (8 * USARTDIV) ? (And not (16 * USARTDIV))
Am I right with this
And is there any reason for change the oversampling rate?
2024-07-08 06:02 AM
Yes.
> And is there any reason for change the oversampling rate?
In the extreme case of very low AHB/APB clock, you can achieve higher baudrates, at the cost of somewhat lower baud mismatch immunity.
JW
2024-07-09 11:31 PM
In the documentation stands something about, if the fraction is too big for the 4 bits then the "carry" must be added to the mantissa.
But I don´t understand what the "carry" of 0d0.99 is? Because they simply round up the 0d50.990 to 0d51. 🤔