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

📄 adc0测试.asm

📁 c8051f020的ADC0应用
💻 ASM
字号:
;A/D转换
;程序功能:检验差动输入和单端输入时在没有任何输入情况下的信噪比


$INCLUDE(C8051F020.INC)

				ORG		00H
				AJMP	MAIN

				ORG		100H				
MAIN:		MOV WDTCN,#0DEH	;关看门狗
				MOV WDTCN,#0ADH	
				
;配置系统时钟使用外部晶振22.1184MHz

CLOCK:  MOV  OSCXCN,#67H      ;外部晶振模式,大的晶振驱动电流
				CLR  A
				DJNZ ACC,$
				DJNZ ACC,$
LOOPC:	MOV  A,OSCXCN         ;OSCXCN.7为0时表明外部晶振没有起振或不稳定,为1时表明稳定运行
		    JNB  ACC.7,LOOPC
		    ORL  OSCICN,#08H      ;内部晶振禁止,外部晶振开始工作	
				
;ADC0寄存器初始化
				ORL AMX0SL,#00H;输入通道0
				ORL AMX0CF,#00H;输入方式单端输入
				ORL ADC0CF,#00H;转换周期为一个时间系统,增益为1
				ORL ADC0CN,#81H;使能工作,准备转换数据;AD0BUSY启动转换,数据左对齐
        ORL	REF0CN,#03H;内部电压基准提供从VREF脚输出,ADC0电压基准取自VREF0
;--------------------------------------------------------------------------
	      MOV  IE  ,#00H	;禁止所有中断

;--------------------------------------------------------------------------
	      MOV	SP,#20H ;堆栈设置
;==========================================================================

				MOV		70H,#00H
				MOV		71H,#00H
				MOV 	DPTR,#0000H

LOOP:  ; LCALL	DELAY
				CLR		AD0INT
				SETB	AD0BUSY		
				
				JB	  AD0BUSY,LOOP
				MOV		A,ADC0L
				MOVX	@DPTR,A
				MOV		r3,A
				INC		DPTR
				MOV		A,ADC0H
				MOVX	@DPTR,A
				MOV		r4,A
				MOV		70H,DPH
				MOV		71H,DPL
				INC		DPTR
				
				AJMP	LOOP

Delay:	MOV   R7, #07FH		;延时子程序	
Delay1: MOV   R6, #80H
Delay0: MOV   R5, #00H
        DJNZ  R5, $
        DJNZ  R6, Delay0
        DJNZ  R7, Delay1
	    	
				RET

END

⌨️ 快捷键说明

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