⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 0832.asm

📁 达盛单片机试验箱
💻 ASM
字号:
;利用DAC0832产生阶梯波、锯齿波和方波,用示波器观察波形。
DA0832		XDATA	8000H

			ORG	 	0000H
			
			AJMP	MAIN
;*****************************************************************************
;		/*主程序*/
;*****************************************************************************		
			ORG		0030H
			
MAIN:	
			AJMP	FB	

;*****************************************************************************
;		/*阶梯初始值为0,阶梯数为15,增长率为12*/
;*****************************************************************************		

JTB:		MOV	    R1,#0FFH
JTB0:		MOV	    DPTR,#DA0832
			MOV	    R0,#15
			MOV	    A,#00H
JTB1:		MOVX	@DPTR,A
			CALL	DELAY1MS
			ADD	    A,#12
			DJNZ	R0,JTB1
			DJNZ	R1,JTB0
			AJMP	JTB

;*****************************************************************************
;		/*钜齿波最大值为35,最小值为0*/
;*****************************************************************************		
		
JCB:		MOV		DPTR,#DA0832
JCB1:		MOV		A,#00H
JCB2:		MOVX	@DPTR,A
			INC		A
			CJNE	A,#35,JCB2
			AJMP	JCB1
		
;*****************************************************************************
;		/*方波最大值为FF,最小值为0*/
;*****************************************************************************	

FB:			MOV		DPTR,#DA0832
FB1:		MOV		A,#0
			MOVX	@DPTR,A
			CALL	DELAY2MS
			MOV		A,#0FFH
			MOVX	@DPTR,A
			CALL	DELAY2MS
			AJMP	FB1
					
;*****************************************************************************
;		/*延时程序*/
;*****************************************************************************	

DELAY1MS: 	MOV		R1,#01H
DL0:	  	MOV		R2,#225
		  	DJNZ	R2,$
		  	DJNZ	R1,DL0	
		  	RET
	
DELAY2MS: 	CALL	DELAY1MS
			CALL	DELAY1MS
			RET
		
DELAY_3S: 	PUSH	01H
			PUSH	02H
		  	PUSH	03H
		  	MOV		R1,#10              ;延时约3秒
DELAY_3S0:	MOV		R2,#225
DELAY_3S1:	MOV		R3,#225
DELAY_3S2:	NOP
		  	NOP
		  	DJNZ	R3,DELAY_3S2
		  	DJNZ	R2,DELAY_3S1
		  	DJNZ	R1,DELAY_3S0
		 	POP		03H
		  	POP		02H
		  	POP		01H
		  	RET		
	     	END		
	
			

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -