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

📄 acm6501.asm

📁 一个完整的空调柜机程序
💻 ASM
📖 第 1 页 / 共 5 页
字号:
                SET1            GOWARMF
                CLR1            GOCOOLF
                CLR1            ACOFAN30SY
;                SET1            ACOFAN30SF
                BR             !SWARM0
SET130MF:
;                BT             COMP,SCOOL00
;                SET1            COMP30MF
                BR             !SCOOL0
AUTOSECO1_0:    BF             COMP10MY,$SET130MF
                BR             !AUTOSECO1_1

AUTOSECO2:      BT             GOCOOLF,$SCOOL00
                MOV             A,ATEMP
                ADD             A,#03H
                CMP             A,ROMTEMP
                BC              $AUTOSECO2_0
                BF             COMP30MY,$SET130MF1
                CLR1                    STF
AUTOSECO2_1:    CALL            !CLRFLG_AUTO
                CALL            !CLRFLG_WARM
                CLR1			VALOFF1MF
                SET1            GOCOOLF
                CLR1            GOWARMF
                BR             !SCOOL0
SET130MF1:
;                BT             COMP,SWARM00
;                SET1            COMP30MF
                BR             !SWARM0
AUTOSECO2_0:    BF             COMP10MY,$SET130MF1
                CLR1                    STF
                BR             !AUTOSECO2_1
SCOOL00_11:     BR             !SCOOL00                

AUTOCONSTA:     BF             GOWARMF,$SCOOL00_11
                BR             !SWARM0

DRYOVCUR_L:     BR              !DRYOVCUR

SDRY:           CLR1            SEG25.2
                CLR1            SEG25.0
                CLR1            SEG25.3
                CLR1            SEG27.7
                SET1            SEG25.1
                BT             STF,$SDRY1
                BT             P5F,$DRYOVCUR_L
                BT             DRYSECOF,$SDRY3
                SET1            DRYSECOF
                BT             ROMERRF,$DRYROMERR
                CMP             ROMTEMP,#0F0H
                BNC             $SDRY1_0
                CMP             ROMTEMP,#16
                BC              $SDRY1_0

DRYROMERR:      BT             COMP3MF,$SDRY2
                BT             DRYMF,$JUMP6
                SET1            DRYMF
                MOV             DRYMC,#0H
                MOV             DRYMC+1,#0H
JUMP6:          SET1            COMP
                SET1            EXTFAN
                BT             COMP5MY,$DRYOVCUR1
;                CLR1            COMP5MY
                BT             COMP5MF,$DRYOVCUR1
                SET1            COMP5MF
                MOV             COMP5MC,#0H
                MOV             COMP5MC+1,#0H
DRYOVCUR1:      SET1            LFAN
                CLR1            MFAN
                CLR1            HFAN
                CLR1            WAITMCUF
                SET1            SEG27.3
                RET
SDRY2:          BF             DRY30SF,$SDRY1_0
                RET
SDRY1_0:        CLR1            DRYSECOF
                BT             COMP5MF,$SDRYRET
                CLR1            DRYMF
;;;                MOV             DRYMC,#0H
;;;                MOV             DRYMC+1,#0H
SDRY1:          CLR1            COMP
                CLR1            EXTFAN
                BT             COMP3MY,$SDRY1_11
                BT             COMP3MF,$SDRY1_11
                SET1            COMP3MF
                MOV             COMP3MC,#0H
SDRY1_11:       CLR1            LFAN
                CLR1            MFAN
                CLR1            HFAN
;;;;;;;                CLR1            RB.4
                SET1            WAITMCUF
;;;;;;;                CLR1            SVANEF
SDRYRET:        RET
SDRY3:          BF             DRYMF,$SDRY1_1
                RET
SDRY1_1:        BF             DRY30SF,$SDRY1
                RET
DRYOVCUR:       CALL            !CLRFLG_DRY
                BR             !DRYOVCUR1

SFANMODE:       CLR1            SEG25.1
                CLR1            SEG25.2
                CLR1            SEG25.3
                CLR1            SEG27.7
                SET1            SEG25.0
                CLR1            COMP
                CLR1            EXTFAN
                SET1            COMP3MF
                CLR1            COMP3MY
                CALL            !NORFAN
;                BF             SFANLF,SFANMOD1
;                SET1            RB.6
;                CLR1            RB.1
;                RET
;SFANMOD1:       SET1            RB.1
;                CLR1            RB.6
                RET

MODESELECT4:
SWARM:          CLR1            SEG25.0
                CLR1            SEG25.1
                CLR1            SEG25.2
                CLR1            SEG25.3
                SET1            SEG27.7
