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

📄 splc501user.asm

📁 用凌阳61单片机实现正弦信号的产生
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	CMP R1,2	// QImode compare
	NSJZ L24	//QImode EQ
	CMP R1,2	// QImode compare
	NSJA L28	//QImode GTU
	CMP R1,1	// QImode compare
	NSJZ L23	//QImode EQ
	pc=L26	// Indirect jump
L28:
	CMP R1,3	// QImode compare
	NSJZ L25	//QImode EQ
	pc=L26	// Indirect jump
L23:
.debug
	.dw '.stabn 0x44,0,119,',0,0
	.dd LM52-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM52:
	R1=175	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,120,',0,0
	.dd LM53-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM53:
	pc=L22	// Indirect jump
L24:
.debug
	.dw '.stabn 0x44,0,122,',0,0
	.dd LM54-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM54:
	R1=172	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,123,',0,0
	.dd LM55-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM55:
	R1=0	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,124,',0,0
	.dd LM56-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM56:
	R1=174	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,125,',0,0
	.dd LM57-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM57:
	R1=165	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,126,',0,0
	.dd LM58-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM58:
	pc=L22	// Indirect jump
L25:
.debug
	.dw '.stabn 0x44,0,128,',0,0
	.dd LM59-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM59:
	R1=173	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,129,',0,0
	.dd LM60-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM60:
	R1=3	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,130,',0,0
	.dd LM61-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM61:
	R1=174	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,131,',0,0
	.dd LM62-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM62:
	R1=165	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,132,',0,0
	.dd LM63-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM63:
	pc=L22	// Indirect jump
L26:
.debug
	.dw '.stabn 0x44,0,134,',0,0
	.dd LM64-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM64:
	R1=174	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,135,',0,0
	.dd LM65-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM65:
	pc=L22	// Indirect jump
L22:
.debug
	.dw '.stabn 0x44,0,137,',0,0
	.dd LM66-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM66:
	R2=[BP]	// QImode move
	R1=[R2]	// QImode move
	[_CurPowerMode]=R1	// QImode move
L21:
L19:
.debug
	.dw '.stabn 0x44,0,139,',0,0
	.dd LM67-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM67:
.debug
	.dw '.stabn 0x44,0,139,',0,0
	.dd LM68-_LCD501_Power
	.dw 0x0d,0x0a
.code
LM68:
L17:

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

.debug
	.dw '.stabs "ModeCode:p4",160,0,0,4',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME3-_LCD501_Power
	.dw 0x0d,0x0a
.code
LME3:
.code
.debug
	.dw '.stabs "LCD501_SetContrast:F19",36,0,0,',0,0,offset _LCD501_SetContrast,seg _LCD501_SetContrast,0x0d,0x0a
.CODE
.public _LCD501_SetContrast
_LCD501_SetContrast:	.proc
.debug
	.dw '.stabn 0x44,0,149,',0,0
	.dd LM69-_LCD501_SetContrast
	.dw 0x0d,0x0a
.code
LM69:
	// 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,150,',0,0
	.dd LM70-_LCD501_SetContrast
	.dw 0x0d,0x0a
.code
LM70:
	R2=[BP]	// QImode move
	R1=[R2]	// QImode move
	CMP R1,63	// QImode compare
	NSJNA L36	//QImode LEU
.debug
	.dw '.stabn 0x44,0,151,',0,0
	.dd LM71-_LCD501_SetContrast
	.dw 0x0d,0x0a
.code
LM71:
	R1=63	// QImode move
	R2=[BP]	// QImode move
	[R2]=R1	// QImode move
L36:
.debug
	.dw '.stabn 0x44,0,152,',0,0
	.dd LM72-_LCD501_SetContrast
	.dw 0x0d,0x0a
.code
LM72:
	R1=129	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,153,',0,0
	.dd LM73-_LCD501_SetContrast
	.dw 0x0d,0x0a
.code
LM73:
	R2=[BP]	// QImode move
	R1=[R2]	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,154,',0,0
	.dd LM74-_LCD501_SetContrast
	.dw 0x0d,0x0a
.code
LM74:
	R2=[BP]	// QImode move
	R1=[R2]	// QImode move
	[_CurLCDSet]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,155,',0,0
	.dd LM75-_LCD501_SetContrast
	.dw 0x0d,0x0a
.code
LM75:
.debug
	.dw '.stabn 0x44,0,155,',0,0
	.dd LM76-_LCD501_SetContrast
	.dw 0x0d,0x0a
.code
LM76:
L35:

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

.debug
	.dw '.stabs "Contrast:p4",160,0,0,4',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME4-_LCD501_SetContrast
	.dw 0x0d,0x0a
.code
LME4:
.code
.debug
	.dw '.stabs "LCD501_GetContrast:F4",36,0,0,',0,0,offset _LCD501_GetContrast,seg _LCD501_GetContrast,0x0d,0x0a
.CODE
.public _LCD501_GetContrast
_LCD501_GetContrast:	.proc
.debug
	.dw '.stabn 0x44,0,165,',0,0
	.dd LM77-_LCD501_GetContrast
	.dw 0x0d,0x0a
