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

📄 d-ht48.asm

📁 HT48E06的DOME程序
💻 ASM
📖 第 1 页 / 共 2 页
字号:
#INCLUDE			HT48E06.INC
	TIME_SHI	EQU	10
	BEEP		EQU	TMRC.4
;-------------------------------------------------------------
DATA	.SECTION	AT	60H	'DATA'
	DELAY_1			DB	?
	DELAY_2			DB	?
	DELAY1			DB	?
	DELAY2			DB	?
  ;-----------------------------------------------
	SM_DATA4		DB	?
	SM_DATA3		DB	?
	SM_DATA2		DB	?
	SM_DATA1		DB	?
	SM			DB	?
;--------------------------------------
	TIME_DATA		DB	?
	DATA_BACKUP		DB	?
	SHI_WEI_DATA		DB	?
	GE_WEI_DATA		DB	?
	MIN_DATA		DB	?
;---------------------------------------------------
	KEY_DATA		DB	?
	DELAY_RETURE		DB	?
   ;-----------------------------------------------
   	DING1			DB	?
   	DING2			DB	?
   	DING5			DB	?
   ;-------------------------------------------------
	BEEP_DATA		DB	?
	BEEP_DATA2		DB	?
	POWER_DATA		DB	?
	POWER_TIME		DB	?
	POWER_ON		DB	?
	POWER_OFF		DB	?
