Firstly I want to apologise for my English speech.
What's wrong with my code? Receiver will not turning on LED, when transmitter sending command.

Transmitter:
Code:
#CONFIG
    __config _INTRC_OSC_NOCLKOUT & _WDT_OFF & _CP_OFF & _MCLRE_OFF & _BODEN_OFF  & _PWRTE_OFF
#ENDCONFIG
DEFINE OSC 4
DEFINE ADC_BITS 10
DEFINE ADC_CLOCK 3
DEFINE ADC_SAMPLEUS 50
DEFINE SER_BAUD 1200 
DEFINE SER_CLROERR 1


CMCON = 7 : TRISIO = %00010001 : ADCON0.7 = 1 : ANSEL = %00011001


LED var GPIO.2
i var byte
Akumuliatorius VAR word
Lygis var word
Buves var word : Buves = 0
Buves1 var word
Buves2 var word


Adr1 var byte : Adr1 = %00111110
Adr2 var byte : Adr2 = %01101110
CMD1 VAR BYTE : cmd1 = %10111110
CMD2 var byte : cmd2 = %10011100
pause 100


FOR i = 1 TO 3
high led : pause 400
low led : pause 400
NEXT i
   
main:
ADCIN 0, akumuliatorius


if akumuliatorius <= 640 then
high led
else
low led
endif


adcin 3, lygis


Buves1 = Buves - 4 : Buves2 = Buves + 4


if Lygis <= Buves1 or Lygis >= Buves2 then
buves = lygis
SEROUT2 GPIO.1,813,[Adr1,Adr2,Lygis,CMD1,CMD2]
endif


goto main
end
Receiver:
Code:
#CONFIG
    __config _INTRC_OSC_NOCLKOUT & _WDT_OFF & _CP_OFF & _MCLRE_OFF & _BODEN_OFF  & _PWRTE_OFF
#ENDCONFIG
DEFINE OSC 4
DEFINE SER_BAUD 1200
DEFINE SER_CLROERR 1


CMCON = 7 : TRISIO = %00100000


LED var GPIO.0
i var byte


Adr1 var byte : Adr1 = %00111110
Adr2 var byte : Adr2 = %01101110
CMD1 VAR BYTE
CMD2 var byte
Lygis var word
pause 100


FOR i = 1 TO 3
high led : pause 400
low led : pause 400
NEXT i
   
main:
SERIN2 GPIO.5,813,[wait (Adr1,Adr2),Lygis,cmd1,cmd2]
pause 10      
if cmd1 = %10111110 and cmd2 = %10011100 then
high led
else
low led
endif
pause 10
goto main
end