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

📄 he-nongduojiance.asm

📁 氦浓度检测仪汇编程序
💻 ASM
📖 第 1 页 / 共 4 页
字号:
DV3:       DJNZ    B,DV1
           POP     ACC
           MOV     R1,A
           MOV     A,R7
           MOV     R2,A
           MOV     A,R6
           MOV     R3,A
           RET

FMLD:      MOV     A,@R0
           MOV     R6,A
           INC     R0
           MOV     A,@R0
           MOV     R2,A
           INC     R0
           MOV     A,@R0
           MOV     R3,A
           DEC     R0
           DEC     R0
           MOV     A,@R1
           MOV     R7,A
           INC     R1
           MOV     A,@R1
           MOV     R4,A
           INC     R1
           MOV     A,@R1
           MOV     R5,A
           DEC     R1
           DEC     R1
           RET
FSTR:      MOV     A,R4
           MOV     @R1,A
           INC     R1
           MOV     A,R2
           MOV     @R1,A
           INC     R1
           MOV     A,R3
           MOV     @R1,A
           DEC     R1
           DEC     R1
           RET
FSUB:      SETB    3AH
           LCALL   FMLD
	   LCALL   FABP
	   RET
FABP:      MOV     A,R6     ;由3ah决定加法或减法
           MOV     C,ACC.7
           MOV     38H,C
           XRL     A,R7
           JNB     ACC.7,FA1
           CPL     3AH
FA1:       MOV     A,R6
           MOV     C,ACC.6
           MOV     ACC.7,C
           MOV     R6,A
           MOV     A,R7
           MOV     C,ACC.6
           MOV     ACC.7,C
           MOV     R7,A
           CLR     C
           MOV     A,R6
           SUBB    A,R7
           JZ      FA2
           CLR     F0
           CLR     39H
           JB      ACC.7,FA5
           CJNE    R4,#00H,FA6
           CJNE    R5,#00H,FA6
FA2:       JB      3AH,FA8
           MOV     A,R3
           ADD     A,R5
           MOV     R3,A
           MOV     A,R2
           ADDC    A,R4
           MOV     R2,A
           JNC     FA4
           SETB    39H
           CLR     C
FA3:       CLR     F0
           LCALL   FSDT
FA4:       CJNE    R2,#00H,FAA
           CJNE    R3,#00H,FAA
           MOV     R4,#41H
           RET
FAA:       MOV     A,R6
           MOV     C,38H
           MOV     ACC.7,C
           XCH     A,R4
           MOV     R6,A
           RET
FA5:       CJNE    R2,#00H,FA7
           CJNE    R3,#00H,FA7
           MOV     A,R7
           MOV     R6,A
           SJMP    FA2
FA6:       CPL     F0
FA7:       CLR     C
           LCALL   FSDT
           SJMP    FA1
FA8:       MOV     A,R3
           CLR     C
           SUBB    A,R5
           MOV     R3,A
           MOV     A,R2
           SUBB    A,R4
           MOV     R2,A
           JNC     FA9
           CLR     A
           CLR     C
           SUBB    A,R3
           MOV     R3,A
           CLR     A
           SUBB    A,R2
           MOV     R2,A
           CPL     38H
FA9:       SETB    C
           SJMP    FA3
FMUL:      LCALL   FMLD
           MOV     A,R6
           XRL     A,R7
           MOV     C,ACC.7
           MOV     38H,C
           LCALL   WDMUL
           MOV     A,R7
           MOV     C,ACC.7
           MOV     F0,C
           MOV     A,@R0
           ADD     A,@R1
           MOV     R6,A
           SETB    C
           LCALL   FSDT
           MOV     A,R6
           MOV     C,38H
           MOV     ACC.7,C
           MOV     R4,A
           RET
FADD:      CLR     P1.2
           NOP
	   SETB    P1.2
           CLR     3AH
           LCALL   FMLD
           LCALL   FABP
           RET
;*********************************************************************
P1ND:      DB      07H,80H,0CCH,06H,0E7H,99H,06H,0D3H,3DH,06H,0C0H,00H ;64.4, 57.9, 52.81, 48
           DB      06H,0ACH,0F5H,06H,9AH,14H,06H,88H,1EH,05H,0F2H,3DH  ;43.24,38.52,34.03,30.28
           DB      05H,0D4H,51H,05H,0BBH,33H,05H,0A8H,0CCH             ;26.54,23.4,21.1