;-------------------------------------------------------------
CODE	.SECTION	AT	00H	'CODE'
	ORG	00H
	JMP	START
	ORG	008H
	JMP	TIMER_1
 START:
 ;蜂鸣一声进入待机状态,数码管不显示,只有开关键起作用
 	MOV		A,0FAH
 	MOV		BEEP_DATA,A
 	MOV		A,01000000B
	MOV		TMRC,A
	MOV		A,0D8H
	MOV		TMR,A
	MOV		A,0FFH
	MOV		TMRC,A	
	
 	SET		BEEP 
 KK:
 	MOV		A,00000100B
 	MOV		PAC,A
 	SET		PA
 	;不断扫描pa2,为底电位时开关按键被按下
 GO:
 	SZ		PA.2
 	JMP		GO
 K:
 	SZ		PA.2;为0表示按键未放开
 	JMP		RUN
 	JMP		K
 RUN:  ;按键被放开时
 	SET		BEEP
 RUN1:
 	CLR		KEY_DATA
 	MOV		A,11101111B
 	MOV		SM_DATA1,A
 	MOV		SM_DATA2,A
 	MOV		SM_DATA3,A
 	MOV		SM_DATA4,A
 	CALL		XSHI
 ;----------------------------------------------
 KEY_SCAN:
	MOV		A,00001000B
	MOV		PAC,A
	MOV		PCC,A
	SET		PA
	SET		PC.0
	;开关按键
	SZ		PC.0
	JMP		W
	JMP		NEXIT_300W
 W:
	MOV		A,PA
	XOR		A,11111011B
	SZ		ACC
	JMP		NEXIT_100W
	
	SET		BEEP
 	CALL		KEY_UP
 	JMP		KK
 	;100w按键
 NEXIT_100W:
 	MOV		A,PA
 	XOR		A,11111101B
 	SZ		ACC
 	JMP		NEXIT_500W

	SET		BEEP
 	CALL		KEY_UP
 	JMP		POWER_100W
 	;300w按键
 NEXIT_300W:
 	MOV		A,PA
 	XOR		A,11111011B
 	SZ		ACC
 	JMP		NEXIT_500W

	SET		BEEP
 	CALL		KEY_UP
 	JMP		POWER_300W
 	;500w按键
 NEXIT_500W:
 	MOV		A,PA
 	XOR		A,10111111B
 	SZ		ACC
 	JMP		NEXIT_1000W
 	
	SET		BEEP
 	CALL		KEY_UP
 	JMP		POWER_500W
 	;1000w按键
 NEXIT_1000W:
 	MOV		A,PA
 	XOR		A,11101111B
 	SZ		ACC
 	JMP		NEXIT_1300W

	SET		BEEP
 	CALL		KEY_UP
 	JMP		POWER_1000W
 	;1300w按键
 NEXIT_1300W:
 	MOV		A,PA
 	XOR		A,11011111B
 	SZ		ACC
	JMP		NEXIT_1600W

	SET		BEEP
 	CALL		KEY_UP
 	JMP		POWER_1300W
 	;1600w按键
 NEXIT_1600W:
 	MOV		A,PA
 	XOR		A,01111111B
 	SZ		ACC
 	JMP		EXIT_KEY
	SET		BEEP
 	CALL		KEY_UP
 	JMP		POWER_1600W
 EXIT_KEY:
 	MOV		A,POWER_DATA
 	SUB		A,0EEH
 	SZ		ACC
 	JMP		RUN1		
 	JMP		W_END
 ;---------------------------------------------------------------------------
 W_END:
	MOV	A,0FFH
	MOV	SM_DATA4,A
	MOV	A,00101001B
	MOV	SM_DATA3,A
	MOV	A,01001111B
	MOV	SM_DATA2,A
	MOV	A,00000111B
	MOV	SM_DATA1,A
	CALL	XSHI
	JMP	KEY_SCAN
 ;-----------------------------------------------------
 POWER_100W:
 	MOV		A,00010001B
 	MOV		SM_DATA1,A
	MOV		A,00010001B
 	MOV		SM_DATA2,A
	MOV		A,11010111B
 	MOV		SM_DATA3,A
	MOV		A,0FFH
 	MOV		SM_DATA4,A
 	
 	MOV		A,30D
 	MOV		TIME_DATA,A
 	MOV		A,1D
 	MOV		POWER_DATA,A
 	
	MOV		A,12D
	MOV		MIN_DATA,A
 K_100:
 	MOV		A,4D
	MOV		POWER_OFF,A
	;PC.0始终输出0,pb.1以5s输出为1,20s输出为0,规律循环输出
	MOV		A,00H
	MOV		PCC,A
	CLR		PC.0
	MOV		A,11111101B
	MOV		PBC,A
 ON_100:
	SET		PB.1
	MOV		A,01H
	MOV		DELAY_RETURE,A
	JMP	DELAY_5S
 RETURE_100:
	MOV		A,PA
	SUB		A,0FFH
	SZ		ACC
	JMP		OFF_100
	JMP		EXIT_100W
 OFF_100:
 	SDZ		MIN_DATA
 	JMP		OFF1
 	JMP		TIME_JS1
 OFF1:	
	CLR		PB.1
	MOV		A,02H
	MOV		DELAY_RETURE,A
	JMP	DELAY_5S
 RETURE_100_2:
	MOV		A,PA
	SUB		A,0FFH
	SZ		ACC
	JMP		G1
	JMP		EXIT_100W
  G1:
	SDZ		POWER_OFF
	JMP		OFF_100
	JMP		K_100
 TIME_JS1:
 	SDZ		TIME_DATA
 	JMP		JS1
 	JMP		EXIT_100W
 JS1:
 	MOV		A,12D
 	MOV		MIN_DATA,A
 	JMP		OFF1
 EXIT_100W:
 	MOV		A,0EEH
	MOV		POWER_DATA,A
	JMP		W_END		
;-----------------------------------------------------------------
;300w  PC.0始终输出0,pb.1以35s输出为1,10s输出为0,规律循环输出
POWER_300W:
	MOV		A,00010001B
 	MOV		SM_DATA1,A
	MOV		A,00010001B
 	MOV		SM_DATA2,A
	MOV		A,10000101B
 	MOV		SM_DATA3,A
	MOV		A,0FFH
 	MOV		SM_DATA4,A
 	
	MOV		A,60D
 	MOV		TIME_DATA,A
 	MOV		A,3D
 	MOV		POWER_DATA,A
 	
	MOV		A,12D
	MOV		MIN_DATA,A
 K_300:
	MOV		A,2D
	MOV		POWER_OFF,A
	MOV		A,00H
	MOV		PCC,A
	CLR		PC.0
	MOV		A,11111101B
	MOV		PBC,A
 ON_300:
	SET		PB.1
	MOV		A,03H
	MOV		DELAY_RETURE,A
	JMP	DELAY_5S
