Hi ALFRED,

When the program gets to the SEROUT statement, the value of b0 is always 0.
Code:
Tx:

Include "modedefs.bas"
b0 VAR BYTE

Start:
IF PortB.1 = 1 THEN LET b0 = 1
LET b0 = 0
SEROUT PortB.0, N2400, [b0]
GOTO Start
>> Does the Rx wait for the data or if there isn't any go to the next line of code?
Yes, the way you have it now, it will wait forever to receive a byte. If you wanted it to continue if it doesn't receive anything, you can add a timeout to the SERIN statement.

>> Do the SERIN SEROUT commands have to be executed at the same time for the communication to be successful.
YES!