Go Down

Topic: TX/RX lines usage (Read 335 times) previous topic - next topic

jacqkl

Hello, I am a beginner with Arduino, I bought an UNO Rev3 board, and had a look at the schematic of this board,
and I have a question about the RX/TX lines usage.

These two lines (of the ATMega328)  are connected to the corresponding Atmega16U2 lines in order to upload code
and communicate via the USB cable,
but these lines are also available on a connector for shields (or homebrew extensions), like for example bluetooth.

How can these shields work with the ATmega16U2 TX line NOT DISCONNECTED ?,
is it the 1K resistor that allows it ? (this supposes the TX output resistance of the connected serial device is quite lower than 1k).

In some readings (topics, in this forum), there has been suggested to unplug the USB cable in order to avoid trouble, but it seems for me
that the ATmega16U2 will still be powered (by the then needed external power supply), so this supposes also that this device keeps it's TX
pin in high-impedance (or in input mode) when USB cable unplugged.

Any clarification about (hardware) sharing of the TX/RX lines on UNO Rev3 board is welcome.

robtillaart

maybe the schema helps - http://arduino.cc/en/uploads/Main/Arduino_Uno_Rev3-schematic.pdf - ?
Rob Tillaart

Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -
(Please do not PM for private consultancy)

jacqkl

The schematic helped me to discover the two 1K resistors in the TX and RX lines, but I'm not able to get a clear (and definitive) understanding.

retrolefty

#3
Jan 12, 2013, 03:46 pm Last Edit: Jan 12, 2013, 03:49 pm by retrolefty Reason: 1

Hello, I am a beginner with Arduino, I bought an UNO Rev3 board, and had a look at the schematic of this board,
and I have a question about the RX/TX lines usage.

These two lines (of the ATMega328)  are connected to the corresponding Atmega16U2 lines in order to upload code
and communicate via the USB cable,
but these lines are also available on a connector for shields (or homebrew extensions), like for example bluetooth.

How can these shields work with the ATmega16U2 TX line NOT DISCONNECTED ?,
is it the 1K resistor that allows it ? (this supposes the TX output resistance of the connected serial device is quite lower than 1k).

The rec line going to shield pin 0 will seem to the 328p chip (and to the outside world wired to pin 0) as just a 1k ohm pull-up resistor wired to +5vdc, as that is the state of 8U2 serial data output when it's in a idle (mark/HIGH, continuous stop bit), and so as long as any signal wired to drive pin 0 can sink enough current (5ma or more rating) when driving the pin LOW there would not be a problem. If you use pin 0 as an output signal to drive external circuitry then the 1k ohm 'iosolation' resistor protects the 8U2 output pin from any damage even if you drive pin 0 to a LOW, just 5ma of 'extra' output pin current will be drawn. So as long as your do not have the PC sending serial data to the arduino board or having serial output commands in your sketch, it would not be a problem using either pins 0 or 1. The normal problem one has if using pins 0 or 1 is when you later wish to upload a new sketch via the arduino IDE normal upload method which uses the serial data pins 0 and 1. In that case you have to electrically disconnect the external circuitry wired to pins 0 and 1 to prevent corrupted data and failed upload operation.
Lefty
 

In some readings (topics, in this forum), there has been suggested to unplug the USB cable in order to avoid trouble, but it seems for me
that the ATmega16U2 will still be powered (by the then needed external power supply), so this supposes also that this device keeps it's TX
pin in high-impedance (or in input mode) when USB cable unplugged.

Any clarification about (hardware) sharing of the TX/RX lines on UNO Rev3 board is welcome.


Go Up