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

📄 useevt.asm

📁 一个功能完善的大型制冷设备控制程序
💻 ASM
📖 第 1 页 / 共 2 页
字号:
           ADD   A, DPL
           MOV   DPL, A
           MOV   R0,   #xCOMMBUF
	   MOV   dEXTPART, #cSCDRAM + 1
           MOV   pPORT2,   #cSCDRAM + 1
  NtMark: MOVX  A, @R0
           MOVX  @DPTR, A
           INC   R0
           INC   DPTR
           ;INC   DPTR
           DJNZ  R4, NtMark
           CLR   A
	   MOV   dEXTPART, A
           MOV   pPORT2, A
           JMP   EndOut
IsFloats:  CJNE  R1, #cCOM_FLOATSRST,IsForflts
           MOV   A, R7
           MOV   R4, A
           MOV   R5, #cADSEG
           MOV   B, #3
           MUL   AB
           ADD   A, #LOW(xAD_BUF) 
           XCH   A, R6
           MOV   B, #3
           MUL   AB
           ADD   A, #3       
           MOV   R2, A           ;THE  LONGER
           MOV   R1, #cCOM_SETFLOATS
           JMP   RetOut  
IsForflts: CJNE  R1, #cCOM_FLTSTSRST,IsMarkRst
           MOV   A,R7
           MOV   B,#3
           MUL   AB
           MOV   R4,A           ;GET COUNT
           MOV   A,R6
           ADD   A,#3       
           MOV   R2,A           ;THE  LONGER
           MOV   R1,#cCOM_SETFLOATS   ;cCOM_SETFLTSTS        
           MOV   R5, #cADSEG
           MOV   R6, #xAD_SET
           JMP   RetOut
IsMarkRst: CJNE  R1, #cCOM_MARKSETRST,NoCase
	   PUSH  ACC
	   MOV   A,  R6
	   ADD   A,  #3   
           MOV   R2, A           ;THE  LONGER  
           MOV   R1, #cCOM_SETMARKS
           MOV   A,  R7        
           MOV   R4, A	
           POP   ACC
           MOV   R5, #0
           MOV   R6, #hIN_1ERA
           JMP   RetOut
NoCase:    RET
           END
            
;#############################################################
; FILE NAME USEUPFLD.ASM
; SUBROUTE: uENDISP - UPDATE THE ENAGE SCALE DISPLAY FIELD
; FUNCTION:  DEFUALT                
; CHANGE REGISTERS: R6, R7, A
; RETURN: NONE
;------------------------------------------------------------
	    PROC  uENDISP
uENDISP:    MOV   A,  dOUT1STA
            MOV   R6, #DO_STARTCHNL
            CALL  sTOC_R6BIT
            RET
            END

;#############################################################
; FILE NAME USEUPFLD.ASM
; SUBROUTE: uTMPDISP - UPDATE THE TEMP. DISPLAY FIELD
; FUNCTION:  DEFUALT                
; CHANGE REGISTERS: R6, R7, A
; RETURN: NONE
;------------------------------------------------------------
	    PROC  uTMPDISP
uTMPDISP:   MOV   A,  dOUT1STA
            MOV   R6, #DO_STARTCHNL
            CALL  sTOC_R6BIT
            RET
            END

;#############################################################
; FILE NAME USEGAD.ASM
; SUBROUTE: CVTR_AD - CONVERT THE READ OUT DATA TO REAL MEASURE DATA
; FUNCTION:  DEFUALT                
; PARMENTERS: A - THE CHANNEL NUMBER
;     R7, R4,R5 - THE A/D CONVERTION DATA
; CHANGE REGISTERS: R0, R1, R2, R3, R4, R5, R6, R7, A, B
; RETURN: GET TEMPERATURE SAVE IN R7.R4.R5 AND PART INDEX 'dTMPBUF'
;------------------------------------------------------------
	    PROC  iCVTR_AD