SWARM0:         BF              COMP,$COMPY
                CLR1            WARMFIRSTF
                BR              !COMPY2
COMPY:
;                CLR1            COMPSECOF
COMPY2:         
                CLR1            VALOFF1MF
                MOV             VALOFF1MC,#0H

;;;;                BT             OVERWARMF,$OVERWARM_110
                BF             DEFROSTF,$SWARM1
                BR             !OTHERRUN
CONWARM20:      BR             !CONWARM2
;OVERWARM_110:   BR             !OVERWARM_11
SWARM1:
                CALL            !P3DO
                BT              OVERWARMF,$SWARM11
                SET1            STF
SWARM11:
                BF             ROMERRF,$NOWARMRERR
                BR              !CONWARM3               ;???????

;                BF             WARMT10MF,WARMT50MOK             ;WHEN ROM ERR,NO DEFROST,THEN
;                RET
NOWARMRERR:
;                CLR1            WARMT10MF
;                CLR1            WARMT50MF
;                MOV             WARMT10MC,#0H
;                MOV             WARMT10MC+1,#0H
        
WARMT50MOK:
                CMP             ROMTEMP,#0F0H
                BNC             $HERE3
                MOV             A,TEMPBUF
                CMP             A,ROMTEMP
                BZ              $CONSTA
                BC              $CONWARM20
HERE3:          BR             !CONWARM3

CONSTA:         BF             COMP,$CONSTA_10
                BR             !CONSTA_2
;CONSTA_100:     BT              OVERWARMF,$OVERWARM
CONSTA_10:      BR             !CONSTA_1
CONSTA1_15:     BR             !CONSTA1
CONWARM3:       BT             OVERWARMF,$YESCOMP5M
                BT             COMP3MF,$CONSTA1_15
                BT             P5F,$YESCOMP5M
                SET1           COMP
                SET1           EXTFAN
                BT             COMP40MY,$CONWARM3_15
                SET1           COMP40MF
CONWARM3_15:    BT             COMP5MY,$YESCOMP5M
                BT             COMP5MF,$YESCOMP5M
                SET1            COMP5MF
                MOV             COMP5MC,#0H
                MOV             COMP5MC+1,#0H
YESCOMP5M:      CLR1            CUIYUREF
;                CLR1            CUIYURE10SF
;                CLR1            CUIYURE10SY
                CLR1            CUIYURE20SY
                CLR1            CUIYURE20SF

CONSTA_2:       BT              OVERWARMF,$NOACFAN
;                BT              PIPERRF,$NOACFAN0
                BT              ACOFAN30SY,$NOACFAN              ;AGAINST COOL FAN
;                BF              COMPSECOF,$NOFAN
                BT              PIPERRF,$NOFAN
;ACNOFAN1:       SET1            COMPSECOF
                CMP             PIPTEMP,#0F0H
                BNC             $NOFAN
                CMP             PIPTEMP,#30
                BC              $NOFAN
                CMP             PIPTEMP,#35
                BC              $ACOLFAN
NOACFAN1:       CALL            !NORFAN
                BR              !ACOHFAN0
;                BF             SFANLF,ACOHFAN
ACOLFAN:        SET1            LFAN
                CLR1            MFAN
                CLR1            HFAN
ACOHFAN0:       CLR1            WAITMCUF
                SET1            SEG27.3
                BR              !NOACFAN
;NOACFAN0:       BT              ACOFAN30SY,$NOACFAN1
;                BR              !ACOLFAN
NOFAN:          SET1            WAITMCUF
                CLR1            LFAN
                CLR1            MFAN
                CLR1            HFAN
NOACFAN:        BT              OVERWARMF,$OVERWARM_L
                BT              ROMERRF,$INDEFRO0_L
                BT              PIPERRF,$INDEFRO0_L
;                BT              DELAY3MF,$OVERWARM_L
                CMP             PIPTEMP,#0F0H
                BNC             $DEFRO20
                MOV             A,DEFROPIP
                CMP             A,PIPTEMP
                BZ		$DEFRO10
                BNC             $DEFRO11               ;DEFROPIP>=PIPTEMP
                CLR1            TxF                     ;DEFROPIP<PIPTEMP
                SET1            DEFRO1MF
                BR		!OVERWARM
DEFRO10:        CLR1		TxF
OVERWARM_L:     BR              !OVERWARM
INDEFRO0_L:	BR		!INDEFRO0
DEFRO11:	CLR1		DEFRO1MF
		MOV		DEFRO1MC,#0H
