Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
02/10/06 22:48
Read: times


 
#109766 - Formatted Code
Responding to: ???'s previous message
I formatted your code for you. Looks like you need to learn the DJNZ (decrement-jump not zero) instruction. Notice the wait and longwait routines I changed to use DJNZ. I doubt this will solve your problem, but others may look at the code easier now.

Jon


TRANSMITTER:

DATA0	EQU	28H
TEMP	EQU	31H
TE	EQU	P2.0		;TRANSMIT ENABLE PIN
;
	ORG	0000H
	AJMP	START
;
	ORG	0100H
START:	CLR	TE		;TRANSMIT ENABLE PIN OF HT640
	MOV	DATA0,#16H
MAIN:	MOV	A,DATA0
	ACALL	SEND
	AJMP	MAIN
SEND:	MOV	P1,A		;PUT DATA0 TO THE DATA BUS (D0-D7 OF HT 640)
	SETB	TE
	ACALL	WAIT
	ACALL	WAIT
	CLR	TE		;GIVE AN INTERRUPT TO TE PIN TO START RF COMMUNICATION
	ACALL	WAIT
	ACALL	WAIT
	RET
WAIT:	MOV	TEMP,#0FFH
HERE:	DEC	TEMP
	MOV	A,TEMP
	JNZ	HERE
	RET
END

WAIT:	MOV	R0,#0FFH
	DJNZ	R0,$
	RET

RECEIVER:

RCV	EQU	28H		;DATA FROM RF
TV	EQU	P2.0		;DATA IS RECEIVED INTERRUPT
LED	EQU	P2.1		;CORRECT DATA IS RECEIVED LED
;
	ORG	0000H
	AJMP	START
;
	ORG	0100H
START:	CLR 	TV 		;CLEAR FLAG
	SETB	LED		;TURN OFF LED
	CLR	C
MAIN:	JNB	TV,MAIN		;IF THERE IS NO COMMING DATA WAIT HERE
	MOV	RCV,P1		;TAKE THE DATA FROM DATA BUS (D0-D7 OF HT648L)
	ACALL	WAIT
	MOV	A,RCV
	SUBB	A,#16H
	JNZ	EXIT		;EXIT IF THE DATA DOESNT MATCH
	CLR	LED		;TURN ON LED IF THE DATA IS EQUAL TO 16H
	ACALL	LONGWAIT
EXIT:	AJMP	START

WAIT:	MOV	R1,#0FFH
HERE:	DEC	R1
	MOV	A,R1
	JNZ	HERE
	RET

LONGWAIT:
	MOV	R1,#0FFH
LONG1:	MOV	R2,#0FFH
LONG2:	DEC	R2
	MOV	A,R2
	JNZ	LONG2
	DEC	R1
	JNZ	LONG1
	RET
END

LONGWAIT:
	MOV	R1,#0FFH
LONG1:	MOV	R2,#0FFH
	DJNZ	R2,$
	DJNZ	R1,LONG1
	RET


List of 7 messages in thread
TopicAuthorDate
what's wrong with my code? (RF PROJECT)            01/01/70 00:00      
   Loop problems at a minimum            01/01/70 00:00      
   Formatted Code            01/01/70 00:00      
      Receive loop            01/01/70 00:00      
   setup times ?            01/01/70 00:00      
   and....            01/01/70 00:00      
      thank you everybody            01/01/70 00:00      

Back to Subject List