Re: TX/RX on the same line (Smartcard)
Half-duplex... it's pretty easy with a bitbang implementation of a UART, just calling the Tx routine when putting out data, and residing in Rx at other times. There is hardware involved though, and my circuit had a diode in it to achieve what in the old days was termed 'multi-drop rs232'.
With hardware UART it should be just as easy (if not easier), but I would go for a diode and resistor (not just a resistor) to get the job done.
Depending on what you want to do, you can implement it to idle high or idle low (at TTL levels).