P2ND:      DB      06H,0DDH,0CCH,06H,0C9H,85H,06H,0BAH,5CH,06H,0ACH,51H;55.45,50.38,46.59,43.08
           DB      06H,9DH,0B8H,06H,8FH,33H,06H,82H,51H,05H,0E9H,0AEH  ;39.43,35.8,32.58,29.21
	   DB      05H,0CEH,66H,05H,0B6H,0E1H,05H,0A5H,99H             ;25.8,22.86,20.7
P3ND:      DB      06H,0CDH,99H,06H,0BAH,00H,06H,0ABH,99H,06H,9DH,1EH  ;51.4,46.5,42.9,39.28
           DB      06H,91H,99H,06H,86H,33H,05H,0F8H,00H,05H,0E2H,28H   ;36.4,33.55,31,28.27
	   DB      05H,0CAH,66H,05H,0B3H,70H,05H,0A2H,0B8H             ;25.3,22.43,20.34
P4ND:      DB      06H,0C4H,5CH,06H,0B0H,0CCH,06H,0A2H,99H,06H,95H,99H ;49.09,44.2,40.65,37.4
           DB      06H,8AH,00H,05H,0FEH,0CCH,05H,0EDH,1EH,05H,0DAH,0CCH;34.5,31.85,29.64,27.35
	   DB      05H,0C6H,3DH,05H,0B0H,0E1H,05H,0A1H,5CH             ;24.78,22.11,20.17
P5ND:      DB      06H,0BDH,99H,06H,0ABH,1EH,06H,9CH,0CCH,06H,91H,0AH  ;47.4,42.78,39.2,36.26
           DB      06H,84H,7AH,05H,0F5H,1EH,05H,0E5H,99H,05H,0D4H,0CCH ;33.12,30.64,28.7,26.6
           DB      05H,0C2H,0CCH,05H,0AFH,5CH,05H,0A0H,14H             ;24.35,21.92,20.01
P6ND:      DB      06H,0B8H,66H,06H,0A6H,33H,06H,98H,0CCH,06H,8DH,33H  ;46.1,41.55,38.2,35.3
           DB      06H,80H,0CCH,05H,0EEH,00H,05H,0DFH,33H,05H,0CEH,0CCH;32.2,29.75,27.9,25.85
           DB      05H,0BDH,0D7H,05H,0ACH,51H,05H,9FH,99H              ;23.73,21.54,19.95
P7ND:      DB      06H,0B3H,33H,06H,0A2H,33H,06H,95H,33H,06H,88H,0CCH  ;44.8,40.55,37.3,34.2
           DB      05H,0FCH,00H,05H,0E9H,70H,05H,0D9H,0AEH,05H,0C9H,99H;31.5,29.18,27.21,25.2
           DB      05H,0BBH,47H,05H,0ABH,0AH,05H,9EH,0A3H              ;23.41,21.38,19.83
P8ND:      DB      06H,0AFH,1EH,06H,9FH,0AH,06H,92H,66H,06H,86H,00H    ;43.78,39.76,36.6,33.5
           DB      05H,0F7H,33H,05H,0E5H,1EH,05H,0D4H,66H,05H,0C6H,14H ;30.9,28.64,26.55,24.76
	   DB      05H,0B9H,33H,05H,0A9H,0EBH,05H,9DH,0AEH             ;23.15;21.24;19.71
P9ND:      DB      06H,0ACH,00H,06H,9CH,1EH,06H,8FH,0AEH,06H,83H,0C2H  ;43,39.03,35.92,32.94
           DB      05H,0F3H,99H,05H,0E1H,0AH,05H,0D0H,14H,05H,0C2H,7AH ;30.45,28.13,26.01,24.31
           DB      05H,0B6H,3DH,05H,0A8H,14H,05H,9CH,7AH               ;22.78,21.01,19.56
P10ND:     DB      06H,0A9H,00H,06H,99H,33H,06H,8DH,99H,06H,82H,3DH    ;42.25,38.3,35.4,32.56
           DB      05H,0EFH,33H,05H,0DDH,33H,05H,0CCH,0CCH,05H,0C0H,66H;29.9,27.65,25.6,24.05
	   DB      05H,0B3H,47H,05H,0A5H,0EBH,05H,9BH,99H               ;22.41,20.74,19.45
P11ND:     DB      06H,0A6H,33H,06H,97H,33H,06H,8BH,99H,06H,80H,00H    ;41.55,37.8,34.9,32
           DB      05H,0ECH,0CCH,05H,0D9H,85H,05H,0C9H,0AEH,05H,0BDH,99H;29.6,27.19,25.21,23.7
	   DB      05H,0B2H,3DH,05H,0A4H,0A3H,05H,9AH,0CCH             ;22.28,20.58,19.35
