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

📄 main.asm

📁 利用凌阳61单片机实现输液的智能监控及语音报警
💻 ASM
📖 第 1 页 / 共 2 页
字号:
// GCC for SUNPLUS u'nSP version 1.0.23
// Command: C:\PROGRA~1\Sunplus\UNSPID~1.2D\toolchain\cc1.exe C:\DOCUME~1\lk\LOCALS~1\Temp\ccQPaaaa.i -fkeep-inline-functions -quiet -dumpbase main.c -mglobal-var-iram -gstabs -Wall -o .\Debug/main.asm
	.external __sn_func_ptr_sec

// gcc2_compiled.:

.debug
	.dw '.stabs "E:/lk/lianxi/lk_5/",0x64,0,3,',0,0,offset Ltext0,seg Ltext0,0x0d,0x0a
.code
.debug
	.dw '.stabs "E:/lk/lianxi/lk_5/main.c",0x64,0,3,',0,0,offset Ltext0,seg Ltext0,0x0d,0x0a
.code
.code
Ltext0:
.debug
	.dw '.stabs "int:t1=r1;-32768;32767;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "char:t2=r2;0;127;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "long int:t3=r3;-2147483648;2147483647;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "unsigned int:t4=r4;0;65535;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "long unsigned int:t5=r5;0;4294967295;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "long long int:t6=r6;-2147483648;2147483647;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "long long unsigned int:t7=r7;0;4294967295;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "short int:t8=r8;-32768;32767;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "short unsigned int:t9=r9;0;65535;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "signed char:t10=r10;-32768;32767;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "unsigned char:t11=r11;0;65535;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "float:t12=r1;2;0;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "double:t13=r1;2;0;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "long double:t14=r1;2;0;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "complex int:t15=s2real:1,0,16;imag:1,16,16;;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "complex float:t16=r16;2;0;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "complex double:t17=r17;2;0;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "complex long double:t18=r18;2;0;",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "void:t19=19",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabs "SndIndex:T20=eS_0:0,S_1:1,S_2:2,\\",128,0,0,0',0x0d,0x0a
	.DW '.stabs "S_3:3,S_4:4,S_5:5,S_6:6,\\",128,0,0,0',0x0d,0x0a
	.DW '.stabs "S_7:7,S_8:8,S_9:9,S_10:10,\\",128,0,0,0',0x0d,0x0a
	.DW '.stabs "S_11:11,S_12:12,S_Liang:13,S_DING:14,\\",128,0,0,0',0x0d,0x0a
	.DW '.stabs "S_XZSK:15,S_LC:16,S_SW:17,S_XW:18,\\",128,0,0,0',0x0d,0x0a
	.DW '.stabs "S_WS:19,S_Nian:20,S_Yue:21,S_Ri:22,\\",128,0,0,0',0x0d,0x0a
	.DW '.stabs "S_Dian:23,S_Fen:24,S_Miao:25,S_Zheng:26,;",128,0,0,0',0x0d,0x0a
.CODE
.public _numb
.iram
_numb:
	.dw 256
.debug
	.dw '.stabs "numb:G1",32,0,0,',0,0,offset _numb,seg _numb,0x0d,0x0a
.CODE
.public _DispTbl
.iram
_DispTbl:
	.dw 16128
	.dw 1536
	.dw 23296
	.dw 20224
	.dw 26112
	.dw 27904
	.dw 32000
	.dw 1792
	.dw 32512
	.dw 28416
	.dw 30464
	.dw 31744
	.dw 14592
	.dw 24064
	.dw 30976
	.dw 28928
	.dw -256
.debug
	.dw '.stabs "DispTbl:G21=ar1;0;16;1",32,0,0,',0,0,offset _DispTbl,seg _DispTbl,0x0d,0x0a
.CODE
.public _led_buf
.iram
_led_buf:
	.dw 3
	.dw 2
	.dw 1
	.dw 6
	.dw 5
	.dw 4
.debug
	.dw '.stabs "led_buf:G22=ar1;0;5;1",32,0,0,',0,0,offset _led_buf,seg _led_buf,0x0d,0x0a
.CODE
.public _flat
.iram
_flat:
	.dw 0
.debug
	.dw '.stabs "flat:G1",32,0,0,',0,0,offset _flat,seg _flat,0x0d,0x0a
