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

📄 display.lst

📁 应用松翰母体写的一款电磁炉
💻 LST
📖 第 1 页 / 共 2 页
字号:
   192  000000             	movc
   193  000000             	mov	seg2buf,a
   194  000000             ;----
   195  000000             ;求得十位值
   196  000000             	b0mov	y,#font_tbl$m
   197  000000             	b0mov	z,#font_tbl$l
   198  000000             	swap	timerbuf
   199  000000             	and	a,#0fh
   200  000000             	b0bts0	fz
   201  000000             	jmp	hidedisplay
   202  000000             	add	z,a
   203  000000             	mov	a,#0
   204  000000             	adc	y,a
   205  000000             	movc
   206  000000             	mov	seg1buf,a
   207  000000             	ret
   208  000000             ;-----
   209  000000             hidedisplay:
   210  000000             	mov_	seg1buf,#0ffh
   211  000000             	ret
   212  000000             ;------------------
   213  000000             mngetdata80:
   214  000000             ;-----
   215  000000             	b0bts0	firstsettimeflag
   216  000000             	jmp	mngetdata50
   217  000000             	mov	a,#0ffh
   218  000000             	mov	seg1buf,a
   219  000000             	mov	seg2buf,a
   220  000000             	mov	seg3buf,a
   221  000000             	mov	seg4buf,a
   222  000000             	bset	timecomeflag
   223  000000             	bclr	timekeyflag
   224  000000             ;//	bclr	ptcout		;close IGBT
   225  000000             	bclr	fpwm1out
   226  000000             	bclr	ftc1enb		;stop t1 count
   227  000000             	bclr	ptpwm
   228  000000             	ret
   229  000000             ;-----
   230  000000             mngetdata50:
   231  000000             	bclr	timekeyflag
   232  000000             	bclr	firstsettimeflag
   233  000000             	bset	timecomeflag
   234  000000             ;----
   235  000000             mngetdata90:
   236  000000             	ret
   237  000000             	
   238  000000             /*
   239  000000             ;********************************************
   240  000000             ;name:conv_hex_bcd
   241  000000             ;function:小于10000的十六进制转换BCD码(要作10000以上的加个条件判断)
   242  000000             ;input:	hexh,hexl
   243  000000             ;output:bcdh,bcdl
   244  000000             ;register:
   245  000000             ;********************************************
   246  000000             conv_hex_bcd:
   247  000000             	clr	bcdl
   248  000000             	clr	bcdh
   249  000000             gethighnibble:
   250  000000             	mov	a,hexl
   251  000000             	sub	a,#100
   252  000000             	mov	hexl,a
   253  000000             	b0bts1	fc
   254  000000             	jmp	getmidnibble10
   255  000000             ;----
   256  000000             highnibbleinc:	
   257  000000             	mov	a,#1
   258  000000             	add	bcdh,a
   259  000000             	mov	a,bcdh
   260  000000             	and	a,#0fh
   261  000000             	sub	a,#0ah
   262  000000             	b0bts1	fc
   263  000000             	jmp	gethighnibble
   264  000000             	mov	a,#06h
   265  000000             	add	bcdh,a
   266  000000             	jmp	gethighnibble
   267  000000             ;----
   268  000000             getmidnibble10:
   269  000000             	mov	a,hexh
   270  000000             	sub	a,#1
   271  000000             	mov	hexh,a
   272  000000             	b0bts1	fc
   273  000000             	jmp	getmidnibble00
   274  000000             	jmp	highnibbleinc
   275  000000             ;----
   276  000000             getmidnibble00:
   277  000000             	mov	a,#100
   278  000000             	add	hexl,a
   279  000000             getmidnibble:
   280  000000             	mov	a,hexl
   281  000000             	sub	a,#10
   282  000000             	mov	hexl,a
   283  000000             	b0bts1	fc
   284  000000             	jmp	getlownibble00
   285  000000             	incms	bcdl
   286  000000             	nop
   287  000000             	jmp	getmidnibble
   288  000000             ;----
   289  000000             getlownibble00:
   290  000000             	add	a,#10
   291  000000             	swapm	bcdl
   292  000000             	or	bcdl,a
   293  000000             	ret
   294  000000             ;********************************************
   295  000000             ;name:conv_bcd_hex
   296  000000             ;function:小于10000的BCD码转换为十六进制
   297  000000             ;input:	bcdl,bcdh
   298  000000             ;output:hexl,hexh
   299  000000             ;register:var3,var4,var5,var6,var7,var8
   300  000000             ;********************************************
   301  000000             conv_bcd_hex:
   302  000000             	clr	var3
   303  000000             	clr	var4
   304  000000             	clr	var5
   305  000000             	clr	var6
   306  000000             ;----
   307  000000             ;x1000
   308  000000             	swap	bcdh
   309  000000             	and	a,#0fh
   310  000000             	mov	var7,a
   311  000000             	mov_	var8,#8	
   312  000000             	mov_	var3,#0e8h
   313  000000             	mov_	var4,#03h
   314  000000             	call	mulsub		;two byte multiply
   315  000000             	mov_	hexl,var5
   316  000000             	mov_	hexh,var6
   317  000000             ;----
   318  000000             ;x100
   319  000000             	clr	var3
   320  000000             	clr	var4
   321  000000             	clr	var5
   322  000000             	clr	var6
   323  000000             	mov	a,bcdh
   324  000000             	and	a,#0fh
   325  000000             	mov	var7,a
   326  000000             	mov_	var8,#8
   327  000000             	mov	a,#100
   328  000000             	mov	var3,a
   329  000000             	call	mulsub		;two byte multiply
   330  000000             	mov	a,var5
   331  000000             	add	hexl,a
   332  000000             	mov	a,var6
   333  000000             	adc	hexh,a
   334  000000             ;----
   335  000000             ;x10
   336  000000             	clr	var3
   337  000000             	clr	var4
   338  000000             	clr	var5
   339  000000             	clr	var6
   340  000000             	swap	bcdl
   341  000000             	and	a,#0fh
   342  000000             	mov	var7,a
   343  000000             	mov_	var8,#8	
   344  000000             	mov	a,#10
   345  000000             	mov	var3,a
   346  000000             	call	mulsub		;two byte multiply
   347  000000             	mov	a,var5
   348  000000             	add	hexl,a
   349  000000             	mov	a,var6
   350  000000             	adc	hexh,a
   351  000000             ;----
   352  000000             ;x1
   353  000000             	mov	a,bcdl
   354  000000             	and	a,#0fh
   355  000000             	add	hexl,a
   356  000000             	mov	a,#0
   357  000000             	adc	hexh,a	
   358  000000             	ret
   359  000000             ;**********************************************
   360  000000             ;两个BYTE的数相乘
   361  000000             mulsub:
   362  000000             	bclr	fc
   363  000000             	rrcm	var7
   364  000000             	b0bts1	fc
   365  000000             	jmp	deccount
   366  000000             	mov	a,var3
   367  000000             	add	var5,a
   368  000000             	mov	a,var4
   369  000000             	adc	var6,a
   370  000000             ;----
   371  000000             deccount:
   372  000000             	decms	var8
   373  000000             	jmp	adjustposition
   374  000000             	ret
   375  000000             ;----
   376  000000             adjustposition:	
   377  000000             	bclr	fc
   378  000000             	rlcm	var3
   379  000000             	rlcm	var4
   380  000000             	jmp	mulsub	
   381  000000             */	

⌨️ 快捷键说明

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