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

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
12/09/09 10:01
Read: times


 
#171522 - New Code, hope it helps!
Responding to: ???'s previous message
Sorry Eric!
I had only used EQU till date while missed using BIT.
I found that in M-IDE studio for MCS-51.
So, the code is now as below...

;DEFINE  SFRs RELATED TO TIMER2
	
	T2MOD EQU 0C9H	;
	T2CON EQU 0C8H	;
	RCAP2H EQU 0CBH	;
	RCAP2L EQU 0CAH	;
	TL2 EQU 0CCH	;
	TH2 EQU 0CDH	;
	CTR EQU 2AH	; USED AS COUNTER FOR T2 INTERRUPT
	TR2 BIT 0CAH	;
	EXF2 BIT 0CEH	;
;*****************************************************************************
;*****************************************************************************	


		ORG 002BH       ; INTERRUPT SERVICE ROUTINE FOR T2

ISR_T2:		DJNZ CTR, EXIT  ; DECREMENT COUNTER, EXIT IF NOT ZERO
		ACALL INPUTS    ; ELSE CALL INPUTS SUBROUTINE
		MOV CTR, #0AH   ; RESET COUNTER TO 0Ah
EXIT:		CLR EXF2        ; (CLR EXF2 => T2CON.6)
		RETI            ; RETURN FROM INTERRUPT


		ORG 0050H       ; THIS IS MAIN LOOP

MAIN:		ACALL DISPLAY   ; 
		........
		........
		........
		........
		
		SJMP MAIN       ; 


		ORG 0100H       ; BOOT / INITIALIZATION SUBROUTINE

BOOT:		MOV TMOD, #11H  ; LOAD TMOD WITH 11H (1011 binary) 
		MOV T2MOD, #02H ; LOAD T2MOD WITH 0000 0010 BINARY
		MOV T2CON, #00H ;
		MOV RCAP2L, #00H;
		MOV RCAP2H, #00H;
		MOV SP, #60H    ; LOAD SP WITH 60H
		MOV P3, #0FFH   ; 
		MOV P0, #0FFH   ; 
		MOV P2, #0FFH   ; 
		MOV P1, #0FFH   ; 
		CLR P1.1        ; TURN OFF LED1 (THIS HAPPENS TO BE T2EX PIN OF TIMER2)
		CLR P1.3        ; TURN OFF LED2
		CLR P0.2        ; TURN OFF LED3
		MOV CTR, #0AH   ; COUNTER = 0Ah
		MOV IE, #0A0H   ; (ENABLE T2, SET EA=1, REST ALL =0)
		SETB TR2        ; (SET TR2= START TIMER2)
		SJMP MAIN       ; LONG JMP TO 0030H


		ORG 0200H	; SUBRTN FOR TAKING INPUT FORM P3

INPUTS:		MOV R2, #04H    ;
		......
		......
		......
		RET             ;


		ORG 0300H	; DISPLAY SUBRTN

DISPLAY:        JB ACC.7, JMP1  ; JMP IF H=1
                SETB P1.1       ; 
                CLR P1.3        ; 
                CLR P0.2        ; 
                SJMP JMP3       ; 
JMP1:           JB ACC.6, JMP2  ; 
                CLR P1.1        ; 
                SETB P1.3       ; 
                CLR P0.2        ; 
                SJMP HR8        ; 
JMP2:           CLR P1.1        ; 
                SETB P0.2       ; 
                CLR P1.3        ; 
JMP3:           RET             ;


;*****************************************************************
;*****************************************************************
 


Can anybody please help me come out of the problem???

Sandy

List of 19 messages in thread
TopicAuthorDate
Problem using Timer2 in 89S52!            01/01/70 00:00      
   not a very useful suggestion from 'Plz'            01/01/70 00:00      
      further suggestion            01/01/70 00:00      
         Message & Readable code is here...            01/01/70 00:00      
            look in the assembler manual            01/01/70 00:00      
               New Code, hope it helps!            01/01/70 00:00      
                  what You are trying to make ?            01/01/70 00:00      
                     mov T2MOD,#4            01/01/70 00:00      
                        sorry            01/01/70 00:00      
                            t2mod=0 ; t2con=4 (tr2=1) It worked!            01/01/70 00:00      
                        PSW            01/01/70 00:00      
                  that is not a comment!            01/01/70 00:00      
                     Comments OR Explaination!!!            01/01/70 00:00      
                        Comments are mainly for YOU            01/01/70 00:00      
                        WRONG!            01/01/70 00:00      
                           Answer the "why" in your comments.            01/01/70 00:00      
                              I got (I)T2 working !!!            01/01/70 00:00      
                  Clear TF2 in your service routine            01/01/70 00:00      
                     Clearing TF2 in ISR            01/01/70 00:00      

Back to Subject List