"I daresay you haven't had much practice," said the Queen. "When I was
your age, I always did it for half-an-hour a day. Why, sometimes I've
believed as many as six impossible things before breakfast." (Lewis
Carroll)
Ich glaube, ST "missbraucht" den sowieso vorhandenen 16:1 Teiler und
schaltet ihn auf 28:1 um (z.B., um auf 1.75 zu kommen). Für den TX-Takt
geht das ohne weiteres, der ist ja normal das 16-fache der Baudrate.
Der Empfänger braucht etwas mehr Aufwand, er tastet jedes Bit
normalerweise 3 Mal ab, jeweils beim Zählerstand 8,9 und 10 des
Vorteilers. An der Stelle hat ST wahrscheinlich einen Multiplexer und
etwas Logik spendiert.
Float point braucht man dafür nicht. Die Bits im BRR sind so praktisch
angelegt, dass man den APB-Takt einfach durch die Baudrate teilen kann.
Runden sollte man schon noch, aber alles darf (int) sein.