arcachofo wrote:Check R1973:
Sender is enabled at first write to SBUF.
Not sure if there is still some other issue, but this fixes the wrong byte sent at reset.
Though I still think an extra prop is a natural way to handle this, I think what you've done IS a brilliant solution.
As for the reset and initialization, I think that any design that depends on the correct order of registers assignment,that is, reg X must be inited before reg Y, is not a good one and may introduce subtle errors. So the UART sender/receiver should be turned off BEFORE the register initialization.