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

📄 splc501user.asm

📁 用凌阳61单片机实现正弦信号的产生
💻 ASM
📖 第 1 页 / 共 5 页
字号:
.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB5-_LCD501_Line
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "Offset_x:1",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "Offset_y:1",128,0,0,1',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "Offset_k:1",128,0,0,2',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "Err_d:1",128,0,0,3',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE5-_LCD501_Line
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME14-_LCD501_Line
	.dw 0x0d,0x0a
.code
LME14:
.code
.debug
	.dw '.stabs "LCD_PaintRed_Dot:F19",36,0,0,',0,0,offset _LCD_PaintRed_Dot,seg _LCD_PaintRed_Dot,0x0d,0x0a
.CODE
.public _LCD_PaintRed_Dot
_LCD_PaintRed_Dot:	.proc
.debug
	.dw '.stabn 0x44,0,458,',0,0
	.dd LM200-_LCD_PaintRed_Dot
	.dw 0x0d,0x0a
.code
LM200:
	// total=1, vars=1
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=1
	bp=sp+1

	R1=BP+4
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,459,',0,0
	.dd LM201-_LCD_PaintRed_Dot
	.dw 0x0d,0x0a
.code
LM201:
	R1=[BP]	// QImode move
	R3=[BP]	// QImode move
	R2=R3+4
	R4=R2	// QImode move
	R1=[R4]	// QImode move
	CMP R1,0	// QImode test
	NSJNG L105	//QImode LE
.debug
	.dw '.stabn 0x44,0,461,',0,0
	.dd LM202-_LCD_PaintRed_Dot
	.dw 0x0d,0x0a
.code
LM202:
	R2=[BP]	// QImode move
	R2=[BP]	// QImode move
	R1=R2+1
	R3=[BP]	// QImode move
	R3=[BP]	// QImode move
	R2=R3+3
	R4=R1	// QImode move
	R3=[R4]	// QImode move
	R1=R3	// QImode move
	R3=R2	// QImode move
	R1 = R1 + [R3]	//addqi3
	[SP--]=R1	// QImode move
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+2
	R2=[BP]	// QImode move
	R3=[R2]	// QImode move
	R2=R3	// QImode move
	R3=R1	// QImode move
	R2-=[R3]	// subqi3_r0R R2=R2-[R3]
	[SP--]=R2	// QImode move
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+1
	R3=[BP]	// QImode move
	R3=[BP]	// QImode move
	R2=R3+3
	R4=R1	// QImode move
	R3=[R4]	// QImode move
	R1=R3	// QImode move
	R3=R2	// QImode move
	R1 = R1 + [R3]	//addqi3
	[SP--]=R1	// QImode move
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+2
	R2=[BP]	// QImode move
	R3=[R2]	// QImode move
	R2=R3	// QImode move
	R3=R1	// QImode move
	R2 = R2 + [R3]	//addqi3
	[SP--]=R2	// QImode move
	call _LCD501_Line	// call without return value
	SP = SP + 4	//SP
.debug
	.dw '.stabn 0x44,0,462,',0,0
	.dd LM203-_LCD_PaintRed_Dot
	.dw 0x0d,0x0a
.code
LM203:
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+1
	R3=[BP]	// QImode move
	R3=[BP]	// QImode move
	R2=R3+3
	R4=R1	// QImode move
	R3=[R4]	// QImode move
	R1=R3	// QImode move
	R3=R2	// QImode move
	R1-=[R3]	// subqi3_r0R R1=R1-[R3]
	[SP--]=R1	// QImode move
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+2
	R2=[BP]	// QImode move
	R3=[R2]	// QImode move
	R2=R3	// QImode move
	R3=R1	// QImode move
	R2-=[R3]	// subqi3_r0R R2=R2-[R3]
	[SP--]=R2	// QImode move
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+1
	R3=[BP]	// QImode move
	R3=[BP]	// QImode move
	R2=R3+3
	R4=R1	// QImode move
	R3=[R4]	// QImode move
	R1=R3	// QImode move
	R3=R2	// QImode move
	R1-=[R3]	// subqi3_r0R R1=R1-[R3]
	[SP--]=R1	// QImode move
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+2
	R2=[BP]	// QImode move
	R3=[R2]	// QImode move
	R2=R3	// QImode move
	R3=R1	// QImode move
	R2 = R2 + [R3]	//addqi3
	[SP--]=R2	// QImode move
	call _LCD501_Line	// call without return value
	SP = SP + 4	//SP
