PDA

View Full Version : Rf transmitter/receiver program...need help



csooi08
- 16th February 2009, 09:22
RECENTLY I TRY TO TRANSMIT MORE THAN ONE STRING LIKE INSTEAD OF "A", I WANT "AB". BUT THE RECEIVER ONLY RECEIVE "A" ONLY, IT CANNOT RECEIVE "AB". IS THAT ANY THING WRONG WITH MY SOURCE CODE.

TRANSMITTER CODE:
--------------------------------------------------------------------------
' Variable assign
'--------------------------------------------------------------------------H VAR byte
E VAR byte
SYNCH VAR BYTE
JUNK VAR BYTE
'--------------------------------------------------------------------------INPUT PORTB.7
junk = 126
synch = "Z"
H = 65 'STRING "A"
E = 66 'STRING "B"
'--------------------------------------------------------------------------' DATA SEND OUT
'--------------------------------------------------------------------------DATA_TX:
HIGH PORTC.0:PAUSE 50:LOW PORTC.0:PAUSE 50 'LED ON/OFF
HIGH PORTC.0:PAUSE 50:LOW PORTC.0:PAUSE 50
HIGH PORTC.0:PAUSE 50:LOW PORTC.0:PAUSE 50

CON_TX:
pause 1000
for dat = 1 to 255
serout PORTB.3,N2400,[junk,synch,H,E]
pause 50
next
serout PORTB.3,N2400,[junk,synch,0]
GOTO CON_TX
--------------------------------------------------------------------------


RECEIVER CODE:
'--------------------------------------------------------------------------' Variable assign
'--------------------------------------------------------------------------RX_DATA VAR BYTE[6]
'--------------------------------------------------------------------------
'--------------------------------------------------------------------------' DATA SEND OUT
'--------------------------------------------------------------------------DATA_RX:
HIGH PORTC.2:PAUSE 50:LOW PORTC.2:PAUSE 50 'LED ON/OFF
HIGH PORTC.2:PAUSE 50:LOW PORTC.2:PAUSE 50
HIGH PORTC.2:PAUSE 50:LOW PORTC.2:PAUSE 50
RX_DATA[14] = 0

CON_RX:
SERIN PORTA.0,N2400,["Z"],RX_DATA
DEBUG "DATA =",STR RX_DATA,10,13
GOTO DATA_RX
'--------------------------------------------------------------------------

IS ANY ONE CAN HELP ME...PLEASE...TQ

Ioannis
- 16th February 2009, 19:47
CON_RX:
SERIN PORTA.0,N2400,["Z"],RX_DATA
DEBUG "DATA =",STR RX_DATA,10,13
....


On the SERIN line try this:



SERIN PORTA.0,N2400,["Z"],RX_DATA[0],RX_DATA[1]


And on the DEBUG line this:



DEBUG "DATA =",RX_DATA[0], RX_DATA[1],10,13


Does it work now for 2 characters?

Ioannis

mister_e
- 16th February 2009, 22:25
Rule #1:
Dont post IN UPPERCASE, this is considered aS YELLING.

Rule #2:
post all details.. PIC model, crystal speed, Configuration fuses, schematic

Rule #3:
use code tags when you post your code, see my signature.

csooi08
- 17th February 2009, 00:32
Dear Ioannis,

TQ for the code.
Already try the code u post....but the result of debug through RS232 PC...get

RX_DATA[0] = H, RX_DATA[1] = D.

Why i get the "D", i don't know.

FYI,

i use PIC16F876A, 20MHz crystal to do this project.

Dear mister e,
I sorry about my post because i am new at here. Can u show me how to use the code tag?

TQ