RETURE_300:
	MOV		A,PA
	SUB		A,0FFH
	SZ		ACC
	JMP		G3
	JMP		EXIT_300W
  G3:
 	SDZ		MIN_DATA
 	JMP		O_300
 	JMP		TIME_JS3
 O_300:
 	SDZ		POWER_ON  ;POWER_ON=7
 	JMP		ON_300
 	MOV		A,7D
 	MOV		POWER_ON,A
 OFF_300:	
	CLR		PB.1
	MOV		A,04H
	MOV		DELAY_RETURE,A
	JMP	DELAY_5S
RETURE_300_2:
	MOV		A,PA
	SUB		A,0FFH
	SZ		ACC
	JMP		G3_1
	JMP		EXIT_300W
  G3_1:
	SDZ		MIN_DATA
	JMP		F_300
	JMP		JS3
 F_300:	
	SDZ		POWER_OFF
	JMP		OFF_300
	JMP		K_300
 TIME_JS3:
 	MOV		A,12D
	MOV		MIN_DATA,A
 	SDZ		TIME_DATA
 	JMP		OFF_300
 	JMP		EXIT_300W
 JS3:
 	MOV		A,12D
 	MOV		MIN_DATA,A
 	SDZ		TIME_DATA
 	JMP		F_300
 	JMP		EXIT_300W
 EXIT_300W:
 	MOV		A,0EEH
	MOV		POWER_DATA,A
	JMP		W_END
;-----------------------------------------------------------------
;500w  PC.0始终输出0,pb.1始终输出1
POWER_500W:
 	MOV		A,00010001B
 	MOV		SM_DATA1,A
	MOV		A,00010001B
 	MOV		SM_DATA2,A
	MOV		A,10001001B
 	MOV		SM_DATA3,A
	MOV		A,0FFH
 	MOV		SM_DATA4,A
 	
	MOV		A,120D
 	MOV		TIME_DATA,A
 	MOV		A,5D
 	MOV		POWER_DATA,A
 	
	MOV		A,12D
	MOV		MIN_DATA,A
 K_500:
	MOV		A,00H
	MOV		PCC,A
	CLR		PC.0
	MOV		A,11111101B
	MOV		PBC,A
	SET		PB.1
	MOV		A,05H
	MOV		DELAY_RETURE,A
	JMP	DELAY_5S
RETURE_500:
	MOV		A,PA
	SUB		A,0FFH
	SZ		ACC
	JMP		G5
	JMP		EXIT_500W
  G5:
 	SDZ		MIN_DATA
 	JMP		K_500
 	JMP		TIME_JS5
 TIME_JS5:
 	MOV		A,12D
	MOV		MIN_DATA,A
 	SDZ		TIME_DATA
 	JMP		K_500
 EXIT_500W:
 	MOV		A,0EEH
	MOV		POWER_DATA,A
	JMP		W_END
;-----------------------------------------------------------------
;1000w  PC.0始终输出0,pb.1始终输出1
POWER_1000W:
 	MOV		A,00010001B
 	MOV		SM_DATA1,A
	MOV		A,00010001B
 	MOV		SM_DATA2,A
	MOV		A,00010001B
 	MOV		SM_DATA3,A
	MOV		A,11010111B
 	MOV		SM_DATA4,A
 	
	MOV		A,120D
 	MOV		TIME_DATA,A
 	MOV		A,10D
 	MOV		POWER_DATA,A
 	
	MOV		A,12D
	MOV		MIN_DATA,A
 K_1000:
	MOV		A,00H
	MOV		PCC,A
	SET		PC.0
	MOV		A,11111101B
	MOV		PBC,A
	CLR		PB.1
	MOV		A,06H
	MOV		DELAY_RETURE,A
	JMP	DELAY_5S