.CODE
.public _ch_num
.iram
_ch_num:
	.dw 3
.debug
	.dw '.stabs "ch_num:G1",32,0,0,',0,0,offset _ch_num,seg _ch_num,0x0d,0x0a
.CODE
.public _key_value
.iram
_key_value:
	.dw 0
.debug
	.dw '.stabs "key_value:G4",32,0,0,',0,0,offset _key_value,seg _key_value,0x0d,0x0a
.CODE
.public _Speed
.iram
_Speed:
	.dw 0
.debug
	.dw '.stabs "Speed:G4",32,0,0,',0,0,offset _Speed,seg _Speed,0x0d,0x0a
.CODE
.public _Time
.iram
_Time:
	.dw 1
.debug
	.dw '.stabs "Time:G4",32,0,0,',0,0,offset _Time,seg _Time,0x0d,0x0a
.CODE
.public _finish
.iram
_finish:
	.dw 0
.debug
	.dw '.stabs "finish:G1",32,0,0,',0,0,offset _finish,seg _finish,0x0d,0x0a
.CODE
.public _warning
.iram
_warning:
	.dw 0
.debug
	.dw '.stabs "warning:G1",32,0,0,',0,0,offset _warning,seg _warning,0x0d,0x0a
.CODE
.public _i
.iram
_i:
	.dw 0
.debug
	.dw '.stabs "i:G1",32,0,0,',0,0,offset _i,seg _i,0x0d,0x0a
.CODE
.code
.debug
	.dw '.stabs "delay:F19",36,0,0,',0,0,offset _delay,seg _delay,0x0d,0x0a
.CODE
.public _delay
_delay:	.proc
.debug
	.dw '.stabn 0x44,0,32,',0,0
	.dd LM1-_delay
	.dw 0x0d,0x0a
.code
LM1:
	// total=1, vars=1
	// frame_pointer_needed: 1
.debug
	.dw '.stabn 0xa6,0,0,1',0x0d, 0x0a
.code
	PUSH BP to [SP]
	SP-=1
	BP=SP+1

	R1=BP+4
.debug
	.dw '.stabn 0x44,0,33,',0,0
	.dd LM2-_delay
	.dw 0x0d,0x0a
.code
LM2:
LBB2:
	R2=0	// QImode move
	[BP]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,34,',0,0
	.dd LM3-_delay
	.dw 0x0d,0x0a
.code
LM3:
	R2=0	// QImode move
	[BP]=R2	// QImode move
L3:
	R2=[BP]	// QImode move
	CMP R2,79	// QImode compare
	NSJNG L6	//QImode LE
	PC=L4	// jump
L6:
.debug
	.dw '.stabn 0x44,0,35,',0,0
	.dd LM4-_delay
	.dw 0x0d,0x0a
.code
LM4:
	R2=1	// QImode move
	[28690]=R2	// QImode move
.debug
	.dw '.stabn 0x44,0,34,',0,0
	.dd LM5-_delay
	.dw 0x0d,0x0a
.code
LM5:
L5:
	R2=[BP]	// QImode move
	R3=R2+1
	[BP]=R3	// QImode move
	PC=L3	// jump
L4:
.debug
	.dw '.stabn 0x44,0,36,',0,0
	.dd LM6-_delay
	.dw 0x0d,0x0a
.code
LM6:
LBE2:
.debug
	.dw '.stabn 0x44,0,36,',0,0
	.dd LM7-_delay
	.dw 0x0d,0x0a
.code
LM7:
L2:

	SP+=1
	POP BP from [SP]
	RETF
	.endp	// end of delay

.debug
	.dw '.stabn 0xc0,0,0,',0,0
	.dd LBB2-_delay
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabs "delayvalue:1",128,0,0,0',0x0d,0x0a
.CODE
.debug
	.dw '.stabn 0xe0,0,0,',0,0
	.dd LBE2-_delay
	.dw 0x0d,0x0a
.code
.debug
	.dw '.stabf ',0,0
	.dd LME1-_delay
	.dw 0x0d,0x0a
.code
LME1:
.code
.debug
	.dw '.stabs "main:F1",36,0,0,',0,0,offset _main,seg _main,0x0d,0x0a
