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

📄 define.asm

📁 应用松翰母体写的一款电磁炉
💻 ASM
字号:
;********************************************************
;  COMPANY      : CHOMP					*
;  PROJECT NAME : 					*
;  Author	: carman				*
;  Original	:					*
;  VERSION	: V0.0			      		*
;  START DATE	: 2005.04.13				*
;  COMPLISH DATE: 2005.					*
;  Modify	: 2005.					*
;  BODY		: SN8P2708				*
;  COMPILER	: ICE2k					*
;  CRYSTAL	: 4MHz					*
;  Modify function:					*
; *******************************************************

;//Set ICE emulation mode.Pay attention to it be reset after emulation.
;//ICE_MODE	EQU	1
;// Please set ICE_MODE equ 0  and recompiler  before write the code into IC body
ICE_MODE	EQU	0

chip	sn8p2715
//{{SONIX_CODE_OPTION
	.Code_Option	LVD		LVD_M		; 2.0V Reset Enable LVD24 bit of PFLAG for 2.4V Low Voltage Indicator
	.Code_Option	RST_P0.3	P0.3
	.Code_Option	Watch_Dog	Enable		; Normal mode: Enable Watchdog Green and Sleep mode: Stop Watchdog
	.Code_Option	High_Clk	4M_X'tal	; Crystal/Resonator: 2Mhz~10Mhz
	.Code_Option	Fcpu		#2     ; Fcpu = Fosc/4
	.Code_Option	Security	Enable
	.Code_Option	Noise_Filter	Enable
//}}SONIX_CODE_OPTION

.nolist							; do not list the macro file

	INCLUDESTD	MACRO1.H
	INCLUDESTD	MACRO2.H
	INCLUDESTD	MACRO3.H
	INCLUDESTD	SN8P2X_ICE.H

;*******************************************
.list
;-----------------------------------------------
.DATA
;bank0
	org	0h			;Bank 0 data section start from RAM address 0x000
	AccBuf		ds	1	;Accumulater buffer
	PflagBuf	ds	1	;PFLAG buffer
	timer1s		ds	1
	timer1m		ds	1
	timer2h		ds	1
	timerbuf	ds	1	;用于定时处理,00~99分钟
	buzfrequent	ds	1	;蜂鸣器的频率设定
	loadfrequent	ds	1	;蜂鸣器的载波频率设定
	ledfrequent	ds	1	;指示灯的闪烁频率设定
	
	keyinbuf	ds	1
	keychkbuf	ds	1
	keycvtbuf	ds	1
	keyoldbuf	ds	1
	Keychat		ds	1
	aplcode		ds	1
;----
	ADCvolbufl	ds	1
	ADCvolbufh	ds	1	;火力控制值
	ADCcurbufl	ds	1
	ADCcurbufh	ds	1	;电流控制值
	ADCtempbufl	ds	1
	ADCtempbufh	ds	1	;温度控制值
	ADCvaluel	ds	1	
	ADCvalueh	ds	1	;A/D转换结果值
	ADCtemp		ds	1
;----
	pwmpulsebuf	ds	1
	pwmpulsetemp	ds	1
;----
	stepbuf		ds	1	;档位控制
;----
	seg1buf		ds	1
	seg2buf		ds	1
	seg3buf		ds	1
	seg4buf		ds	1
	combuf		ds	1
	

	Flag1		ds	1
	flag2		ds	1
	flag3		ds	1
	flag4		ds	1
	flag5		ds	1
;---------------------------------------------
	temp0		ds	1
	temp1		ds	1
	temp2		ds	1
	temp3		ds	1
	temp4		ds	1
	temp5		ds	1	
	temp6		ds	1
	temp7		ds	1
;-----	
     	var1		ds	1
	var2		ds	1
	var3		ds	1	
	var4		ds	1	
	
;***************************************************	
;*************** Define flag ***********************
	t10msflag	equ	Flag1.0
	t1sflag		equ	Flag1.1
	t1mflag		equ	flag1.2
	t2hflag		equ	Flag1.3
	keystatflag	equ	Flag1.4
	refurbishflag	equ	flag1.5	;刷新数码管显示标志	
	overtempflag	equ	flag1.6	;超温标志
	stoprunflag	equ	flag1.7	;停止工作标志
;----
	volADCflag	equ	flag2.0	;过压、欠压检测
	curADCflag	equ	flag2.1	;过流检测
	IgbtADCflag	equ	flag2.2	;IGBT过温检测
	cookerADCflag 	equ	flag2.3	;锅底温度检测
	cookerflag	equ	flag2.4	;无锅、尺寸不合、小物件检测
	operateflag	equ	flag2.5	;开始工作标志
	buzzerflag	equ	flag2.6	;蜂鸣器响标志
	fanrunflag	equ	flag2.7	;风扇运转标志
;----
	frieddishflag	equ	flag3.0	;炒菜标志
	chaffydishflag	equ	flag3.1	;火锅标志
	barbecueflag	equ	flag3.2	;烧烤标志
	cookingflag	equ	flag3.3	;煮饭标志 
	soupingflag	equ	flag3.4	;煲汤标志 
	warmmilkflag	equ	flag3.5	;热奶标志 
	boilwaterflag	equ	flag3.6	;煮水标志
	keepwarmflag	equ	flag3.7	;保温标志