iCVTR_AD:   PUSH  ACC
	    MOV   dTMPBUF, #0       ; FOR NORMAL DELTA.
	    CLR   C
	    SUBB  A, #cLOTEMPER     ; IS TEMP MEASURE?
	    POP   ACC
	    JNC   ForMiTemp
            MOV   DPTR, #TD_TAB
            CALL  GETAX2BXC         ; GET TEMPERTURE 
            JC    EndGet
            CLR   C
            MOV   A, R7
            JB    ACC.7, GetRet
            INC   dTMPBUF           ; FOR SECOND DELTA.
            SUBB  A, #6
            JC    GetRet            ; Is it > 31c
            INC   dTMPBUF           ; FOR SECOND DELTA.
            RET
ForMiTemp:  PUSH  ACC
	    SUBB  A, #cMITEMPER
	    POP   ACC
	    JNC   ForAmpere
            MOV   A, R7
            CJNE  A, #7, MiTempDlt 
            INC   dTMPBUF           ; FOR SECOND DELTA.
  MiTempDlt:MOV   DPTR, #TX_TAB
            CALL  GETAX2BXC         ; GET TEMPERTURE 
            JC    EndGet
            MOV   A, R7
            ANL   A, #7FH
            CLR   C
            SUBB  A, #7
            JC    GetRet            ; Is it > 63c
            INC   dTMPBUF           ; FOR SECOND DELTA.
  GetRet:   CLR   C
  EndGet:   RET 
ForAmpere:  PUSH  ACC
	    SUBB  A, #cUPAMPERE
	    POP   ACC
	    JNC   ForCurrent
;           LCALL GETCURRENT
	    RET
ForCurrent: 
;           LCALL GETPRESS
	    RET
	    END
TD_TAB:   ; TD - 型热敏测温电阻 查询表
DAT1:   DB 0FH, 00H,00H     ;THE COUNTER OF TABLE
	DB 86H,0C8H,00H     ; THE Y0 POINT   -50'c
	DB 03H,080H,00H     ; THE DY POINT    4'c
	DB 09H, 9EH,00H     ; THE X0 = 316  
	DB 09H,0B0H,80H     ; THE X1 = 353
	DB 09H,0C2H,80H     ; THE X2 = 389
	DB 09H,0D4H,80H     ; THE X3 = 425
	DB 09H,0E8H,80H     ; THE X4 = 465
	DB 09H,0FBH,80H     ; THE X5 = 503
	DB 0AH, 87H,40H     ; THE X6 = 541
	DB 0AH, 91H,40H     ; THE X7 = 581
	DB 0AH, 9AH,40H     ; THE X8 = 617
	DB 0AH,0A3H,40H     ; THE X9 = 653
	DB 0AH,0ACH,40H     ; THE X10  689
        DB 0Ah,0B4H,40H     ; THE X11  721 * 11 = 44 - 50 = -6
DAT2:   DB 12H, 00H,00H     ;THE COUNTER OF TABLE
	DB 84H,080H,00H     ; THE Y0 POINT  -8'c
	DB 02H, 80H,00H     ; THE DY POINT   2'c
	DB 0AH,0B0H,80H     ; THE X0 = 706
	DB 0AH,0B4H,40H     ; THE X1 = 721
	DB 0AH,0B8H,0C0H    ; THE X2 = 739
	DB 0AH,0BCH,0C0H    ; THE X3 = 755
	DB 0AH,0C0H,000H    ; THE X4 = 
	DB 0AH,0C3H,0C0H    ; THE X5 = 
	DB 0AH,0C7H,040H    ; THE X6 = 111
	DB 0AH,0CBH,040H    ; THE X7 = 114
	DB 0AH,0CEH,080H    ; THE X8 = 117
	DB 0AH,0D1H,080H    ; THE X9 = 120
	DB 0AH,0D4H,0C0H    ; THE X10    
        DB 0AH,0D7H,080H    ; THE X11
	DB 0AH,0D9H,0C0H    ; THE X12
	DB 0AH,0DCH, 00H    ; THE X13
        DB 0AH,0DFH, 00H    ; THE X14       * 14 = 28 - 8 = 20
