mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	Add .a51 sample
This commit is contained in:
		
							
								
								
									
										66
									
								
								samples/Assembly/External Interrupt.a51
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										66
									
								
								samples/Assembly/External Interrupt.a51
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,66 @@
 | 
			
		||||
	ORG	0000h
 | 
			
		||||
	SJMP	START
 | 
			
		||||
	ORG	0003h
 | 
			
		||||
	LCALL	INT0_ISR
 | 
			
		||||
	RETI
 | 
			
		||||
	ORG	000Bh
 | 
			
		||||
	LCALL	T0_ISR
 | 
			
		||||
	RETI
 | 
			
		||||
	ORG	0013h
 | 
			
		||||
	LCALL	INT1_ISR
 | 
			
		||||
	RETI
 | 
			
		||||
	ORG	001Bh
 | 
			
		||||
	LCALL	T1_ISR
 | 
			
		||||
	RETI
 | 
			
		||||
	ORG	0023h
 | 
			
		||||
	LCALL	UART_ISR
 | 
			
		||||
	RETI
 | 
			
		||||
	ORG	0030h
 | 
			
		||||
START:
 | 
			
		||||
	MOV	A,#11111110b
 | 
			
		||||
	SETB	IT0	; Set External Interrupt 0 to be falling edge triggered
 | 
			
		||||
	SETB	EX0	; Enable External Interrut 0
 | 
			
		||||
	SETB	EA	; Enable Interrupt
 | 
			
		||||
LEFT:			
 | 
			
		||||
	CJNE	A,#01111111b,LOOP1
 | 
			
		||||
	JMP	RIGHT
 | 
			
		||||
LOOP1:
 | 
			
		||||
	MOV	P1,A
 | 
			
		||||
	RL	A	
 | 
			
		||||
	LCALL	DELAY
 | 
			
		||||
	SJMP	LEFT	
 | 
			
		||||
RIGHT:
 | 
			
		||||
	CJNE	A,#11111110b,LOOP2
 | 
			
		||||
	JMP	LEFT
 | 
			
		||||
LOOP2:
 | 
			
		||||
	MOV	P1,A
 | 
			
		||||
	RR	A	
 | 
			
		||||
	LCALL	DELAY
 | 
			
		||||
	SJMP	RIGHT
 | 
			
		||||
	
 | 
			
		||||
INT0_ISR:
 | 
			
		||||
	MOV	R1,#3
 | 
			
		||||
FLASH:
 | 
			
		||||
	MOV	P1,#00h
 | 
			
		||||
	LCALL	DELAY
 | 
			
		||||
	MOV	P1,#0FFh
 | 
			
		||||
	LCALL	DELAY
 | 
			
		||||
	DJNZ	R1,FLASH
 | 
			
		||||
	RET
 | 
			
		||||
T0_ISR:
 | 
			
		||||
	RET
 | 
			
		||||
INT1_ISR:
 | 
			
		||||
	RET
 | 
			
		||||
T1_ISR:
 | 
			
		||||
	RET
 | 
			
		||||
UART_ISR:
 | 
			
		||||
	RET
 | 
			
		||||
 | 
			
		||||
DELAY:	MOV	R5,#20	;R5*20 mS
 | 
			
		||||
D1:     MOV	R6,#40
 | 
			
		||||
D2:     MOV	R7,#249
 | 
			
		||||
	DJNZ	R7,$
 | 
			
		||||
 	DJNZ	R6,D2
 | 
			
		||||
  	DJNZ	R5,D1
 | 
			
		||||
   	RET
 | 
			
		||||
	END
 | 
			
		||||
		Reference in New Issue
	
	Block a user