I was going through an app-note AN2606 where I came across this connection diagram:
As per my knowledge, UART is push-pull type and Tx provides the pull-up required and hence we don't need to use any external pull ups. Am I missing something here?
Electrical Engineering Stack Exchange is a question and answer site for electronics and electrical engineering professionals, students, and enthusiasts. It only takes a minute to sign up.Sign up to join this community
While the microcontroller is in reset, its I/O pins will be configured as high-impedance inputs. So the pin used for a UART serial Transmit Data (TXD) will be floating during this time. This can lead to noise causing rubbish to be transmitted by the RS232 line driver.
Some line driver ICs have internal pull-up resistors on their TTL/LVTTL-side input pins to prevent this and produce an RS232 idle state. Otherwise, a pull-up resistor can be added.
A pull-up resistor on the UART serial Receive Data (RXD) input pin is not necessary because the RS232 line receiver is always driving that pin.
Note that the reset period is usually a relatively long time and that any I/O pins used as output pins are prone to this problem and must be considered for a pull-up or pull-down resistor.