JohnInTX's method works fine for many different UART based applications, but it says nothing about how to handle a bidirectional tranasceiver, with or without an available pin to control DE/RE. He does address the problem of the difference between "Transmit Data Register Empty" and "Transmit Shift Register Empty". You would of course need to verify that the the "Transmit Shift Register Empty" occurs at the end of the stop bit and NOT at the end of the last data bit. In order to achieve minimum turnaround delay you must be able in time, or by some other means, to determine the end of the stop bit and enable your receiver as soon as practical thereafter. It is still possible for one or more devices to muff this up so the technique needs to be robust and able to recover from mistakes and other unforeseen circumstances.
My next suggestion would be to implement a token passing protocol where the right to speak (transmit) is passed from one device to another in such a fashion that some node on the network always has the right to speak and pass the token if they have nothing to say.
My next suggestion would be to implement a token passing protocol where the right to speak (transmit) is passed from one device to another in such a fashion that some node on the network always has the right to speak and pass the token if they have nothing to say.