.code
LM77:
	// total=0, vars=0
	// frame_pointer_needed: 1
	push bp to [sp]
	bp=sp+1

	R2=BP+3
.debug
	.dw '.stabn 0x44,0,166,',0,0
	.dd LM78-_LCD501_GetContrast
	.dw 0x0d,0x0a
.code
LM78:
	R3=[_CurLCDSet]	// QImode move
	R1=R3	// QImode move
	pc=L38	// Indirect jump
.debug
	.dw '.stabn 0x44,0,167,',0,0
	.dd LM79-_LCD501_GetContrast
	.dw 0x0d,0x0a
.code
LM79:
.debug
	.dw '.stabn 0x44,0,167,',0,0
	.dd LM80-_LCD501_GetContrast
	.dw 0x0d,0x0a
.code
LM80:
L38:

	pop bp from [sp]
	retf
	.endp	// end of LCD501_GetContrast

.debug
	.dw '.stabf ',0,0
	.dd LME5-_LCD501_GetContrast
	.dw 0x0d,0x0a
.code
LME5:
.code
.debug
	.dw '.stabs "LCD501_ScrollUp:F19",36,0,0,',0,0,offset _LCD501_ScrollUp,seg _LCD501_ScrollUp,0x0d,0x0a
.CODE
.public _LCD501_ScrollUp
_LCD501_ScrollUp:	.proc
.debug
	.dw '.stabn 0x44,0,177,',0,0
	.dd LM81-_LCD501_ScrollUp
	.dw 0x0d,0x0a
.code
LM81:
	// 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,178,',0,0
	.dd LM82-_LCD501_ScrollUp
	.dw 0x0d,0x0a
.code
LM82:
	R1=[_CurScroll]	// QImode move
	R3=[BP]	// QImode move
	R2=[R3]	// QImode move
	[_CurScroll]=R1+R2  //addqi3_Qrr
.debug
	.dw '.stabn 0x44,0,179,',0,0
	.dd LM83-_LCD501_ScrollUp
	.dw 0x0d,0x0a
.code
LM83:
L40:
	R1=[_CurScroll]	// QImode move
	CMP R1,63	// QImode compare
	NSJA L42	//QImode GTU
	pc=L41	// Indirect jump
L42:
.debug
	.dw '.stabn 0x44,0,180,',0,0
	.dd LM84-_LCD501_ScrollUp
	.dw 0x0d,0x0a
.code
LM84:
	R1=[_CurScroll]	// QImode move
	R2=(-64)	// QImode move
	[_CurScroll]=R1+R2  //addqi3_Qrr
	pc=L40	// Indirect jump
L41:
.debug
	.dw '.stabn 0x44,0,181,',0,0
	.dd LM85-_LCD501_ScrollUp
	.dw 0x0d,0x0a
.code
LM85:
	R2=[_CurScroll]	// QImode move
	R1=R2+64
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,182,',0,0
	.dd LM86-_LCD501_ScrollUp
	.dw 0x0d,0x0a
.code
LM86:
.debug
	.dw '.stabn 0x44,0,182,',0,0
	.dd LM87-_LCD501_ScrollUp
	.dw 0x0d,0x0a
.code
LM87:
L39:

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

.debug
	.dw '.stabs "Rows:p4",160,0,0,4',0x0d,0x0a
.CODE
.debug
	.dw '.stabf ',0,0
	.dd LME6-_LCD501_ScrollUp
	.dw 0x0d,0x0a
.code
LME6:
.code
.debug
	.dw '.stabs "LCD501_GetScroll:F4",36,0,0,',0,0,offset _LCD501_GetScroll,seg _LCD501_GetScroll,0x0d,0x0a
.CODE
.public _LCD501_GetScroll
_LCD501_GetScroll:	.proc
.debug
	.dw '.stabn 0x44,0,192,',0,0
	.dd LM88-_LCD501_GetScroll
	.dw 0x0d,0x0a
.code
LM88:
	// total=0, vars=0
	// frame_pointer_needed: 1
	push bp to [sp]
	bp=sp+1

	R2=BP+3
.debug
	.dw '.stabn 0x44,0,193,',0,0
	.dd LM89-_LCD501_GetScroll
	.dw 0x0d,0x0a
.code
LM89:
	R3=[_CurScroll]	// QImode move
	R1=R3	// QImode move
	pc=L44	// Indirect jump
.debug
	.dw '.stabn 0x44,0,194,',0,0
	.dd LM90-_LCD501_GetScroll
	.dw 0x0d,0x0a
.code
LM90:
.debug
	.dw '.stabn 0x44,0,194,',0,0
	.dd LM91-_LCD501_GetScroll
	.dw 0x0d,0x0a
.code
LM91:
L44:

	pop bp from [sp]
	retf
	.endp	// end of LCD501_GetScroll

.debug
	.dw '.stabf ',0,0
	.dd LME7-_LCD501_GetScroll
	.dw 0x0d,0x0a
