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

📄 hexp6.asm

📁 A/D-D/A转换程序
💻 ASM
字号:
;A/D-D/A转换实验

led8seg_port  	equ	0F300h
led8bit_port  	equ	0F400h
ADCCLK   	EQU    	P3.0 	;ADC转换时钟
ADCRD   EQU    	P3.1 	;读ADC转换结果
DACAB	EQU     P3.2	;DAC通道选择
DACCS	EQU	P3.3    ;DAC片选
DACWR	EQU     P3.4    ;DAC数据写

	ORG   	0000H
	ljmp  	main
	
	ORG 	0100H
main:	mov  	SP,#80h
AGAIN:	SETB 	ADCRD
	SETB 	ADCCLK
	CLR  	ADCCLK
	SETB 	ADCCLK
	CLR  	ADCCLK
	SETB 	ADCCLK
	CLR  	ADCCLK
	SETB 	ADCCLK
	CLR  	ADCCLK		;启动ADC
	CLR  	ADCRD		;输出ADC数据?启动A/D转换?
	CLR  	DACAB       	;选择A通道
	CLR  	DACCS		;选择DAC芯片
        CLR  	DACWR		;启动DAC
        MOVX 	A,@DPTR	
	LCALL 	dspaddata
	LJMP 	AGAIN

dspaddata:
	MOV 	R2,A
	mov 	R0,#30H
	ANL 	A,#0FH
	MOV 	@R0,A
	INC 	R0
	MOV 	A,R2
	SWAP 	A
	ANL 	A,#0FH
	MOV 	@R0,A
	mov 	R3,#2
	mov 	R0,#30H
	mov 	R1,#0FEh
LPDSP:	NOP
	ACALL 	disp_data
	INC 	R0
	ACALL 	disp_bit
	SETB 	C
        RLC 	A
	MOV 	R1,A
	LCALL 	DELAY_1MS	
	LCALL 	DELAY_1MS
	DJNZ 	R3,LPDSP
	RET
	
	
;入口:R0显示数据单元	
DISP_data:
	NOP
	MOV 	A,@R0 
	MOV 	DPTR,#TAB
	MOVC 	A,@A+DPTR	
	MOV 	DPTR,#led8seg_port
	MOVX 	@DPTR,A
	ret
	
;入口:R1显示位置		
disp_bit:
	NOP
	MOV 	A,R1
	MOV 	DPTR,#led8bit_port
	MOVX 	@DPTR,A
	RET

TAB:  DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,8EH;0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F

DELAY_1MS:
	MOV R7,#250
DELAY_1MS1:
	NOP
	NOP
	DJNZ R7,DELAY_1MS1
	RET
			
	end

⌨️ 快捷键说明

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