In UART TX -> RX, who supplies the weak pull-up in the idle state?

Discussion in 'General Electronics Chat' started by jerseyguy1996, May 26, 2013.

  1. jerseyguy1996

    Thread Starter Active Member

    Feb 2, 2008
    206
    9
    I'm curious as to who supplies the pull-up when a UART is in its idle state. My understanding is that a UART idles in the high state so there is the Transmitting side and the Receiving side. Who supplies that weak pull-up? I'm thinking in terms of two micro controllers (arduino -> GPS module) talking to each other.
     
  2. ErnieM

    AAC Fanatic!

    Apr 24, 2011
    7,388
    1,605
    The sender supplies the high. In either standard RS-232 (with the up to 24V or so voltage levels for long distances) or "TTL-232" (just logic levels for near distances) the master is always driving the transmit line.

    Don't forget that when one side talks the other listens, so Tx and Rx are relative terms. But each Tx sender makes that high.
     
    jerseyguy1996 likes this.
  3. jerseyguy1996

    Thread Starter Active Member

    Feb 2, 2008
    206
    9
    Perfect! Thanks!
     
  4. THE_RB

    AAC Fanatic!

    Feb 11, 2008
    5,435
    1,305
    I like to always put a pull-up resistor on the RX device.

    In the event of a cable disconnect or some open-circuit (loose connection) noise the default RX pin state will still be high, and not cause problems.
     
  5. jerseyguy1996

    Thread Starter Active Member

    Feb 2, 2008
    206
    9
    What value pull-up do you typically use?
     
  6. THE_RB

    AAC Fanatic!

    Feb 11, 2008
    5,435
    1,305
    It depends on the driving impedance of the TX device. If that is high (because the TX device often has a series resistor to protect it's output pin from short circuits) you need a higher value pullup on the RX pin.

    Normally a TX pin never has more than 270 ohms output impedance, so you need greater than 20 times that vlaue as a reliable pullup (270 * 20 = 5400 ohms).

    So I would use about 10k for the pullup , but I have memories of using 22k.

    If your pullup resistor ohmage is too low it will pull-up too hard, so the fault symptom will be that the LO logic level won't go low enough.
     
Loading...