Hello Folks,

I will post the receiver and transmitter part of the 1 pin Xcvr.

The principal lies upon the receivers timing, in connection with the transmitters timing. You only have two critical points to ponder.

1. The initial Rcvr *must* be slower than the transmitter until it receives the start bit.

2. The Rcver *must* be faster than the transmitter after receiving the start bit.

After #2 starts or begins, you control your Baud rate by the transmitter, *NOT* the receiver, or both.

I wanted the overhead of the transmitter to be almost zero. The receiver was a 16f648A, and its only job was to control the LCD, so instead of using a interupt (which you can), I left the receiver in a loop, waiting for data communication from the 12f675. When a full byte is received, the 648 checks to see if it is a LCD command byte or a LCD data byte. (x254) if it is a command byte, it tells the LCD to accept next byte as a command, and waits for the next byte.

Dwayne


It has been 100 percent reliable so far. When I get home, I will post the code.