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

📄 www8051.asm

📁 web51的开发库
💻 ASM
字号:
.nolist.include	"../../include/param.inc".include	"../../include/8019.inc".list.if (MAGIC ^ VERSION)    .print "Invalid ACTIVESTACK/DUALSTACK/SERIAL setings"    .err.endif.include	"ether.inc".include	"ip.inc"; "http"	.global	STACK1MODE	.equ	STACK1MODE, NORESENDMODE	.global	ETHRETRY1	.equ	ETHRETRY1,  5*2		; timeout = 2 s	.global PORT1			; local port	.equ	PORT1, 80	.text	.global open_stack1	.global process_stack1	.global close_stack1open_stack1:	ljmp	open_httpprocess_stack1:	ljmp	httpclose_stack1:	ret	.rdata.global	data_addr.global	data_len.global	unwrited.global	mac_gateway.global	state80data_addr:	.ds	1	;start of data in TCP packetdata_len:	.ds	1	;length of data in TCP packetunwrited:	.ds	1	;unwrited data lengthmac_gateway:	.ds	3state80:	.ds.b	1;;PCODE DATA.global	chkacc, chklen, chkaddr.global	pcodeMSB, pcodeLSBchkacc:		.ds	1chklen:		.ds	1chkaddr:	.ds	1pcodeMSB:	.ds.b	1pcodeLSB:	.ds.b	1.global	LEDmodeLEDmode:	.ds.b	1flashtimer:	.ds.b	1;;#########################################################;  Main Loop;#########################################################;	.section fast, #alloc;*************************************************************	mov	a,LEDmode	jb	Acc.1,nosetL0	;Flash LED0	mov	C,Acc.0	cpl	C	mov	LED0,CnosetL0:	jb	Acc.3,nosetL1	;Flash LED1	mov	C,Acc.2	cpl	C	mov	LED1,CnosetL1:	.section slow, #alloc;*************************************************************;~50 ms loop	dec	flashtimer	setb	LED0		;enable readout keyboard	setb	LED1;unpack packed bit array	mov	a,LEDmode	anl	a,#0b00000011	;LED0	mov	R4,a	mov	a,LEDmode	anl	a,#0b00001100	;LED1	mov	R5,a	mov	a,LEDmode	anl	a,#0b00110000	;KBD0	mov	R6,a	mov	a,LEDmode	anl	a,#0b11000000	;KBD1	mov	R7,a	mov	C,LED1	mov	Acc.5,C	cjne	a,#0b10000000,NCH1	;test KBD1 change 1->0	mov	R7,#0b00000000	mov	a,R5	add	a,#0b00000100	jb	P,no11L1		;jmp if 00000100 or 00001000	clr	a			;00001100 -> 00000000no11L1:	mov	R5,a	sjmp	tstL0NCH1:	rl	a	anl	a,#0b11000000	mov	R7,atstL0:	mov	a,R6	mov	C,LED0	mov	Acc.3,C	cjne	a,#0b00100000,NCH0	;test KBD1 change 1->0	mov	R6,#0b00000000	mov	a,R4	add	a,#0b00000001	jb	P,no11L0		;jmp if 00000001 or 00000010	clr	a			;00000011 -> 00000000no11L0:	mov	R4,a	sjmp	packarrNCH0:	rl	a	anl	a,#0b00110000	mov	R6,apackarr:mov	a,R4	orl	a,R5	orl	a,R6	orl	a,R7	mov	LEDmode,a	jnb	Acc.1,noFl0	;Flash LED0	mov	a,flashtimer	mov	C,Acc.4	mov	LED0,C	mov	a,LEDmodenoFl0:		jnb	Acc.3,noFl1	;Flash LED1	mov	a,flashtimer	mov	C,Acc.4	mov	LED1,CnoFl1:	.section reset_device, #alloc;*************************************************************	;; END

⌨️ 快捷键说明

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