;----
	malfunctionflag	equ	flag4.0	;故障标志
	poweronflag	equ	flag4.1	;初始通电标志
	ADCstartflag	equ	flag4.2	;A/D转换开始标志
	ADCendflag	equ	flag4.3	;A/D转换结束标志
	changestaflag	equ	flag4.4	;状态切换标志	
	settimeflag	equ	flag4.5	;定时标志
	timecomeflag	equ	flag4.6	;定时到标志
	Igbtstartupflag	equ	flag4.7	;IGBT启动标志	
;----
	buzfrequentflag	equ	flag5.0	;蜂鸣器的频率标志
	parameterflag	equ	flag5.1	;获取参数标志
	largeflag	equ	flag5.2	;
	smallflag	equ	flag5.3	;
	loadfrequentflag equ	flag5.4	;蜂鸣器的载波频率
	startflag	equ	flag5.5	;状态标志	ledfrequentflag	equ	flag5.6 ;指示灯的频率标志
;----
	lineflag	equ	keycvtbuf.7	;=0:line0 上按键,=1:line1 上按键
;----
	com1flag	equ	combuf.4
	com2flag	equ	combuf.5
	com3flag	equ	combuf.6
	com4flag	equ	combuf.7
;****************************************************
;*******************constant define******************
;-------
;火力参数
/*
	ADC120WvalueL	equ	00h	
	ADC120WvalueH	equ     00h
	                      
	ADC300WvalueL	equ	00h
	ADC300WvalueH	equ     00h
	                        
	ADC600WvalueL	equ	00h
	ADC600WvalueH	equ     00h
	                        
	ADC800WvalueL	equ	00h
	ADC800WvalueH	equ     00h
	                        
	ADC1000WvalueL	equ	00h
	ADC1000WvalueH	equ     00h
	                        
	ADC1200WvalueL	equ	00h
	ADC1200WvalueH	equ     00h
	                        
	ADC1400WvalueL	equ	00h
	ADC1400WvalueH	equ     00h
	                        
	ADC1600WvalueL	equ	00h
	ADC1600WvalueH	equ     00h
	                        
	ADC1900WvalueL	equ	00h
	ADC1900WvalueH	equ     00h
;-------                        
;锅底温度参数                   
	ADC120CvalueL	equ	00h
	ADC120CvalueH	equ     00h
	                        
	ADC160CvalueL	equ	00h
	ADC160CvalueH	equ     00h
	                        
	ADC200CvalueL	equ	00h
	ADC200CvalueH	equ     00h
	                        
	ADC270CvalueL	equ	00h
	ADC270CvalueH	equ     00h
*/
;---                            
;IGBT温度参数                   
	ADCIGBTvalueL	equ	00h
	ADCIGBTvalueH	equ     00h
;-------                        
;参数预设值                     
;火力                           
	Preset120W	equ	00h
	Preset600W	equ     00h
	Preset1000W	equ     00h
	Preset1400W	equ     00h
	Preset1900W	equ     00h
;----                           
;温度                           
	Preset120C	equ     00h
	Preset160C	equ     00h
	Preset200C	equ     00h
	Preset270C	equ     00h
;----
	uppervaluel	equ	00h
	uppervalueh	equ	00h
	
	lowervaluel	equ	00h
	lowervalueh	equ	00h
;----
	currentvaluel	equ	00h
	currentvalueh	equ	00h
;----
	hotestvaluel	equ	00h
	hotestvalueh	equ	00h
;----
	openvaluel	equ	00h
	openvalueh	equ	00h
	
	shortvaluel	equ	00h
	shortvalueh	equ	00h
;---------------------
;segment dot
	frieddishled	equ	seg3buf.0
	chaffydishled	equ	seg3buf.1
	barbecueled	equ	seg3buf.2
	cookingled	equ	seg3buf.3
	soupingled	equ	seg3buf.4
	warmmilkled	equ	seg3buf.5
	boilwaterled	equ	seg3buf.6
;----
	keepwarmled	equ	seg4buf.0 ;120w
	temp120Cled	equ	seg4buf.1 ;600w
	temp160Cled	equ	seg4buf.2 ;1000w
	temp200Cled	equ	seg4buf.3 ;1400w
	temp270Cled	equ	seg4buf.4 ;1900w
;------------------------
;故障信息
	Errorvalue0	equ	3Fh	;E0,电路故障
	Errorvalue1	equ	06h	;E1,无锅具、材料不合、小物件
	Errorvalue2	equ	5Bh	;E2,IGBT过热
	Errorvalue3	equ	4Fh	;E3,过压故障 
	Errorvalue4	equ	66h	;E4,欠压故障
	Errorvalue5	equ	6Dh	;E5,温度传感器开路
	Errorvalue6	equ	7Dh	;E6,温度传感器短路
	
	Errorvalue	equ	79h	
;*******************************************************	
;**********************Port define**********************
;key input port row6~row0 is port2.6~port2.0
;key output port line3~lin0 is port1.6~port1.3
;-----
	line0		equ	p5.0
	line1		equ	p5.1
;-----
	ptfan		equ	p5.2
	ptpwm		equ	p5.3
	ptbuzzer	equ	p5.4
	ptcout		equ	p5.5
	
;**************************************************
;*****************LCD字符表*************************
;**************************************************


;*********Micro define as following****************
;-----
;bank select:
	bank0	macro
		b0bclr	frbnks0
		endm
	bank1	macro
		b0bset	frbnks0
		endm
	wdtc	macro
		mov a,#0x5a
		mov wdtr,a ; Clear the watchdog timer counter.
		endm
	notbit	macro bit
		b0bts0 bit
		jmp $+3
		b0bset bit
		jmp $+2
		b0bclr bit
		endm
	
		
		
		

⌨️ 快捷键说明

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