RETURE_1000:
	MOV		A,PA
	SUB		A,0FFH
	SZ		ACC
	JMP		G10
	JMP		EXIT_1000W
  G10:
 	SDZ		MIN_DATA
 	JMP		K_1000
 	MOV		A,12D
	MOV		MIN_DATA,A
 	SDZ		TIME_DATA
 	JMP		K_1000
 EXIT_1000W:
 	MOV		A,0EEH
	MOV		POWER_DATA,A
	JMP		W_END
;-----------------------------------------------------------------
;1300w  PC.0始终输出1,pb.1以35s输出为1,35s输出为0,规律循环输出
POWER_1300W:
 	MOV		A,00010001B
 	MOV		SM_DATA1,A
	MOV		A,00010001B
 	MOV		SM_DATA2,A
	MOV		A,10000101B
 	MOV		SM_DATA3,A
	MOV		A,11010111B
 	MOV		SM_DATA4,A
 	
	MOV		A,120D
 	MOV		TIME_DATA,A
 	MOV		A,1300D
 	MOV		POWER_DATA,A
 	
	MOV		A,12D
	MOV		MIN_DATA,A
	MOV		A,7D
	MOV		POWER_ON,A
 K_1300:
	MOV		A,7D
	MOV		POWER_OFF,A
	MOV		A,00H
	MOV		PCC,A
	SET		PC.0
	MOV		A,11111101B
	MOV		PBC,A
 ON_1300:
	SET		PB.1
	MOV		A,07H
	MOV		DELAY_RETURE,A
	JMP	DELAY_5S
RETURE_1300:
	MOV		A,PA
	SUB		A,0FFH
	SZ		ACC
	JMP		G13
	JMP		EXIT_1300W
  G13:
 	SDZ		MIN_DATA
 	JMP		O_1300
 	JMP		TIME_JS13
 O_1300:
 	SDZ		POWER_ON  ;POWER_ON=7
 	JMP		ON_1300
 	MOV		A,7D
 	MOV		POWER_ON,A
 OFF_1300:	
	CLR		PB.1
	MOV		A,08H
	MOV		DELAY_RETURE,A
	JMP	DELAY_5S
RETURE_1300_2:
	MOV		A,PA
	SUB		A,0FFH
	SZ		ACC
	JMP		G13_2
	JMP		EXIT_1300W
  G13_2:
	SDZ		MIN_DATA
	JMP		F_1300
	JMP		JS13
 F_1300:	
	SDZ		POWER_OFF
	JMP		OFF_1300
	JMP		K_1300
 TIME_JS13:
 	MOV		A,12D
	MOV		MIN_DATA,A
 	SDZ		TIME_DATA
 	JMP		OFF_1300
 	JMP		EXIT_1300W
 JS13:
 	MOV		A,12D
 	MOV		MIN_DATA,A
 	SDZ		TIME_DATA
 	JMP		F_1300
 EXIT_1300W:
 	MOV		A,0EEH
	MOV		POWER_DATA,A
	JMP		W_END
;-----------------------------------------------------------------
;1600w  PC.0始终输出1,pb.1始终输出1
POWER_1600W:
 	MOV		A,00010001B
 	MOV		SM_DATA1,A
	MOV		A,00010001B
 	MOV		SM_DATA2,A
	MOV		A,00001001B
 	MOV		SM_DATA3,A
	MOV		A,11010111B
 	MOV		SM_DATA4,A
 	
	MOV		A,60D
 	MOV		TIME_DATA,A
 	MOV		A,16D
 	MOV		POWER_DATA,A
 	
	MOV		A,12D
	MOV		MIN_DATA,A
 K_1600:
	MOV		A,00H
	MOV		PCC,A
	SET		PC.0
	MOV		A,11111101B
	MOV		PBC,A
	SET		PB.1

⌨️ 快捷键说明

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