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

📄 display.lst

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

⌨️ 快捷键说明

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