.debug
	.dw '.stabn 0x44,0,463,',0,0
	.dd LM204-_LCD_PaintRed_Dot
	.dw 0x0d,0x0a
.code
LM204:
	pc=L106	// Indirect jump
L105:
.debug
	.dw '.stabn 0x44,0,466,',0,0
	.dd LM205-_LCD_PaintRed_Dot
	.dw 0x0d,0x0a
.code
LM205:
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+1
	R3=[BP]	// QImode move
	R3=[BP]	// QImode move
	R2=R3+3
	R4=R1	// QImode move
	R3=[R4]	// QImode move
	R1=R3	// QImode move
	R3=R2	// QImode move
	R1 = R1 + [R3]	//addqi3
	[SP--]=R1	// QImode move
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+2
	R2=[BP]	// QImode move
	R3=[R2]	// QImode move
	R2=R3	// QImode move
	R3=R1	// QImode move
	R2 = R2 + [R3]	//addqi3
	[SP--]=R2	// QImode move
	call _LCD501_PutPixel	// call without return value
	SP = SP + 2	//SP
.debug
	.dw '.stabn 0x44,0,467,',0,0
	.dd LM206-_LCD_PaintRed_Dot
	.dw 0x0d,0x0a
.code
LM206:
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+1
	R3=[BP]	// QImode move
	R3=[BP]	// QImode move
	R2=R3+3
	R4=R1	// QImode move
	R3=[R4]	// QImode move
	R1=R3	// QImode move
	R3=R2	// QImode move
	R1 = R1 + [R3]	//addqi3
	[SP--]=R1	// QImode move
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+2
	R2=[BP]	// QImode move
	R3=[R2]	// QImode move
	R2=R3	// QImode move
	R3=R1	// QImode move
	R2-=[R3]	// subqi3_r0R R2=R2-[R3]
	[SP--]=R2	// QImode move
	call _LCD501_PutPixel	// call without return value
	SP = SP + 2	//SP
.debug
	.dw '.stabn 0x44,0,468,',0,0
	.dd LM207-_LCD_PaintRed_Dot
	.dw 0x0d,0x0a
.code
LM207:
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+1
	R3=[BP]	// QImode move
	R3=[BP]	// QImode move
	R2=R3+3
	R4=R1	// QImode move
	R3=[R4]	// QImode move
	R1=R3	// QImode move
	R3=R2	// QImode move
	R1-=[R3]	// subqi3_r0R R1=R1-[R3]
	[SP--]=R1	// QImode move
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+2
	R2=[BP]	// QImode move
	R3=[R2]	// QImode move
	R2=R3	// QImode move
	R3=R1	// QImode move
	R2 = R2 + [R3]	//addqi3
	[SP--]=R2	// QImode move
	call _LCD501_PutPixel	// call without return value
	SP = SP + 2	//SP
.debug
	.dw '.stabn 0x44,0,469,',0,0
	.dd LM208-_LCD_PaintRed_Dot
	.dw 0x0d,0x0a
.code
LM208:
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+1
	R3=[BP]	// QImode move
	R3=[BP]	// QImode move
	R2=R3+3
	R4=R1	// QImode move
	R3=[R4]	// QImode move
	R1=R3	// QImode move
	R3=R2	// QImode move
	R1-=[R3]	// subqi3_r0R R1=R1-[R3]
	[SP--]=R1	// QImode move
	R2=[BP]	// QImode move
	R4=[BP]	// QImode move
	R1=R4+2
	R2=[BP]	// QImode move
	R3=[R2]	// QImode move
	R2=R3	// QImode move
	R3=R1	// QImode move
	R2-=[R3]	// subqi3_r0R R2=R2-[R3]
	[SP--]=R2	// QImode move
	call _LCD501_PutPixel	// call without return value
	SP = SP + 2	//SP