P12ND:     DB      06H,0A3H,33H,06H,94H,00H,06H,84H,66H,05H,0F9H,99H    ;40.8,37,33.1,31.2
           DB      05H,0E7H,33H,05H,0D0H,0A3H,05H,0C7H,99H,05H,0BCH,0CCH;28.9,26.08,24.95,23.6
	   DB      05H,0B1H,0AH,05H,0A3H,99H,05H,9AH,3DH             ;22.13,20.45,19.28        
P13ND:     DB      06H,9FH,0D7H,06H,90H,00H,06H,81H,99H,05H,0F6H,66H    ;39.96,36,32.4,30.8
           DB      05H,0E4H,00H,05H,0D4H,0A3H,05H,0C5H,5CH,05H,0BAH,14H;28.5,26.58,24.67,23.26
	   DB      05H,0AFH,0AH,05H,0A1H,0AH,05H,99H,99H             ;21.88,20.13,19.2
P14ND:     DB      41H,00H,00H,41H,00H,00H,41H,00H,00H,41H,00H,00H
           DB      41H,00H,00H,41H,00H,00H,41H,00H,00H,41H,00H,00H
           DB      41H,00H,00H,41H,00H,00H,41H,00H,00H
;***************************显示**************************************
       
	   

DISP:      CLR     P2.0
           MOV     R1,#05H              ;显示6位数
           MOV     R2,#08H              ;每字节8位
           MOV     R0,#73H              ;70H-72H为显示缓冲区
           MOV     DPTR,#SEGTAB         ;字形表的入口地址
NEXTS:     MOV     A,@R0                ;取最高位的待显示数据
           MOVC    A,@A+DPTR            ;查表获取字形码

LOOP:      CLR     P3.6
           RRC     A
           MOV     p3.7,c               ;取低位发送
           SETB    P3.6                 ;发送
           DJNZ    R2,LOOP              ;8位是否传完?
           MOV     R2,#08H
	   DEC     R0                   
	   DJNZ    R1,NEXTS             ;直到5个数据全显示完。
	   nop
           SETB    P2.0
	   RET

SEGTAB:    DB      77H, 41H, 3BH, 6BH, 4DH, 6EH               ;EE  28 77H,41H   5
           DB      7EH, 43H, 7FH, 4FH, 00H, 0F7H             ;                 11
           DB      0C1H,0BBH,0EBH,0CDH,0EEH,0FEH             ;                 17
           DB      0C3H,0FFH,0CFH,08H ,1FH, 34H,5DH,3EH,75H,40H,02H,08H,20H,28H          ;31
           ;       0    1    2    3    4    5   
           ;       6    7    8    9   消隐码0.
	   ;       1.   2.   3.   4.   5.   6.  
	   ;       7.   8.   9.   -    P    L    H   E   U   MA  MV  Pa  J2  J2/Pa
SMOVE:     MOV     R2,#8
SMOVE1:    CLR     P2.1
           RRC     A
           MOV     P3.7,C
	   SETB    P2.1
	   NOP
           DJNZ    R2,SMOVE1
	   RET


;*******************************X5045读写操作*********************************


XF64RM:    CLR     P1.4
           CLR     P1.2
           MOV     A,#3
           LCALL   SPIS
           MOV     A,R4
           LCALL   SPIS
           LCALL   SPIR
           MOV     @R0,A
           INC     R0
           DJNZ    R7,$-5
           CLR     P1.4
           SETB    P1.2
           RET

XF64WM:    CLR     P1.4
           CLR     P1.2
           MOV     A,#6
           LCALL   SPIS
           CLR     P1.4
           NOP
           SETB    P1.2
           NOP
           NOP
           CLR     P1.2
           MOV     A,#2
           LCALL   SPIS
           MOV     A,R4
           LCALL   SPIS
XF64WM1:   MOV     A,@R0
           LCALL   SPIS
           INC     R0
           DJNZ    R7,XF64W1
           CLR     P1.4
           SETB    P1.2
           RET

XF64R:     CLR     P1.4
           CLR     P1.2
           MOV     A,#5
           LCALL   SPIS
           MOV     A,R4
           LCALL   SPIS
           LCALL   SPIR
           MOV     @R0,A
           INC     R0
           DJNZ    R7,$-5
           CLR     P1.4
           SETB    P1.2
           RET