.CODE
.public _main
_main:	.proc
.debug
	.dw '.stabn 0x44,0,40,',0,0
	.dd LM8-_main
	.dw 0x0d,0x0a
.code
LM8:
	// total=3, vars=3
	// frame_pointer_needed: 1
.debug
	.dw '.stabn 0xa6,0,0,3',0x0d, 0x0a
.code
	PUSH BP to [SP]
	SP-=3
	BP=SP+1

	R1=BP+6
	[BP+1]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,41,',0,0
	.dd LM9-_main
	.dw 0x0d,0x0a
.code
LM9:
LBB3:
	R1=0	// QImode move
	[BP]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,42,',0,0
	.dd LM10-_main
	.dw 0x0d,0x0a
.code
LM10:
	R1=(-256)	// QImode move
	[28674]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,43,',0,0
	.dd LM11-_main
	.dw 0x0d,0x0a
.code
LM11:
	R1=(-1)	// QImode move
	[28675]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,44,',0,0
	.dd LM12-_main
	.dw 0x0d,0x0a
.code
LM12:
	R1=0	// QImode move
	[28672]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,45,',0,0
	.dd LM13-_main
	.dw 0x0d,0x0a
.code
LM13:
	R1=(-256)	// QImode move
	[28679]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,46,',0,0
	.dd LM14-_main
	.dw 0x0d,0x0a
.code
LM14:
	R1=(-256)	// QImode move
	[28680]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,47,',0,0
	.dd LM15-_main
	.dw 0x0d,0x0a
.code
LM15:
	R1=0	// QImode move
	[28677]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,48,',0,0
	.dd LM16-_main
	.dw 0x0d,0x0a
.code
LM16:
	CALL _Key_Init	// call without return value
.debug
	.dw '.stabn 0x44,0,49,',0,0
	.dd LM17-_main
	.dw 0x0d,0x0a
.code
LM17:
	R1=0	// QImode move
	[BP]=R1	// QImode move
L9:
	R1=[BP]	// QImode move
	CMP R1,2	// QImode compare
	NSJNG L12	//QImode LE
	PC=L10	// jump
L12:
.debug
	.dw '.stabn 0x44,0,51,',0,0
	.dd LM18-_main
	.dw 0x0d,0x0a
.code
LM18:
	R2=[BP]	// QImode move
	R1=R2+3
	R4=0	// sign extend
	R3=R1
	jpl 1
	R4=-1
	R1=_led_buf	// QImode move
	R2=R3	// QImode move
	[BP+2]=R1	// QImode move
	R3=[BP+2]	// QImode move
	R3 = R3 + R2	//addqi3
	[BP+2]=R3	// QImode move
	R2=0	// sign extend
	R1=[BP]
	jpl 1
	R2=-1
	R3=R1+(-4096)
	R4=R3	// QImode move
	R1=[R4]	// QImode move
	R2=10	// QImode move
	[SP--]=R2	// QImode move
	[SP--]=R1	// QImode move
	CALL __modu1	// call with return value
	SP = SP + 2	//SP
	R2=[BP+2]	// QImode move
	[R2]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,49,',0,0
	.dd LM19-_main
	.dw 0x0d,0x0a
.code
LM19:
L11:
	R1=[BP]	// QImode move
	R2=R1+1
	[BP]=R2	// QImode move
	PC=L9	// jump
L10:
.debug
	.dw '.stabn 0x44,0,53,',0,0
	.dd LM20-_main
	.dw 0x0d,0x0a
.code
LM20:
L13:
	PC=L15	// jump
	PC=L14	// jump
L15:
.debug
	.dw '.stabn 0x44,0,58,',0,0
	.dd LM21-_main
	.dw 0x0d,0x0a
.code
LM21:
	R2=[28677]	// QImode move
	R1=R2&1
	CMP R1,0	// QImode test
	NSJZ L16	//QImode EQ
.debug
	.dw '.stabn 0x44,0,60,',0,0
	.dd LM22-_main
	.dw 0x0d,0x0a
.code
LM22:
	R1=[_finish]	// QImode move
	R2=1	// QImode move
	[_finish]=R1+R2  //addqi3_Qrr
.debug
	.dw '.stabn 0x44,0,61,',0,0
	.dd LM23-_main
	.dw 0x0d,0x0a