DAT3:   DB 0EH, 00H,00H     ;THE COUNTER OF TABLE
	DB 05H,088H,00H     ; THE Y0 POINT   17'c
	DB 02H,0C0H,00H     ; THE DY POINT   3'c
        DB 0AH,0DAH,0C0H    ; THE X0 = 875
	DB 0AH,0DFH,00H     ; THE X1 = 892 
	DB 0AH,0E2H,40H     ; THE X2 = 905
	DB 0AH,0E5H,0C0H    ; THE X3 = 96
	DB 0AH,0E9H, 00H    ; THE X4 = 99
	DB 0AH,0ECH, 40H    ; THE X5 = 102
	DB 0AH,0EEH,0C0H    ; THE X6 = 105
	DB 0AH,0F1H, 80H    ; THE X7 = 108
	DB 0AH,0F3H,0C0H    ; THE X8 = 111
	DB 0AH,0F6H, 40H    ; THE X9 = 114
	DB 0AH,0F8H, 00H    ; THE X10 = 992
	DB 0AH,0F9H,0C0H    ; THE Xend = 999
TX_TAB: ; TX - 型热敏测温电阻 查询表
DAT4:   DB 10H, 00H,00H      ; THE COUNTER OF TABLE
	DB 85H,0F0H,00H      ; THE Y0 POINT   -30'c
	DB 02H,0C0H,00H      ; THE DY POINT    3'c
	DB 07H,084H,00H      ; THE X0
	DB 07H,08CH,00H      ; THE X1
	DB 07H,094H,00H      ; THE X2
	DB 07H,0A0H,00H      ; THE X3
	DB 07H,0ACH,00H      ; THE X4
	DB 07H,0BAH,00H      ; THE X5
	DB 07H,0CAH,00H      ; THE X6
	DB 07H,0DCH,00H      ; THE X7
	DB 07H,0F0H,00H      ; THE X8
	DB 08H,083H,00H      ; THE X9
	DB 08H,08FH,00H      ; THE X10
	DB 08H,09EH,00H      ; THE X11
	DB 08H,0ACH,00H
DAT5:   DB 17H, 00H,00H      ; THE COUNTER OF TABLE
	DB 01H,080H,00H      ; THE Y0 POINT   1'c
	DB 03H,0A0H,00H      ; THE DY POINT   5'c
	DB 08H,094H,00H      ; THE X0 =1
	DB 08H,0ACH,00H      ; THE X1 =6
	DB 08H,0C8H,00H      ; THE X2 =11
	DB 08H,0E8H,00H      ; THE X3 =16
	DB 09H,086H,00H      ; THE X4 =21
	DB 09H,09AH,00H      ; THE X5 =26
	DB 09H,0AFH,80H      ; THE X6 =31
	DB 09H,0C6H,00H      ; THE X7 =36
	DB 09H,0DDH,80H      ; THE X8 =41
	DB 09H,0F5H,80H      ; THE X9 =46
	DB 0AH,086H,0C0H     ; THE X10 =51
	DB 0AH,093H,000H     ; THE X11 =56
	DB 0AH,09EH,080H     ; THE X12 =61
	DB 0AH,0AAH,00H      ; THE X13 =66 
	DB 0AH,0B4H,80H      ; THE X14 =71 
	DB 0AH,0BEH,0C0H     ; THE X15 =76 
	DB 0AH,0C8H,40H      ; THE X16 =81 
	DB 0AH,0D0H,80H      ; THE X17 =86 
	DB 0AH,0D9H,00H      ; THE X18 =91 
	DB 0AH,0E0H,40H      
DAT6:   DB 0EH, 00H,00H     ;THE COUNTER OF TABLE
	DB 07H,0B4H,00H     ; THE Y0 POINT    90'c
	DB 02H,0C0H,00H     ; THE DY POINT    3'c
	DB 0AH,0D7H,80H     ; THE X0 = 90  
	DB 0AH,0DCH,00H     ; THE X0 = 93
	DB 0AH,0E0H,40H     ; THE X1 = 96
	DB 0AH,0E4H,40H     ; THE X2 = 99
	DB 0AH,0E8H,00H     ; THE X3 = 102
	DB 0AH,0EBH,80H     ; THE X4 = 105
	DB 0AH,0EFH,00H     ; THE X5 = 108
	DB 0AH,0F2H,40H     ; THE X6 = 111
	DB 0AH,0F5H,00H     ; THE X7 = 114
	DB 0AH,0F7H,0C0H    ; THE X8 = 117
	DB 0AH,0FAH,080H    ; THE X9 = 120
	DB 0AH,0FDH,000H    
