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

📄 456.asm

📁 随着CPU技术的发展
💻 ASM
📖 第 1 页 / 共 2 页
字号:
            RET
            

            
TEXT_TAB:DB 54H,65H,6DH,70H,3AH,52H,65H,76H,3AH

;********************************************************
;                     调速模块
;********************************************************
DP:         SETB TR0        ;开计数器
            MOV A,TEMP_NUM
            CLR C
            SUBB A,#30
            JNC DP1      ;大于30度跳转
            MOV R6,#66
DELAY_1:    MOV R7,#250
DELAY_2:    CLR SWITCH    ;小于30度时,关闭风扇
            MOV R5,#14
            DJNZ R5,$
            DJNZ R7,DELAY_2
            DJNZ R6,DELAY_1
            LJMP DP10    ;跳转到返回


DP1:        MOV R3,A
            CLR C
            SUBB A,#20
            JC DP2         ;小于50度跳转
            
            CLR C
            SUBB A,#10
            JC DP3       ;小于60度跳转
            CLR LARUM    ;大于60度,发出警报
            LJMP DP4
DP3:        SETB LARUM   ;小于60度,关警报
            
DP4:        MOV R6,#66
DELAY_3:    MOV R7,#250
DELAY_4:    SETB SWITCH    ;大于50度时,风扇全开
            MOV R5,#14
            DJNZ R5,$
            DJNZ R7,DELAY_4
            DJNZ R6,DELAY_3
            LJMP DP10    ;跳转到返回

DP2:        MOV A,R3
            RL A
            MOV DPTR,#LEVER_TAB
            JMP @A+DPTR
            
LEVER_TAB:  AJMP LEVER_01
            AJMP LEVER_02
            AJMP LEVER_03
            AJMP LEVER_04
            AJMP LEVER_05
            AJMP LEVER_06
            AJMP LEVER_07
            AJMP LEVER_08
            AJMP LEVER_09
            AJMP LEVER_10
            AJMP LEVER_11
            AJMP LEVER_12
            AJMP LEVER_13
            AJMP LEVER_14
            AJMP LEVER_15
            AJMP LEVER_16
            AJMP LEVER_17
            AJMP LEVER_18
            AJMP LEVER_19
            AJMP LEVER_20
            

;-------------------第1级调速,温度31度,占空比30%
LEVER_01:   MOV R6,#66
DELAY_01:   MOV R7,#250
DELAY_02:   CLR SWITCH
            MOV R5,#09
            DJNZ R5,$
            SETB SWITCH
            MOV R5,#04
            DJNZ R5,$
            DJNZ R7,DELAY_02
            DJNZ R6,DELAY_01
            LJMP DP10


;-------------------第2级调速,温度32度,占空比36%
LEVER_02:   MOV R6,#66
DELAY_03:   MOV R7,#250
DELAY_04:   CLR SWITCH
            NOP
            MOV R5,#08
            DJNZ R5,$
            SETB SWITCH
            NOP
            MOV R5,#04
            DJNZ R5,$
            DJNZ R7,DELAY_04
            DJNZ R6,DELAY_03
            LJMP DP10

;-------------------第3级调速,温度33度,占空比40%
LEVER_03:   MOV R6,#66
DELAY_05:   MOV R7,#250
DELAY_06:   CLR SWITCH
            MOV R5,#08
            DJNZ R5,$
            SETB SWITCH
            MOV R5,#05
            DJNZ R5,$
            DJNZ R7,DELAY_06
            DJNZ R6,DELAY_05
            LJMP DP10

;-------------------第4级调速,温度34度,占空比43%
LEVER_04:   MOV R6,#66
DELAY_07:   MOV R7,#250
DELAY_08:   CLR SWITCH
            NOP
            MOV R5,#07
            DJNZ R5,$
            SETB SWITCH
            NOP
            MOV R5,#05
            DJNZ R5,$
            DJNZ R7,DELAY_08
            DJNZ R6,DELAY_07
            LJMP DP10

;-------------------第5级调速,温度35度,占空比46%
LEVER_05:   MOV R6,#66
DELAY_09:   MOV R7,#250
DELAY_10:   CLR SWITCH
            MOV R5,#07
            DJNZ R5,$
            SETB SWITCH
            MOV R5,#06
            DJNZ R5,$
            DJNZ R7,DELAY_10
            DJNZ R6,DELAY_09
            LJMP DP10

;-------------------第6级调速,温度36度,占空比50%
LEVER_06:   MOV R6,#66
DELAY_11:   MOV R7,#250
DELAY_12:   CLR SWITCH
            NOP
            MOV R5,#06
            DJNZ R5,$
            SETB SWITCH
            NOP
            MOV R5,#06
            DJNZ R5,$
            DJNZ R7,DELAY_12
            DJNZ R6,DELAY_11
            LJMP DP10

;-------------------第7级调速,温度37度,占空比53%
LEVER_07:   MOV R6,#66
DELAY_13:   MOV R7,#250
DELAY_14:   CLR SWITCH
            MOV R5,#06
            DJNZ R5,$
            SETB SWITCH
            MOV R5,#07
            DJNZ R5,$
            DJNZ R7,DELAY_14
            DJNZ R6,DELAY_13
            LJMP DP10