L106:
.debug
	.dw '.stabn 0x44,0,471,',0,0
	.dd LM209-_LCD_PaintRed_Dot
	.dw 0x0d,0x0a
.code
LM209:
.debug
	.dw '.stabn 0x44,0,471,',0,0
	.dd LM210-_LCD_PaintRed_Dot
	.dw 0x0d,0x0a
.code
LM210:
L104:

	sp+=1
	pop bp from [sp]
	retf
	.endp	// end of LCD_PaintRed_Dot

.debug
	.dw '.stabs "x:p1",160,0,0,4',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "y:p1",160,0,0,5',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "a:p1",160,0,0,6',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "b:p1",160,0,0,7',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "mode:p1",160,0,0,8',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME15-_LCD_PaintRed_Dot
	.dw 0x0d,0x0a
.code
LME15:
.code
.debug
	.dw '.stabs "LCD501_Circle:F19",36,0,0,',0,0,offset _LCD501_Circle,seg _LCD501_Circle,0x0d,0x0a
.CODE
.public _LCD501_Circle
_LCD501_Circle:	.proc
.debug
	.dw '.stabn 0x44,0,473,',0,0
	.dd LM211-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM211:
	// total=6, vars=6
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=6
	bp=sp+1

	R1=BP+9
	[bp+5]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,474,',0,0
	.dd LM212-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM212:
LBB6:
	R1=0	// QImode move
	[BP]=R1	// QImode move
	R1=BP	// QImode move
	R2=BP+3
	R1=0	// QImode move
	R3=R2	// QImode move
	[R3]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,476,',0,0
	.dd LM213-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM213:
	R2=BP	// QImode move
	R1=BP+1
	R2=[bp+5]	// QImode move
	R4=[bp+5]	// QImode move
	R3=R4+2
	R4=R3	// QImode move
	R2=[R4]	// QImode move
	R3=R1	// QImode move
	[R3]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,477,',0,0
	.dd LM214-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM214:
	R2=BP	// QImode move
	R1=BP+2
	R2=[bp+5]	// QImode move
	R4=[bp+5]	// QImode move
	R3=R4+2
	R4=R3	// QImode move
	R2=[R4]	// QImode move
	R3=R1	// QImode move
	[R3]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,478,',0,0
	.dd LM215-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM215:
	call _LCD501_GetPaintMode	// call with return value
	R2=BP	// QImode move
	R3=BP+4
	R4=R3	// QImode move
	[R4]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,479,',0,0
	.dd LM216-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM216:
	R1=0	// QImode move
	[SP--]=R1	// QImode move
	call _LCD501_SetPaintMode	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,480,',0,0
	.dd LM217-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM217:
L109:
	pc=L111	// Indirect jump
	pc=L110	// Indirect jump
L111:
.debug
	.dw '.stabn 0x44,0,482,',0,0
	.dd LM218-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM218:
	R1=1	// QImode move
	[28690]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,483,',0,0
	.dd LM219-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM219:
	R1=[bp+5]	// QImode move
	R1=[bp+5]	// QImode move
	R2=R1+3
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	R1=BP	// QImode move
	R2=BP+1
	R4=R2	// QImode move
	R1=[R4]	// QImode move
	[SP--]=R1	// QImode move
	R1=[BP]	// QImode move
	[SP--]=R1	// QImode move
	R1=[bp+5]	// QImode move
	R1=[bp+5]	// QImode move
	R2=R1+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	R4=[bp+5]	// QImode move
	R1=[R4]	// QImode move
	[SP--]=R1	// QImode move
	call _LCD_PaintRed_Dot	// call without return value
	SP = SP + 5	//SP
.debug
	.dw '.stabn 0x44,0,484,',0,0
	.dd LM220-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM220:
	R2=[bp+5]	// QImode move
	R1=R2+2
	[SP--]=R1	// QImode move
	R1=BP+1
	[SP--]=R1	// QImode move
	[SP--]=BP	// QImode move
	call _W_Red_Err	// call without return value
	SP = SP + 3	//SP
.debug
	.dw '.stabn 0x44,0,485,',0,0
	.dd LM221-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM221:
	R1=BP	// QImode move
	R2=BP+2
	R1=[BP]	// QImode move
	R3=R2	// QImode move
	CMP R1,[R3]	// QImode compare
	NSJNZ L112	//QImode NE
