how to convert UART voltage from 5v to 3.3v?
UART is unidirectional, so you can use unidirectional level converter like this: 

Alternatively, you may use 5v to 3.3v bidirectional level converter. 
For each wire, you need to build the converter like this one:



Since UART has two wires (TX and RX), we need two set of the converter. There is sparkfun board has 4 pins on the high side and 4 pins on the low side. Since it is bidirectional, it works for UART, I2C, etc.