;EN_TAB: ; 5K-300/360度EN - 电位器电阻能级 查询表
;DAT7:   DB 10H, 00H,00H     ; THE COUNTER OF TABLE
        DB 03H,080H,00H     ; THE Y0 POINT    4%
        DB 02H,0B0H,00H     ; THE DY POINT       2.75%
        DB 03H,0C0H,00H     ; THE X0 =  6  4500  4%
        DB 04H,0C0H,00H     ; THE X1 =  12 4375  6.75%
        DB 05H, 90H,00H     ; THE X2 =  18
        DB 05H,0C0H,00H     ; THE X3 =  24
        DB 06H, 84H,00H     ; THE X4 =  33  
        DB 06H,0A0H,00H     ; THE X5 =  40
        DB 06H,0B8H,00H     ; THE X6 =  46
        DB 06H,0D8H,80H     ; THE X7 =  54
        DB 06H,0F4H,80H     ; THE X8 =  61
        DB 07H, 8CH,00H     ; THE X9=   70
        DB 07H, 9CH,80H     ; THE X10=  78 * 10 = 27.5
        DB 07H,0ACH,00H     ; THE X11=  86
        DB 07H,0BCH,00H     ; THE X12=  94 * 12 = 33 + 4 = 37
;DAT8:   DB 17H, 00H,00H     ; THE COUNTER OF TABLE
        DB 06H,08AH,80H     ; THE Y0 POINT    34.625%
        DB 02H,098H,00H     ; THE DY POINT    2.375%
        DB 07H,0AEH,00H     ; THE X0 =  87  
        DB 07H,0BCH,00H     ; THE X1 =  94   
        DB 07H,0CEH,00H     ; THE X2 =  103 
        DB 07H,0DEH,00H     ; THE X3 =  12
        DB 07H,0EEH,00H     ; THE X4 =  16
        DB 07H,0FEH,00H     ; THE X5 =  20
        DB 08H, 88H,00H     ; THE X6 =  24  
        DB 08H, 91H,00H     ; THE X7 =  28
        DB 08H, 9AH,00H     ; THE X8 =  32
        DB 08H,0A3H,00H     ; THE X9 =  36
        DB 08H,0AEH,00H     ; THE X10 = 40
        DB 08H,0B9H,00H     ; THE X11=  44
        DB 08H,0C5H,00H     ; THE X12=  48
        DB 08H,0D0H,00H     ; THE X13=  52
        DB 08H,0DCH,00H     ; THE X14=  56
        DB 08H,0E9H,00H     ; THE X15=  60
        DB 08H,0F6H,00H     ; THE X16=  64
        DB 09H, 82H,80H     ; THE X17=  68
        DB 09H, 8AH,00H     ; THE X18=  72
        DB 09H, 91H,00H     ; THE X19=  76 * 2.375 = 45.125 + 34.625 = 79.75
;DAT9:   DB 14H, 00H,00H     ; THE COUNTER OF TABLE
        DB 07H,09CH,00H     ; THE Y0 POINT  ---- 78%
        DB 01H,0E0H,00H     ; THE DY POINT  1.75%
        DB 09H, 8AH,00H     ; THE X0 =    
        DB 09H, 91H,00H     ; THE X1 =  290 1200 
        DB 09H, 97H,00H     ; THE X2 =  302 1125 
        DB 09H, 9DH,00H     ; THE X3 =  12
        DB 09H,0A4H,00H     ; THE X4 =  16
        DB 09H,0ABH,00H     ; THE X5 =  20
        DB 09H,0B2H,00H     ; THE X6 =  24  
        DB 09H,0BAH,00H     ; THE X7 =  28
        DB 09H,0C1H,00H     ; THE X8 =  32
        DB 09H,0C9H,80H     ; THE X9 =  36
        DB 09H,0D2H,80H     ; THE X10 = 40
        DB 09H,0DBH,00H     ; THE X11=  44
        DB 09H,0E4H,80H     ; THE X12=  48
        DB 09H,0EFH,00H     ; THE X13=  478       
        DB 09H,0F8H,00H     ; THE X14=  496
        DB 0AH,080H,80H     ; THE X15=  514
        DB 0AH,082H,00H     ; THE X16=  532 * 16 = 28 + 78 = 106%
        DB 0AH,082H,00H     ; THE Xend  532
