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

📄 inductioncooker050524ver2.lst

📁 应用松翰母体写的一款电磁炉
💻 LST
📖 第 1 页 / 共 5 页
字号:
   268  00004B             	
   269  E 000000C0         	ADCvalue6L	equ	0c0h
   270  E 00000014         	ADCvalue6M	equ	14h	    
   271  E 0000006C         	ADCvalue6H    	equ	6ch	;1900w
   272  00004B             
   273  00004B             /*	
   274  00004B             	ADCvalue5L	equ	80h
   275  00004B             	ADCvalue5M	equ	0a3h	
   276  00004B             	ADCvalue5H	equ	4fh	;1400w
   277  00004B             	
   278  00004B             	ADCvalue6L	equ	0a0h
   279  00004B             	ADCvalue6M	equ	3ch	    
   280  00004B             	ADCvalue6H    	equ	69h	;1900w
   281  00004B             */
   282  00004B             ;-----
   283  00004B             ;无锅时的电流参数
   284  00004B             ;//	ADCnocookerl	equ	0c2h
   285  00004B             ;//	ADCnocookerh	equ	01h	;0.55v
   286  E 000000EB         	ADCnocookerl	equ	0ebh
   287  E 00000001         	ADCnocookerh	equ	01h	;0.60v
   288  00004B             ;-------                        
   289  00004B             ;锅底温度参数   
   290  E 00000047         	ADC40CvalueL	equ	47h
   291  E 00000001         	ADC40CvalueH	equ     01h
   292  00004B             	
   293  E 000000DB         	ADC50CvalueL	equ	0dbh
   294  E 00000001         	ADC50CvalueH	equ     01h
   295  00004B             	                
   296  E 00000087         	ADC60CvalueL	equ	87h
   297  E 00000002         	ADC60CvalueH	equ     02h
   298  00004B             	
   299  E 00000053         	ADC70CvalueL	equ	53h
   300  E 00000003         	ADC70CvalueH	equ     03h
   301  00004B             	
   302  E 00000049         	ADC80CvalueL	equ	49h
   303  E 00000004         	ADC80CvalueH	equ     04h
   304  00004B             	
   305  E 00000058         	ADC90CvalueL	equ	58h
   306  E 00000005         	ADC90CvalueH	equ     05h
   307  00004B             	
   308  E 00000076         	ADC100CvalueL	equ	76h
   309  E 00000006         	ADC100CvalueH	equ     06h
   310  00004B             	
   311  E 000000E9         	ADC104CvalueL	equ	0e9h
   312  E 00000006         	ADC104CvalueH	equ     06h
   313  00004B             	
   314  E 0000003B         	ADC107CvalueL	equ	3bh
   315  E 00000007         	ADC107CvalueH	equ     07h
   316  00004B             ;---                            
   317  00004B             ;IGBT温度参数                   
   318  00004B             ;//	ADCIGBTvalueL	equ	87h
   319  00004B             ;//	ADCIGBTvalueH	equ     02h	;IGBT过热温度点60℃
   320  00004B             ;//	ADCIGBTvalueL	equ	53h
   321  00004B             ;//	ADCIGBTvalueH	equ     03h	;IGBT过热温度点70℃
   322  E 00000049         	ADCIGBTvalueL	equ	49h
   323  E 00000004         	ADCIGBTvalueH	equ     04h	;IGBT过热温度点80℃
   324  00004B             ;----
   325  E 00000033         	uppervaluel	equ	33h
   326  E 0000000B         	uppervalueh	equ	0bh	;过压值250v/3.5v
   327  00004B             	
   328  E 00000000         	lowervaluel	equ	00h
   329  E 00000008         	lowervalueh	equ	08h	;欠压值180v/2.5v
   330  00004B             ;----
   331  E 00000093         	currentvaluel	equ	93h
   332  E 0000000C         	currentvalueh	equ	0ch	;过流值10A(1000:1~350Ω)
   333  00004B             ;----
   334  E 00000080         	hotestvaluel	equ	80h
   335  E 0000000F         	hotestvalueh	equ	0fh	;锅底温度过热值300℃
   336  00004B             ;----
   337  E 00000010         	openvaluel	equ	10h
   338  E 00000000         	openvalueh	equ	00h	;传感器开路值
   339  00004B             	
   340  E 000000EE         	shortvaluel	equ	0eeh
   341  E 0000000F         	shortvalueh	equ	0fh	;传感器短路值
   342  00004B             ;----
   343  E 00000023         	cookerpwmvalue	equ	35
   344  E 0000000F         	initpwmvalue	equ	15	
   345  00004B             ;---------------------
   346  00004B             ;segment dot
   347  E 00000030         	frieddishled	equ	seg3buf.0
   348  E 00010030         	chaffydishled	equ	seg3buf.1
   349  E 00020030         	barbecueled	equ	seg3buf.2
   350  E 00030030         	cookingled	equ	seg3buf.3
   351  E 00040030         	soupingled	equ	seg3buf.4
   352  E 00050030         	warmmilkled	equ	seg3buf.5
   353  E 00060030         	boilwaterled	equ	seg3buf.6
   354  00004B             ;----
   355  E 00000031         	keepwarmled	equ	seg4buf.0 ;120w
   356  E 00010031         	temp120Cled	equ	seg4buf.1 ;600w
   357  E 00020031         	temp160Cled	equ	seg4buf.2 ;1000w
   358  E 00030031         	temp200Cled	equ	seg4buf.3 ;1400w
   359  E 00040031         	temp270Cled	equ	seg4buf.4 ;1900w
   360  00004B             ;------------------------
   361  00004B             ;故障信息
   362  E 00000040         	Errorvalue0	equ	01000000b	;E0,电路故障
   363  E 00000079         	Errorvalue1	equ	01111001b	;E1,无锅具、材料不合、小物件
   364  E 00000024         	Errorvalue2	equ	00100100b	;E2,IGBT过热
   365  E 00000030         	Errorvalue3	equ	00110000b	;E3,过压故障 
   366  E 00000019         	Errorvalue4	equ	00011001b	;E4,欠压故障
   367  E 00000012         	Errorvalue5	equ	00010010b	;E5,温度传感器开路
   368  E 00000002         	Errorvalue6	equ	00000010b	;E6,温度传感器短路
   369  00004B             
   370  E 00000006         	Errorvalue	equ	00000110b	
   371  00004B             ;*******************************************************	
   372  00004B             ;**********************Port define**********************
   373  00004B             ;key input port row6~row0 is port2.6~port2.0
   374  00004B             ;key output port line3~lin0 is port1.6~port1.3
   375  00004B             ;-----
   376  E 000000D5         	line0		equ	p5.0
   377  E 000100D5         	line1		equ	p5.1
   378  00004B             ;-----
   379  E 000200D5         	ptfan		equ	p5.2
   380  E 000300D5         	ptpwm		equ	p5.3
   381  E 000400D5         	ptbuzzer	equ	p5.4
   382  E 000500D5         	ptcout		equ	p5.5
   383  00004B             	
   384  E 000400D4         	ptcom1		equ	p4.4
   385  E 000500D4         	ptcom2		equ	p4.5
   386  E 000600D4         	ptcom3		equ	p4.6
   387  E 000700D4         	ptcom4		equ	p4.7
   388  E 000000D5         	ptcom5		equ	p5.0
   389  E 000100D5         	ptcom6		equ	p5.1
   390  00004B             ;**************************************************
   391  00004B             ;*****************LCD字符表*************************
   392  00004B             ;**************************************************
   393  00004B             
   394  00004B             
   395  00004B             ;*********Micro define as following****************
   396  00004B             ;-----
   397  00004B             ;bank select:
   398  00004B             	bank0	macro
   399  00004B             		b0bclr	frbnks0
   400  00004B             		endm
   401  00004B             	bank1	macro
   402  00004B             		b0bset	frbnks0
   403  00004B             		endm
   404  00004B             	wdtc	macro
   405  00004B             		mov a,#0x5a
   406  00004B             		mov wdtr,a ; Clear the watchdog timer counter.
   407  00004B             		endm
   408  00004B             	notbit	macro bit
   409  00004B             		b0bts0 bit
   410  00004B             		jmp $+3
   411  00004B             		b0bset bit
   412  00004B             		jmp $+2
   413  00004B             		b0bclr bit
   414  00004B             		endm
   415  00004B             	
   416  00004B             		
   417  00004B             		
   418  00004B             		
   419  00004B             	include	main.asm
   420  00004B             ;-----------------------------------------------
   421  00004B             ;******************Program code segment*********
   422  00004B             ;-----------------------------------------------
   423  000000             .CODE
   424  000000             
   425  000000             	ORG	000h				;Code section start
   426  000000   8010      	jmp	Start				;Reset vector
   427  000001             						;Address 4 to 7 are reserved
   428  000008             	ORG	008h
   429  000008   8084      	jmp	InterruptSub			;Interrupt vector
   430  000009             
   431  000010             	ORG	010h
   432  000010             ;**************************************************
   433  000010             ;***************************************************
   434  000010             Start:
   435  000010   0000      	nop
   436  000011   0000      	nop
   437  000012   C07B      	call	Pdelay		;//Power on delay
   438  000013             ;-----	
   439  000013   7F86      	b0bts1	fnt0
   440  000014   8018      	jmp	wdtresetsub	;//watch dog reset way,no need initialize
   441  000015             ;-----	
   442  000015             TurnOnInitial:
   443  000015   C04F      	call	PortInitial	
   444  000016   C036      	call	RAMInitial
   445  000017   C05C      	call	SysInitial
   446  000018             ;-----
   447  000018             wdtresetsub:
   448  000018             ;------
   449  000018             ;------
   450  000018             ;**********************************************
   451  000018             MainLoop:
   452  000018             ;//User need write the main routine Program.
   453  000018   0000      	nop
   454  000019             	@RST_WDT		;//User can use Macro instrution  REST_WATCHDOG
   455  000019   2D5A       		   MOV  A, #0x5A
   456  00001A   2FCC      		   B0MOV  WDTR, A		   
   457  00001B   C0DC      	call	mnintgnd	;//interface between interrupt and main
   458  00001C   C0FD      	call	mnkey		;//Interface between machine and human
   459  00001D   C49E      	call	mntwinkle	;//闪烁控制
   460  00001E   C16C      	call	mnapp		;//按键、功能控制
   461  00001F   C399      	call	poweronsub	;//上电控制
   462  000020   C4E6      	call	mngetdata	;//显示数据控制
   463  000021   C475      	call	mndisplay	;//显示控制
   464  000022   C432      	call	mncontroll	;//单片机工作控制
   465  000023   C3FE      	call	mcustate	;//单片机的工作状态判定
   466  000024   C52D      	call	mndetect	;//各种参数检测
   467  000025   C029      	call	mnchecktime	;//两小时无键操作控制
   468  000026   C5F2      	call	cookercheck	;//锅具检测
   469  000027   C3DB      	call	mnintermission	;//功率在600W以下采用间歇加热控制
   470  000028   8018      	jmp	MainLoop
   471  000029             ;*****************************************************
   472  000029             ;*****************************************************
   473  000029             ;*****************************************************
   474  000029             mnchecktime:
   475  000029   7736      	b0bts0	stoprunflag
   476  00002A   8035      	jmp	mnchecktime90
   477  00002B             ;----
   478  00002B   1E38      	mov	a,flag3
   479  00002C   2A67      	and	a,#01100111b
   480  00002D   7086      	b0bts0	fz		;在煮米饭、煲汤功能下无效
   481  00002E   8035      	jmp	mnchecktime90
   482  00002F   7B36      	b0bts1	t2hflag
   483  000030   8035      	jmp	mnchecktime90
   484  000031             ;----
   485  000031   4F36      	bset	stoprunflag	;两小时无操作,自动关机
   486  000032   4E37      	bset	buzzerflag
   487  000033             	mov_	buzzercnt,#10	;叫5声
   488  000033   2D0A      	mov	a, #10
   489  000034   1F13      	mov	buzzercnt, a
   490  000035             ;-----
   491  000035             mnchecktime90:
   492  000035   0E00      	ret
   493  000036             	include	initialize.asm
   494  000036             ;**********************************************
   495  000036             ;Name	:RAMInitial
   496  000036             ;Function:clr bank0~bank1
   497  000036             ;Input  :
   498  000036             ;Output	:
   499  000036             ;Register Used:
   500  000036             ;***********************************************
   501  000036             RAMInitial:
   502  000036   2B84      	clr	y
   503  000037   2D7F      	mov	a,#7fh
   504  000038   2F83      	b0mov	z,a
   505  000039             Clrbank0:
   506  000039   2BE7      	clr	@YZ			;Clear @YZ content
   507  00003A   2683      	decms	Z  			;z = z - 1 , skip next if z=0
   508  00003B   8039      	jmp	Clrbank0
   509  00003C   2BE7      	clr 	@YZ			;Clear address 0x00
   510  00003D             ;-----
   511  00003D             ;preset some constant
   512  00003D             
   513  00003D             	mov_	timer10ms,#20		;10ms
   514  00003D   2D14      	mov	a, #20
   515  00003E   1F02      	mov	timer10ms, a
   516  00003F             	mov_	timer200ms,#20		;200ms
   517  00003F   2D14      	mov	a, #20
   518  000040   1F04      	mov	timer200ms, a
   519  000041             	mov_	timer1s,#100		;1s
   520  000041   2D64      	mov	a, #100
   521  000042   1F05      	mov	timer1s, a
   522  000043             	mov_	timer1m,#60		;1m
   523  000043   2D3C      	mov	a, #60
   524  000044   1F06      	mov	timer1m, a
   525  000045             	mov_	timer1h,#60		;1h
   526  000045   2D3C      	mov	a, #60
   527  000046   1F07      	mov	timer1h, a
   528  000047             	mov_	displaytimer,#2
   529  000047   2D02      	mov	a, #2
   530  000048   1F0C      	mov	displaytimer, a
   531  000049             	mov_	combuf,#11111111b	;set all com high level
   532  000049   2DFF      	mov	a, #11111111b
   533  00004A   1F32      	mov	combuf, a
   534  00004B   2D32      	mov	a,#50			;set led frequent=0.5s

⌨️ 快捷键说明

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