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

📄 0-5v.asm

📁 利用单片机AT89S51和ADC0809对直流电压0~5V进行采集
💻 ASM
字号:

                org     0000h
START:  	;MOV	30h,#00H
		;MOV	31h,#00H
		;MOV	32h,#00H
		MOV	DPTR,#TABLE		;送段码表首地址
                MOV 35H, #00H
		SETB	P3.4
		SETB	P3.5
		CLR	P3.6		 	;选择ADC0808的通道3

WAIT: 	        CLR 	p3.2
		SETB 	p3.2
		CLR 	p3.2				;启动转换
 		JNB 	p3.1,$		 	;等待转换结束
		SETB 	p3.0 				;允许输出
		MOV 	35h,P1			;暂存转换结果
		CLR 	p3.0			  	;关闭输出
		MOV 	R0,#35h
                       ;存放AD转换值的首地址
   MOV R1,#38H       ;存放BCD码的首地址
   ;MOV R2,#1        ;要转化的AD转换值的个数

      MOV R4,#0        ;暂存转化结果的低位
   MOV R5,#0        ;;暂存转化结果的高位
   CLR C
   MOV A,@R0        ;取要转化的AD转换值
   MOV B,#14H        ;×20
   MUL AB
   MOV R3,A     ;积低位存入TEMPLOW单元
   MOV A,B
   MOV R2,A    ;积高位存入TEMPHIGH单元
   CLR A                 ;转化程序

   MOV R6,A
   MOV R7,#10H
BP1:CLR C
   MOV A,R3
   RLC A
   MOV  R3,A
   MOV A, R2
   RLC A
   MOV  R2,A
      MOV A ,R6
   ADDC A ,R6
   DA A
   MOV R6 ,A
   MOV A ,R5
   ADDC A ,R5
   DA A
   MOV R5 ,A
   MOV  A,R4
   ADDC A,R4
   SWAP A
   MOV R4,A
   DJNZ R7,BP1
     MOV 30H,R6
      MOV 31H,R5
      MOV R0,#30H
   MOV R1,#38H
   MOV R7,#02H
  BP2: MOV A,@R0
   ANL A,#0FH
   MOV @R1,A
   INC R1
   MOV A,@R0
   SWAP A
   ANL A,#0FH
   MOV @R1,A
  INC R0
  INC R1
  DJNZ R7, BP2

     ; RET
   	LCALL	DISP		  	;显示AD转换结果
		SJMP 	WAIT
;*******************
;显示子程序
;*******************
DISP:MOV A,#0FEH
        MOV P2,A
        MOV A,3BH
        MOV DPTR,#TABLE
        MOVC A,@A+DPTR
        ORL A,#80H  ;加小数点
        MOV P0,A
       	CALL DELAY
		MOV A, #0FDH
        MOV P2,A
        MOV A,3AH
        MOV DPTR, #TABLE
        MOVC A,@A+DPTR
        MOV P0,A
        LCALL DELAY
		 MOV A, #0FBH
        MOV P2,A
        MOV A,39H
        MOV DPTR, #TABLE
        MOVC A,@A+DPTR
        MOV P0,A
      LCALL DELAY
	  MOV A, #0F7H
        MOV P2,A
        MOV A,38H
        MOV DPTR, #TABLE
        MOVC A,@A+DPTR
        MOV P0,A
      LCALL DELAY
	  	RET
       TABLE:  DB 3FH,06H,5BH,4FH,66H
        DB 6DH,7DH,07H,7FH,6FH
DELAY:  MOV 40,#34H
D0:     MOV 41,#19H
D1:     DJNZ 41,D1
        DJNZ 40,D0
        RET

	END

⌨️ 快捷键说明

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