;-------------------第8级调速,温度38度,占空比56%
LEVER_08:   MOV R6,#66
DELAY_15:   MOV R7,#250
DELAY_16:   CLR SWITCH
            NOP
            MOV R5,#05
            DJNZ R5,$
            SETB SWITCH
            NOP
            MOV R5,#07
            DJNZ R5,$
            DJNZ R7,DELAY_16
            DJNZ R6,DELAY_15
            LJMP DP10


;-------------------第9级调速,温度39度,占空比60%
LEVER_09:   MOV R6,#66
DELAY_17:   MOV R7,#250
DELAY_18:   CLR SWITCH
            MOV R5,#05
            DJNZ R5,$
            SETB SWITCH
            MOV R5,#08
            DJNZ R5,$
            DJNZ R7,DELAY_18
            DJNZ R6,DELAY_17
            LJMP DP10

;-------------------第10级调速,温度40度,占空比63%
LEVER_10:   MOV R6,#66
DELAY_19:   MOV R7,#250
DELAY_20:   CLR SWITCH
            NOP
            MOV R5,#04
            DJNZ R5,$
            SETB SWITCH
            NOP
            MOV R5,#08
            DJNZ R5,$
            DJNZ R7,DELAY_20
            DJNZ R6,DELAY_19
            LJMP DP10

;-------------------第11级调速,温度41度,占空比66%
LEVER_11:   MOV R6,#66
DELAY_21:   MOV R7,#250
DELAY_22:   CLR SWITCH
            MOV R5,#04
            DJNZ R5,$
            SETB SWITCH
            MOV R5,#09
            DJNZ R5,$
            DJNZ R7,DELAY_22
            DJNZ R6,DELAY_21
            LJMP DP10

;-------------------第12级调速,温度42度,占空比70%
LEVER_12:   MOV R6,#66
DELAY_23:   MOV R7,#250
DELAY_24:   CLR SWITCH
            NOP
            MOV R5,#03
            DJNZ R5,$
            SETB SWITCH
            NOP
            MOV R5,#09
            DJNZ R5,$
            DJNZ R7,DELAY_24
            DJNZ R6,DELAY_23
            LJMP DP10

;-------------------第13级调速,温度43度,占空比73%
LEVER_13:   MOV R6,#66
DELAY_25:   MOV R7,#250
DELAY_26:   CLR SWITCH
            MOV R5,#03
            DJNZ R5,$
            SETB SWITCH
            MOV R5,#10
            DJNZ R5,$
            DJNZ R7,DELAY_26
            DJNZ R6,DELAY_25
            LJMP DP10

;-------------------第14级调速,温度44度,占空比76%
LEVER_14:   MOV R6,#66
DELAY_27:   MOV R7,#250
DELAY_28:   CLR SWITCH
            NOP
            MOV R5,#02
            DJNZ R5,$
            SETB SWITCH
            NOP
            MOV R5,#10
            DJNZ R5,$
            DJNZ R7,DELAY_28
            DJNZ R6,DELAY_27
            LJMP DP10

;-------------------第15级调速,温度45度,占空比80%
LEVER_15:   MOV R6,#66
DELAY_29:   MOV R7,#250
DELAY_30:   CLR SWITCH
            MOV R5,#02
            DJNZ R5,$
            SETB SWITCH
            MOV R5,#11
            DJNZ R5,$
            DJNZ R7,DELAY_30
            DJNZ R6,DELAY_29
            LJMP DP10

;-------------------第16级调速,温度46度,占空比83%
LEVER_16:   MOV R6,#66
DELAY_31:   MOV R7,#250
DELAY_32:   CLR SWITCH
            NOP
            MOV R5,#1
            DJNZ R5,$
            SETB SWITCH
            NOP
            MOV R5,#11
            DJNZ R5,$
            DJNZ R7,DELAY_32
            DJNZ R6,DELAY_31
            LJMP DP10

;-------------------第17级调速,温度47度,占空比86%
LEVER_17:   MOV R6,#66
DELAY_33:   MOV R7,#250
DELAY_34:   CLR SWITCH
            MOV R5,#1
            DJNZ R5,$
            SETB SWITCH
            MOV R5,#12
            DJNZ R5,$
            DJNZ R7,DELAY_34
            DJNZ R6,DELAY_33
            LJMP DP10

;-------------------第18级调速,温度48度,占空比90%
LEVER_18:   MOV R6,#66
DELAY_35:   MOV R7,#250
DELAY_36:   CLR SWITCH
            NOP
            NOP
            SETB SWITCH
            NOP
            MOV R5,#12
            DJNZ R5,$
            DJNZ R7,DELAY_36
            DJNZ R6,DELAY_35
            LJMP DP10
            
;-------------------第19级调速,温度49度,占空比93%
LEVER_19:   MOV R6,#66
DELAY_37:   MOV R7,#250
DELAY_38:   CLR SWITCH
            NOP
            SETB SWITCH
            MOV R5,#13
            DJNZ R5,$
            DJNZ R7,DELAY_38
            DJNZ R6,DELAY_37
            LJMP DP10

;-------------------第20级调速,温度50度,占空比96%
LEVER_20:   MOV R6,#66
DELAY_39:   MOV R7,#250
DELAY_40:   CLR SWITCH
            SETB SWITCH
            NOP
            MOV R5,#13
            DJNZ R5,$
            DJNZ R7,DELAY_40
            DJNZ R6,DELAY_39
            LJMP DP10

DP10:       CLR TR0
            MOV COUNTER,TL0
            MOV TL0,#00H
            RET
            
            
            

END

⌨️ 快捷键说明

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