XF64W:     CLR     P1.4
           CLR     P1.2
           MOV     A,#6H
           LCALL   SPIS
           CLR     P1.4
           NOP
           SETB    P1.2
           NOP
           NOP
           CLR     P1.2
           MOV     A,#1
           LCALL   SPIS
XF64W1:    MOV     A,@R0
           LCALL   SPIS
           INC     R0
           DJNZ    R7,XF64W1
           CLR     P1.4
           SETB    P1.2
           RET
SPIS:      MOV     R2,#8
SPIS1:     RLC     A
           CLR     P1.4
           NOP
           NOP
           MOV     P1.5,C
           NOP
           NOP
           SETB    P1.4
           DJNZ    R2,SPIS1
           SETB    P1.5
           RET

SPIR:      MOV     R2,#8
           CLR     A
           CLR     C
SPIR1:     CLR     P1.4
           NOP
           NOP
           MOV     C,P1.3
           RLC     A
           NOP
           SETB    P1.4
           DJNZ    R2,SPIR1
           RET

  

SERIS:     CLR     EA
           CLR     EX1
           CLR     ES
	   CLR     ET0
	   MOV     TH0,#90H
	   MOV     TL0,#0
	   CLR     TR0
           CLR     RI
	   CLR     P1.2
	   NOP
	   SETB    P1.2
           PUSH    PSW
           PUSH    ACC
           SETB    RS1
           SETB    RS0
OR2:       MOV     A,SBUF
           CLR     ACC.7
           JB      7FH,$+9
           CJNE    A,#40H,SRERR
           MOV     0FH,#07H
           SETB    7FH
           INC     48H
           MOV     R0,48H
           MOV     @R0,A
           LCALL   SDAPR

SRRET:     POP     ACC
           POP     PSW
           SETB    P2.5
	   SETB    ES
           SETB    EA
           RETI
           
SRERR:     MOV     R2,#07H
           MOV     R0,#10H
           CLR     A
           MOV     @R0,A
           DJNZ    R2,$-1
           MOV     48H,#0FH
           LJMP    SRRET
SSEND:     CLR     P1.2
           CLR     P2.5
	   SETB    P1.2
           MOV     SBUF,A
           JBC     TI,$+5
           SJMP    $-3
           MOV     R2,#32H
           DJNZ    R2,$
           SETB    P2.5
           RET
SDAPR:     MOV     A,48H
           CJNE    A,#0FH,$+6
           LJMP    SRET
           MOV     R0,48H
           MOV     A,@R0
           CLR     ACC.7
           CJNE    A,#50H,SRET
           MOV     A,48H
           CJNE    A,#16H,$+3
           JNC     SERR
           CJNE    A,#15H,$+6
           LJMP    SORDR
           LJMP    SERR
SERR:      MOV     R0,#15H
           MOV     R2,#06H
           CLR     A
           MOV     @R0,A
           INC     R0
           DJNZ    R2,$-2
           CLR     7FH
	   SETB    20H
           MOV     48H,#0FH
           RET
SRET:      MOV     A,48H
           CJNE    A,#15H,$+3
           JNC     SERR
           CJNE    A,#10H,$+3
           JC      SERR
           RET
SORDR:     MOV     R0,#80H
           MOV     @R0,11H
           INC     R0
 	   MOV     @R0,12H
	   INC     R0
	   MOV     @R0,13H
	   INC     R0
	   MOV     @R0,14H
           MOV     R0,#9CH
           MOV     @R0,15H
	   CLR     7FH
	   MOV     48H,#0FH
           SETB    2CH
           SETB    2EH
	   MOV     3DH,#00H
           MOV     3FH,#00H
           RET

SED2:      MOV     R0,#76H
SED1:      MOV     A,@R0
           LCALL   SSEND
           INC     R0
           DJNZ    R6,SED1
           RET
TIME0:     CLR     EA
           CLR     ET0
	   CLR     TR0
	   CLR     TF0
           CLR     P1.2
	   NOP
	   NOP
	   SETB    P1.2
	   MOV     TH0,#01H
	   MOV     TL0,#0
	   INC     3FH
	   MOV     A,3FH
	   CJNE    A,#10H,DER
           MOV     3FH,#00
           MOV     6FH,#10
           MOV     70H,#21
           MOV     71H,#5
           MOV     72H,#25
           MOV     73H,#21
           LCALL   DISP
DER:	   LJMP    WAITES
           















;*****************************************************************************

	   END

⌨️ 快捷键说明

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