.debug
	.dw '.stabn 0x44,0,487,',0,0
	.dd LM222-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM222:
	R1=[bp+5]	// QImode move
	R4=[bp+5]	// QImode move
	R2=R4+3
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	R1=BP	// QImode move
	R2=BP+1
	R4=R2	// QImode move
	R1=[R4]	// QImode move
	[SP--]=R1	// QImode move
	R1=[BP]	// QImode move
	[SP--]=R1	// QImode move
	R1=[bp+5]	// QImode move
	R1=[bp+5]	// QImode move
	R2=R1+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	R4=[bp+5]	// QImode move
	R1=[R4]	// QImode move
	[SP--]=R1	// QImode move
	call _LCD_PaintRed_Dot	// call without return value
	SP = SP + 5	//SP
.debug
	.dw '.stabn 0x44,0,488,',0,0
	.dd LM223-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM223:
	pc=L110	// Indirect jump
L112:
.debug
	.dw '.stabn 0x44,0,490,',0,0
	.dd LM224-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM224:
	R1=[bp+5]	// QImode move
	R1=[bp+5]	// QImode move
	R2=R1+3
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	R1=BP	// QImode move
	R2=BP+3
	R4=R2	// QImode move
	R1=[R4]	// QImode move
	[SP--]=R1	// QImode move
	R1=BP	// QImode move
	R2=BP+2
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	R1=[bp+5]	// QImode move
	R4=[bp+5]	// QImode move
	R2=R4+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	R4=[bp+5]	// QImode move
	R1=[R4]	// QImode move
	[SP--]=R1	// QImode move
	call _LCD_PaintRed_Dot	// call without return value
	SP = SP + 5	//SP
.debug
	.dw '.stabn 0x44,0,491,',0,0
	.dd LM225-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM225:
	R2=[bp+5]	// QImode move
	R1=R2+2
	[SP--]=R1	// QImode move
	R1=BP+2
	[SP--]=R1	// QImode move
	R1=BP+3
	[SP--]=R1	// QImode move
	call _W_Red_Err	// call without return value
	SP = SP + 3	//SP
.debug
	.dw '.stabn 0x44,0,492,',0,0
	.dd LM226-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM226:
	R1=BP	// QImode move
	R2=BP+2
	R1=[BP]	// QImode move
	R3=R2	// QImode move
	CMP R1,[R3]	// QImode compare
	NSJNZ L113	//QImode NE
.debug
	.dw '.stabn 0x44,0,494,',0,0
	.dd LM227-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM227:
	R1=[bp+5]	// QImode move
	R4=[bp+5]	// QImode move
	R2=R4+3
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	R1=BP	// QImode move
	R2=BP+3
	R4=R2	// QImode move
	R1=[R4]	// QImode move
	[SP--]=R1	// QImode move
	R1=BP	// QImode move
	R2=BP+2
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	R1=[bp+5]	// QImode move
	R4=[bp+5]	// QImode move
	R2=R4+1
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	R4=[bp+5]	// QImode move
	R1=[R4]	// QImode move
	[SP--]=R1	// QImode move
	call _LCD_PaintRed_Dot	// call without return value
	SP = SP + 5	//SP
.debug
	.dw '.stabn 0x44,0,495,',0,0
	.dd LM228-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM228:
	pc=L110	// Indirect jump
L113:
.debug
	.dw '.stabn 0x44,0,497,',0,0
	.dd LM229-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM229:
	pc=L109	// Indirect jump
L110:
.debug
	.dw '.stabn 0x44,0,498,',0,0
	.dd LM230-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM230:
	R1=BP	// QImode move
	R2=BP+4
	R3=R2	// QImode move
	R1=[R3]	// QImode move
	[SP--]=R1	// QImode move
	call _LCD501_SetPaintMode	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,499,',0,0
	.dd LM231-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM231:
LBE6:
.debug
	.dw '.stabn 0x44,0,499,',0,0
	.dd LM232-_LCD501_Circle
	.dw 0x0d,0x0a
.code
LM232:
L108:

	sp+=6
	pop bp fro

⌨️ 快捷键说明

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