.code
LME7:
.code
.debug
	.dw '.stabs "LCD501_ReverseColor:F19",36,0,0,',0,0,offset _LCD501_ReverseColor,seg _LCD501_ReverseColor,0x0d,0x0a
.CODE
.public _LCD501_ReverseColor
_LCD501_ReverseColor:	.proc
.debug
	.dw '.stabn 0x44,0,204,',0,0
	.dd LM92-_LCD501_ReverseColor
	.dw 0x0d,0x0a
.code
LM92:
	// 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,205,',0,0
	.dd LM93-_LCD501_ReverseColor
	.dw 0x0d,0x0a
.code
LM93:
	R1=[_CurScrMode]	// QImode move
	CMP R1,0	// QImode test
	NSJZ L46	//QImode EQ
.debug
	.dw '.stabn 0x44,0,207,',0,0
	.dd LM94-_LCD501_ReverseColor
	.dw 0x0d,0x0a
.code
LM94:
	R1=167	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,208,',0,0
	.dd LM95-_LCD501_ReverseColor
	.dw 0x0d,0x0a
.code
LM95:
	R1=0	// QImode move
	[_CurScrMode]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,209,',0,0
	.dd LM96-_LCD501_ReverseColor
	.dw 0x0d,0x0a
.code
LM96:
	pc=L47	// Indirect jump
L46:
.debug
	.dw '.stabn 0x44,0,212,',0,0
	.dd LM97-_LCD501_ReverseColor
	.dw 0x0d,0x0a
.code
LM97:
	R1=166	// QImode move
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,213,',0,0
	.dd LM98-_LCD501_ReverseColor
	.dw 0x0d,0x0a
.code
LM98:
	R1=1	// QImode move
	[_CurScrMode]=R1	// QImode move
L47:
.debug
	.dw '.stabn 0x44,0,215,',0,0
	.dd LM99-_LCD501_ReverseColor
	.dw 0x0d,0x0a
.code
LM99:
.debug
	.dw '.stabn 0x44,0,215,',0,0
	.dd LM100-_LCD501_ReverseColor
	.dw 0x0d,0x0a
.code
LM100:
L45:

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

.debug
	.dw '.stabf ',0,0
	.dd LME8-_LCD501_ReverseColor
	.dw 0x0d,0x0a
.code
LME8:
.code
.debug
	.dw '.stabs "LCD501_ClrScreen:F19",36,0,0,',0,0,offset _LCD501_ClrScreen,seg _LCD501_ClrScreen,0x0d,0x0a
.CODE
.public _LCD501_ClrScreen
_LCD501_ClrScreen:	.proc
.debug
	.dw '.stabn 0x44,0,224,',0,0
	.dd LM101-_LCD501_ClrScreen
	.dw 0x0d,0x0a
.code
LM101:
	// total=3, vars=3
	// frame_pointer_needed: 1
	push bp to [sp]
	sp-=3
	bp=sp+1

	R1=BP+6
	[bp+2]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,225,',0,0
	.dd LM102-_LCD501_ClrScreen
	.dw 0x0d,0x0a
.code
LM102:
LBB3:
.debug
	.dw '.stabn 0x44,0,226,',0,0
	.dd LM103-_LCD501_ClrScreen
	.dw 0x0d,0x0a
.code
LM103:
	R2=[bp+2]	// QImode move
	R1=[R2]	// QImode move
	CMP R1,0	// QImode test
	NSJZ L50	//QImode EQ
.debug
	.dw '.stabn 0x44,0,227,',0,0
	.dd LM104-_LCD501_ClrScreen
	.dw 0x0d,0x0a
.code
LM104:
	R1=255	// QImode move
	R3=[bp+2]	// QImode move
	[R3]=R1	// QImode move
	pc=L51	// Indirect jump
L50:
.debug
	.dw '.stabn 0x44,0,229,',0,0
	.dd LM105-_LCD501_ClrScreen
	.dw 0x0d,0x0a
.code
LM105:
	R1=0	// QImode move
	R4=[bp+2]	// QImode move
	[R4]=R1	// QImode move
L51:
.debug
	.dw '.stabn 0x44,0,231,',0,0
	.dd LM106-_LCD501_ClrScreen
	.dw 0x0d,0x0a
.code
LM106:
	R1=0	// QImode move
	[BP]=R1	// QImode move
L52:
	R1=[BP]	// QImode move
	CMP R1,7	// QImode compare
	NSJNA L55	//QImode LEU
	pc=L53	// Indirect jump
L55:
.debug
	.dw '.stabn 0x44,0,233,',0,0
	.dd LM107-_LCD501_ClrScreen
	.dw 0x0d,0x0a
.code
LM107:
	R2=[BP]	// QImode move
	R1=R2+176
	[SP--]=R1	// QImode move
	call _F_SPLC501_Write_Com	// call without return value
	SP = SP + 1	//SP
.debug
	.dw '.stabn 0x44,0,234,',0,0
	.dd LM108-_LCD501_ClrScreen
	.dw 0x0d,0x0a
.code
LM108:

⌨️ 快捷键说明

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