an implementation of a soft UART in PIC18F