merged uart.c from uart branch into dev
merged uart.c into dev