it looks like both of the SBUF transmitter and SBUF receiver are parallel in serial out and serial in parallel out shift registers. so, to transmit data serially(receive), they must need clocks. And it is clear that for transmission, the baud rate should be nothing but the frequency of the clock who is feeding SBUF transmitter. But in my book it is written that the UART circuit is providing timer 1 around 28800 HZ. And the timer is loaded with -3 to get a baud rate of 9600.
My question is , why the UART will provide clock to the timer ? how the timer is responsible for for setting the baud rate? I did not see any connection between counting delay of the timer 1 and the clock (the one who determines the baud rate of sbuf) who is actually driving sbuf transmitter.
Edit: after doing some research, I have two main question :
- Is The timer flag (TF1) is tied to the SBUF clock pin?(when operating)
- When we are operating in serial mode, who drives TIMER 1? my guess is it's UART (28800Hz), but one of the commentator said, this time, the timer is still driven by the processor clock.