Abstract some USART driver code (Need to implement more operating functions)