first of all..thanks mister_e for reply.I already change the code and increase my baud rate.But the result goes the same.My LCD still display nothing, but something unexpectedly happens, when I disconnect the power supply at transmitter board, my LCD at receiver part shows a number.What's actually happens ?Do I need to use encoder/decoder IC? and one more ,how do I test it without RF modules? some tips please? your answer will be greatly appreciated.
here's my new code
Tx part
DEFINE OSC 20
CMCON = 7 'Alla I/O Digitala
LEDPin VAR PORTB.4
TransmitterPIN VAR PORTA.0
INCLUDE "modedefs.bas"
Counter VAR BYTE
Synk VAR BYTE
Synk = $55
DEFINE CHAR_PACING 1000
Counter = 0
Main:
HIGH LEDPin
PAUSE 100
LOW LEDPin
PAUSE 100
SEROUT TransmitterPIN,T9600,[Synk,Synk,Synk,Synk,Synk,Synk,9,Counter]
HIGH LEDPin
PAUSE 100
LOW LEDPin
PAUSE 100
Counter = Counter + 1
PAUSE 600
GOTO Main
END
Rx Part
Define LOADER_USED 1
' Define LCD connections
define OSC 20
DEFINE LCD_DREG PORTC 'LCD data port
DEFINE LCD_DBIT 0 'LCD data starting bit 0 or 4
DEFINE LCD_RSREG PORTB 'LCD register select port
DEFINE LCD_RSBIT 7 'LCD register select bit
DEFINE LCD_EREG PORTB 'LCD enable port
DEFINE LCD_EBIT 5 'LCD enable bit
DEFINE LCD_RWREG PORTB 'LCD read/write port
DEFINE LCD_RWBIT 6 'LCD read/write bit
DEFINE LCD_BITS 8 'LCD bus size 4 or 8
DEFINE LCD_LINES 2 'Number lines on LCD
DEFINE LCD_COMMANDUS 3000 'Command delay time in us
DEFINE LCD_DATAUS 200 'Data delay time in us
TRISD = %00000000 'Set port B as output
TRISB = %00000000 'Set port D as output
low PORTB.6 'Set the R/W bit to low
INCLUDE "modedefs.bas"
Counter VAR byte
ReciverPIN VAR PORTA.0
ADCON1= 7
PAUSE 500
Main:
SERIN ReciverPIN,T9600,[9],Counter
GOSUB LCD
GOTO Main
LCD:
LCDOUT $FE,1
LCDOUT $FE,$80,#Counter
PAUSE 500
RETURN
END
Bookmarks