EN_TAB: ; 2K-180/270度EN - 电位器电阻能级 查询表
DAT7:   DB 12H, 00H,00H     ;THE COUNTER OF TABLE
	DB 02H,0B8H,00H     ; THE Y0 POINT   5.625%  2.875
	DB 01H,0A0H,00H     ; THE DY POINT   1.25%
	DB 08H,0F4H,00H     ; THE X0 = 1--  
	DB 08H,0F7H,00H     ; THE X0 = 1--  
	DB 08H,0F9H,00H     ; THE X0 = 1--  
	DB 08H,0FCH,00H     ; THE X0 = 1--  
	DB 08H,0FFH,00H     ; THE X0 = 1--  
	DB 09H, 81H,00H     ; THE X0 = 100  
	DB 09H, 82H,00H     ; THE X1 =  96
	DB 09H, 83H,80H     ; THE X2 =  92
	DB 09H, 85H,00H     ; THE X3 =  88
	DB 09H, 86H,00H     ; THE X4 =  84
	DB 09H, 87H,80H     ; THE X5 =  80
	DB 09H, 88H,80H     ; THE X6 =  76
	DB 09H, 8AH,00H     ; THE X7 =  72
	DB 09H, 8BH,80H     ; THE X8 =  68
	DB 09H, 8DH,00H     ; THE X9 =  64   *14 = 17.5
DAT8:   DB 12H, 00H,00H     ;THE COUNTER OF TABLE
	DB 04H,0EEH,00H     ; THE Y0 POINT   14.875%
	DB 03H,0B0H,00H     ; THE DY POINT    5.5%
	DB 09H, 87H,80H     ; THE X0 = 100  
	DB 09H, 8DH,00H     ; THE X1 =  96
	DB 09H, 93H,00H     ; THE X2 =  92
	DB 09H, 99H,00H     ; THE X3 =  88
	DB 09H, 9FH,80H     ; THE X4 =  84
	DB 09H,0A7H,00H     ; THE X5 =  80
	DB 09H,0ADH,80H     ; THE X6 =  76
	DB 09H,0B4H,80H     ; THE X7 =  72
	DB 09H,0BCH,00H     ; THE X8 =  68
	DB 09H,0C4H,00H     ; THE X9 =  64
	DB 09H,0CCH,00H     ; THE X10=  60  
	DB 09H,0D5H,80H     ; THE X11=  56
	DB 09H,0DDH,80H     ; THE X12=  52
	DB 09H,0E6H,40H     ; THE X13=  48
	DB 09H,0F0H,00H     ; THE X14=  44 *14 = 77
DAT9:   DB 18H, 00H,00H     ;THE COUNTER OF TABLE
	DB 07H,0B5H,00H     ; THE Y0 POINT    90.5%
	DB 01H,0B0H,00H     ; THE DY POINT    1.375%
	DB 09H,0EDH,80H     ; THE X0 = 100  
	DB 09H,0F0H,00H     ; THE X1 =  96
	DB 09H,0F2H,80H     ; THE X2 =  92
	DB 09H,0F5H,00H     ; THE X3 =  88
	DB 09H,0F7H,80H     ; THE X4 =  84
	DB 09H,0FAH,00H     ; THE X5 =  80
	DB 09H,0FCH,80H     ; THE X6 =  76
	DB 09H,0FFH,00H     ; THE X7 =  72
	DB 0AH, 81H,00H     ; THE X8 =  68
	DB 0AH, 82H,80H     ; THE X9 =  64
	DB 0AH, 84H,00H     ; THE X10=  60  13.75 
	DB 0AH, 85H,80H     ; THE X11=  56
	DB 0AH, 87H,00H
	DB 0AH, 88H,80H
	DB 0AH, 8AH,00H
	DB 0AH, 8BH,80H
	DB 0AH, 8DH,00H
	DB 0AH, 8EH,80H
	DB 0AH, 90H,00H
	DB 0AH, 91H,80H
	DB 0AH, 93H,00H
	DB 0AH, 94H,80H
	DB 0AH, 96H,00H
	END

⌨️ 快捷键说明

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