.code
LM23:
	R1=[_finish]	// QImode move
	CMP R1,49	// QImode compare
	NSJNG L17	//QImode LE
.debug
	.dw '.stabn 0x44,0,62,',0,0
	.dd LM24-_main
	.dw 0x0d,0x0a
.code
LM24:
	R1=1	// QImode move
	[_finish]=R1	// QImode move
L17:
.debug
	.dw '.stabn 0x44,0,63,',0,0
	.dd LM25-_main
	.dw 0x0d,0x0a
.code
LM25:
	PC=L18	// jump
L16:
.debug
	.dw '.stabn 0x44,0,65,',0,0
	.dd LM26-_main
	.dw 0x0d,0x0a
.code
LM26:
	R1=1	// QImode move
	[_warning]=R1	// QImode move
L18:
.debug
	.dw '.stabn 0x44,0,69,',0,0
	.dd LM27-_main
	.dw 0x0d,0x0a
.code
LM27:
	CALL _Key_Get	// call with return value
	[_key_value]=R1	// QImode move
.debug
	.dw '.stabn 0x44,0,70,',0,0
	.dd LM28-_main
	.dw 0x0d,0x0a
.code
LM28:
	R1=[_key_value]	// QImode move
	CMP R1,0	// QImode test
	NSJZ L19	//QImode EQ
.debug
	.dw '.stabn 0x44,0,71,',0,0
	.dd LM29-_main
	.dw 0x0d,0x0a
.code
LM29:
	R2=[_key_value]	// QImode move
	R1=R2	// QImode move
	R1=R1-1
	CMP R1,11	// QImode compare
	NSJA L19	//QImode GTU
	R2=L38	// QImode move
	R1 = R1 + R2	//addqi3
	R3=R1	// QImode move
	R1=[R3]	// QImode move
	PC=R1	// tablejump
.text
L38:
	.dw L21
	.dw L24
	.dw L19
	.dw L27
	.dw L19
	.dw L19
	.dw L19
	.dw L19
	.dw L30
	.dw L33
	.dw L19
	.dw L36
.code
L21:
.debug
	.dw '.stabn 0x44,0,75,',0,0
	.dd LM30-_main
	.dw 0x0d,0x0a
.code
LM30:
	R2=0	// sign extend
	R1=[_ch_num]
	jpl 1
	R2=-1
	R3=_led_buf	// QImode move
	R2=R1	// QImode move
	R1=R3	// QImode move
	R1 = R1 + R2	//addqi3
	R4=R1	// QImode move
	R2=[R4]	// QImode move
	CMP R2,0	// QImode test
	NSJNZ L22	//QImode NE
.debug
	.dw '.stabn 0x44,0,76,',0,0
	.dd LM31-_main
	.dw 0x0d,0x0a
.code
LM31:
	R2=0	// sign extend
	R1=[_ch_num]
	jpl 1
	R2=-1
	R3=_led_buf	// QImode move
	R2=R1	// QImode move
	R1=R3	// QImode move
	R1 = R1 + R2	//addqi3
	R2=9	// QImode move
	R3=R1	// QImode move
	[R3]=R2	// QImode move
	PC=L23	// jump
L22:
.debug
	.dw '.stabn 0x44,0,78,',0,0
	.dd LM32-_main
	.dw 0x0d,0x0a
.code
LM32:
	R2=0	// sign extend
	R1=[_ch_num]
	jpl 1
	R2=-1
	R3=_led_buf	// QImode move
	R2=R1	// QImode move
	R1=R3	// QImode move
	R1 = R1 + R2	//addqi3
	R4=0	// sign extend
	R3=[_ch_num]
	jpl 1
	R4=-1
	R1=_led_buf	// QImode move
	R2=R3	// QImode move
	R1 = R1 + R2	//addqi3
	R4=0	// sign extend
	R3=[_ch_num]
	jpl 1
	R4=-1
	R2=_led_buf	// QImode move
	R2 = R2 + R3	//addqi3
	R4=R2	// QImode move
	R3=[R4]	// QImode move
	R2=R3+(-1)
	R3=R1	// QImode move
	[R3]=R2	// QImode move
L23:
.debug
	.dw '.stabn 0x44,0,79,',0,0
	.dd LM33-_main

⌨️ 快捷键说明

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