DEFRO1:         BT              TxF,$DEFRO2
                BF              DEFRO1MY,$OVERWARM_L
                CALL            !COUNTTx
                BT              TxF,$DEFRO2
                BR              !OVERWARM                
DEFRO2:         MOV             A,PIPTEMP
                CMP             A,TxTEMP
                BC              $DEFRO20
                BZ              $DEFRO20
                CLR1            TxF
                BR              !OVERWARM
INDEFRO0:       BF              COMP50MY,$OVERWARM_L
		CLR1		COMP40MY
                BR		!INDEFRO
DEFRO20:        BT              DELAY3MY,$DEFRO200
                SET1            DELAY3MF
                BR              !OVERWARM
DEFRO200:
                BF              COMP40MY,$OVERWARM
		CLR1		COMP40MF
		CLR1		COMP50MY
INDEFRO:        SET1            DEFROSTF
                BF             DEFRO8MF,$INDEFRO1
                BR             OTHERRUN
INDEFRO1:       SET1            DEFRO30SF
                CLR1            ACOFAN30SY
                BT		ROMERRF,$INDEFRO3
                BT		PIPERRF,$INDEFRO3
                CMP             PIPTEMP,#0F0H
                BNC             $INDEFRO3
                CMP             PIPTEMP,#41
                BC              $INDEFRO2
                SET1            DEFRO3MFF
                CLR1            DEFRO8MFF
                CLR1            DEFRO5MFF
                BR              !INDEFRO4
INDEFRO2:       CMP             PIPTEMP,#37
                BC              $INDEFRO3
                SET1            DEFRO5MFF
                CLR1            DEFRO8MFF
                CLR1            DEFRO3MFF
                BR              !INDEFRO4
INDEFRO3:       SET1            DEFRO8MFF
                CLR1            DEFRO3MFF
                CLR1            DEFRO5MFF
INDEFRO4:
                CLR1            COMP
;                CLR1            EXTFAN
                CLR1            HFAN
                CLR1            LFAN
                CLR1            MFAN
                CLR1            DJR
                CLR1		DELAY3MY
                SET1            SEG27.0
                SET1            WAITMCUF
                BT             COMP3MF,$LONGTOOT
                SET1            COMP3MF
                MOV             COMP3MC,#0H
LONGTOOT:       BR             !OTHERRUN
;OTHERRUN_11:    CALL                    !P3DO
;                BR                             OTHERRUN
PIPERRNOOV_11:  BR              !PIPERRNOOV
QOVERWARM_11:   BR              !QOVERWARM
;OVERWARM_11:    CALL            !P3DO
OVERWARM:
                BT             PIPERRF,$PIPERRNOOV_11
                CMP             PIPTEMP,#0F0H           ;OVERWARM
                BNC             $QOVERWARM_11
                CMP             PIPTEMP,#55
                BC              $QOVERWARM_11

                CLR1            COMP40MF
                CLR1            COMP40MY
                CLR1            COMP50MY
                MOV             COMP40MC,#0H
                MOV             COMP40MC+1,#0H
                CLR1            DEFROSTF
                CLR1            DEFRO1MY
                CLR1            DEFRO1MF
                MOV             DEFRO1MC,#0H
                MOV             DEFROPIP,#0H
                CLR1            TxF
                CLR1            DEFRO8MFF
                CLR1            DEFRO5MFF
                CLR1            DEFRO3MFF
                CLR1            DEFRO30SF
                CLR1            QDEFRO30SF
                CLR1            DEFRO8MF
                MOV             DEFRO30SC,#0H
                MOV             DEFRO8MC,#0H
                MOV             DEFRO8MC+1,#0H


                CLR1            DJR
                BT              OVERWARMF,$OVERHFAN
                SET1            OVERWARMF
                BF              LFAN,$OVERMFAN
                CLR1            LFAN
                SET1            MFAN
                BR              !OVERHFAN
OVERMFAN:       BF              MFAN,$OVERHFAN
                CLR1            MFAN
                SET1            HFAN
OVERHFAN:       
                CMP             PIPTEMP,#60
                BZ		$OVERFAN1
                BNC             $OVERWARM1
                BR              !OVERFAN1
OVERWARM1:      CLR1            EXTFAN
                CLR1            DJR
                CMP             PIPTEMP,#65
                BZ              $OVERWARM1_1
                BNC             $OVERWARM2
OVERWARM1_1:    BT              OVERWARM5MY,$OVERWARM2
                SET1            OVERWARM5MF
                BR              !OVERFAN1_1
OVERFAN1:       CLR1            OVERWARM5MF

⌨️ 快捷键说明

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