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

📄 wxjtest1.lst

📁 almegal128串口编程
💻 LST
📖 第 1 页 / 共 3 页
字号:
 193               		.stabn 68,0,97,.LM14-__vector_20
 194               	.LM14:
 195 005a 8CB9      		out 44-0x20,r24
 196 005c 03C0      		rjmp .L2
 197               	.L3:
  98:wxjtest1.c    ****     }
  99:wxjtest1.c    ****     else
 100:wxjtest1.c    ****     {
 101:wxjtest1.c    ****     	trans_cpl=1;
 198               		.stabn 68,0,101,.LM15-__vector_20
 199               	.LM15:
 200 005e 81E0      		ldi r24,lo8(1)
 201 0060 8093 0000 		sts trans_cpl,r24
 102:wxjtest1.c    ****     	//outp(0<<TXEN,UCSR0B);
 103:wxjtest1.c    ****     }
 104:wxjtest1.c    **** }
 202               		.stabn 68,0,104,.LM16-__vector_20
 203               	.LM16:
 204               	.L2:
 205               	/* epilogue: frame size=0 */
 206 0064 FF91      		pop r31
 207 0066 EF91      		pop r30
 208 0068 9F91      		pop r25
 209 006a 8F91      		pop r24
 210 006c 0F90      		pop __tmp_reg__
 211 006e 0FBE      		out __SREG__,__tmp_reg__
 212 0070 0F90      		pop __tmp_reg__
 213 0072 1F90      		pop __zero_reg__
 214 0074 1895      		reti
 215               	/* epilogue end (size=9) */
 216               	/* function __vector_20 size 44 (26) */
 217               	.Lfe2:
 218               		.size	__vector_20,.Lfe2-__vector_20
 219               	.Lscope1:
 220               		.stabs	"",36,0,0,.Lscope1-__vector_20
 221               		.stabs	"__vector_32:F(0,20)",36,0,108,__vector_32
 222               	.global	__vector_32
 223               		.type	__vector_32,@function
 224               	__vector_32:
 105:wxjtest1.c    **** 
 106:wxjtest1.c    **** SIGNAL(SIG_UART1_TRANS)      
 107:wxjtest1.c    **** /* signal handler for uart txd ready interrupt */
 108:wxjtest1.c    **** {
GAS LISTING C:\DOCUME~1\zhang\LOCALS~1\Temp/ccyqaaaa.s 			page 7


 225               		.stabn 68,0,108,.LM17-__vector_32
 226               	.LM17:
 227               	/* prologue: frame size=0 */
 228 0076 1F92      		push __zero_reg__
 229 0078 0F92      		push __tmp_reg__
 230 007a 0FB6      		in __tmp_reg__,__SREG__
 231 007c 0F92      		push __tmp_reg__
 232 007e 1124      		clr __zero_reg__
 233 0080 8F93      		push r24
 234 0082 9F93      		push r25
 235 0084 EF93      		push r30
 236 0086 FF93      		push r31
 237               	/* prologue end (size=9) */
 109:wxjtest1.c    ****     seriel_tx_time++;
 238               		.stabn 68,0,109,.LM18-__vector_32
 239               	.LM18:
 240 0088 9091 0000 		lds r25,seriel_tx_time
 241 008c 9F5F      		subi r25,lo8(-(1))
 242 008e 9093 0000 		sts seriel_tx_time,r25
 110:wxjtest1.c    ****     //led=~led;
 111:wxjtest1.c    ****     /*outp(led,PORTB);*/
 112:wxjtest1.c    ****     if (uart_counter>0)
 243               		.stabn 68,0,112,.LM19-__vector_32
 244               	.LM19:
 245 0092 8091 0000 		lds r24,uart_counter
 246 0096 8823      		tst r24
 247 0098 79F0      		breq .L6
 113:wxjtest1.c    ****     {
 114:wxjtest1.c    ****     	uart_counter--;
 248               		.stabn 68,0,114,.LM20-__vector_32
 249               	.LM20:
 250 009a 8091 0000 		lds r24,uart_counter
 251 009e 8150      		subi r24,lo8(-(-1))
 252 00a0 8093 0000 		sts uart_counter,r24
 115:wxjtest1.c    ****     	trans_data=(u08)seriel_tx_buf[seriel_tx_time];
 253               		.stabn 68,0,115,.LM21-__vector_32
 254               	.LM21:
 255 00a4 E0E0      		ldi r30,lo8(seriel_tx_buf)
 256 00a6 F0E0      		ldi r31,hi8(seriel_tx_buf)
 257 00a8 E90F      		add r30,r25
 258 00aa F11D      		adc r31,__zero_reg__
 259 00ac 8081      		ld r24,Z
 260 00ae 8093 0000 		sts trans_data,r24
 116:wxjtest1.c    ****         outp(trans_data, UDR1);       /* write byte to data buffer */
 261               		.stabn 68,0,116,.LM22-__vector_32
 262               	.LM22:
 263 00b2 8093 9C00 		sts 156,r24
 264 00b6 03C0      		rjmp .L5
 265               	.L6:
 117:wxjtest1.c    ****     }
 118:wxjtest1.c    ****     else
 119:wxjtest1.c    ****     {
 120:wxjtest1.c    ****     	trans_cpl=1;
 266               		.stabn 68,0,120,.LM23-__vector_32
 267               	.LM23:
 268 00b8 81E0      		ldi r24,lo8(1)
 269 00ba 8093 0000 		sts trans_cpl,r24
GAS LISTING C:\DOCUME~1\zhang\LOCALS~1\Temp/ccyqaaaa.s 			page 8


 121:wxjtest1.c    ****     	//outp(0<<TXEN,UCSR0B);
 122:wxjtest1.c    ****     }
 123:wxjtest1.c    **** }
 270               		.stabn 68,0,123,.LM24-__vector_32
 271               	.LM24:
 272               	.L5:
 273               	/* epilogue: frame size=0 */
 274 00be FF91      		pop r31
 275 00c0 EF91      		pop r30
 276 00c2 9F91      		pop r25
 277 00c4 8F91      		pop r24
 278 00c6 0F90      		pop __tmp_reg__
 279 00c8 0FBE      		out __SREG__,__tmp_reg__
 280 00ca 0F90      		pop __tmp_reg__
 281 00cc 1F90      		pop __zero_reg__
 282 00ce 1895      		reti
 283               	/* epilogue end (size=9) */
 284               	/* function __vector_32 size 45 (27) */
 285               	.Lfe3:
 286               		.size	__vector_32,.Lfe3-__vector_32
 287               	.Lscope2:
 288               		.stabs	"",36,0,0,.Lscope2-__vector_32
 289               		.stabs	"__vector_18:F(0,20)",36,0,129,__vector_18
 290               	.global	__vector_18
 291               		.type	__vector_18,@function
 292               	__vector_18:
 124:wxjtest1.c    **** 
 125:wxjtest1.c    **** 
 126:wxjtest1.c    **** 
 127:wxjtest1.c    **** SIGNAL(SIG_UART0_RECV)      
 128:wxjtest1.c    **** /* signal handler for receive complete interrupt */
 129:wxjtest1.c    **** {
 293               		.stabn 68,0,129,.LM25-__vector_18
 294               	.LM25:
 295               	/* prologue: frame size=0 */
 296 00d0 1F92      		push __zero_reg__
 297 00d2 0F92      		push __tmp_reg__
 298 00d4 0FB6      		in __tmp_reg__,__SREG__
 299 00d6 0F92      		push __tmp_reg__
 300 00d8 1124      		clr __zero_reg__
 301 00da 2F93      		push r18
 302 00dc 8F93      		push r24
 303 00de 9F93      		push r25
 304 00e0 AF93      		push r26
 305 00e2 BF93      		push r27
 306 00e4 EF93      		push r30
 307 00e6 FF93      		push r31
 308               	/* prologue end (size=12) */
 130:wxjtest1.c    **** 
 131:wxjtest1.c    ****     seriel_data = inp(UDR0);        /* read byte for UART data buffer */
 309               		.stabn 68,0,131,.LM26-__vector_18
 310               	.LM26:
 311 00e8 9CB1      		in r25,44-0x20
 312 00ea 9093 0000 		sts seriel_data,r25
 132:wxjtest1.c    ****     seriel_re_buf[seriel_re_time]=seriel_data;
 313               		.stabn 68,0,132,.LM27-__vector_18
 314               	.LM27:
GAS LISTING C:\DOCUME~1\zhang\LOCALS~1\Temp/ccyqaaaa.s 			page 9


 315 00ee 2091 0000 		lds r18,seriel_re_time
 316 00f2 E0E0      		ldi r30,lo8(seriel_re_buf)
 317 00f4 F0E0      		ldi r31,hi8(seriel_re_buf)
 318 00f6 E20F      		add r30,r18
 319 00f8 F11D      		adc r31,__zero_reg__
 320 00fa 9083      		st Z,r25
 133:wxjtest1.c    ****     //outp(~led, PORTB);     /*output received byte to PortB (LEDs) */
 134:wxjtest1.c    ****     if((seriel_re_time>0)&&(seriel_re_time<=30)&&(!(seriel_data==0x0d))&&(!(seriel_data==0x20)))
 321               		.stabn 68,0,134,.LM28-__vector_18
 322               	.LM28:
 323 00fc 822F      		mov r24,r18
 324 00fe 8150      		subi r24,lo8(-(-1))
 325 0100 8E31      		cpi r24,lo8(30)
 326 0102 40F4      		brsh .L9
 327 0104 9D30      		cpi r25,lo8(13)
 328 0106 31F0      		breq .L9
 329 0108 9032      		cpi r25,lo8(32)
 330 010a 21F0      		breq .L9
 135:wxjtest1.c    ****     {
 136:wxjtest1.c    ****     	seriel_re_time++;
 331               		.stabn 68,0,136,.LM29-__vector_18
 332               	.LM29:
 333 010c 2F5F      		subi r18,lo8(-(1))
 334 010e 2093 0000 		sts seriel_re_time,r18
 335 0112 18C0      		rjmp .L8
 336               	.L9:
 137:wxjtest1.c    ****     }
 138:wxjtest1.c    ****     else
 139:wxjtest1.c    ****     {
 140:wxjtest1.c    ****     	seriel_trans_ok=1;
 337               		.stabn 68,0,140,.LM30-__vector_18
 338               	.LM30:
 339 0114 81E0      		ldi r24,lo8(1)
 340 0116 8093 0000 		sts seriel_trans_ok,r24
 141:wxjtest1.c    ****     	for(xi=0;xi<=seriel_re_time;xi++)
 341               		.stabn 68,0,141,.LM31-__vector_18
 342               	.LM31:
 343 011a 1092 0000 		sts xi,__zero_reg__
 344 011e 90E0      		ldi r25,lo8(0)
 345               	.L15:
 142:wxjtest1.c    ****     	{
 143:wxjtest1.c    ****     		seriel_tx_buf[xi]=seriel_re_buf[xi];
 346               		.stabn 68,0,143,.LM32-__vector_18
 347               	.LM32:
 348 0120 E92F      		mov r30,r25
 349 0122 FF27      		clr r31
 350 0124 DF01      		movw r26,r30
 351 0126 A050      		subi r26,lo8(-(seriel_re_buf))
 352 0128 B040      		sbci r27,hi8(-(seriel_re_buf))
 353 012a 8C91      		ld r24,X
 354 012c E050      		subi r30,lo8(-(seriel_tx_buf))
 355 012e F040      		sbci r31,hi8(-(seriel_tx_buf))
 356 0130 8083      		st Z,r24
 357               		.stabn 68,0,141,.LM33-__vector_18
 358               	.LM33:
 359 0132 9F5F      		subi r25,lo8(-(1))
 360 0134 2917      		cp r18,r25
GAS LISTING C:\DOCUME~1\zhang\LOCALS~1\Temp/ccyqaaaa.s 			page 10


 361 0136 A0F7      		brsh .L15
 362 0138 9093 0000 		sts xi,r25
 144:wxjtest1.c    ****     	}
 145:wxjtest1.c    ****     	size=seriel_re_time;
 363               		.stabn 68,0,145,.LM34-__vector_18
 364               	.LM34:
 365 013c 2093 0000 		sts size,r18
 146:wxjtest1.c    ****     	seriel_re_time=0;
 366               		.stabn 68,0,146,.LM35-__vector_18
 367               	.LM35:
 368 0140 1092 0000 		sts seriel_re_time,__zero_reg__
 147:wxjtest1.c    ****     }
 148:wxjtest1.c    **** }
 369               		.stabn 68,0,148,.LM36-__vector_18
 370               	.LM36:
 371               	.L8:
 372               	/* epilogue: frame size=0 */
 373 0144 FF91      		pop r31
 374 0146 EF91      		pop r30
 375 0148 BF91      		pop r27
 376 014a AF91      		pop r26
 377 014c 9F91      		pop r25
 378 014e 8F91      		pop r24
 379 0150 2F91      		pop r18
 380 0152 0F90      		pop __tmp_reg__
 381 0154 0FBE      		out __SREG__,__tmp_reg__
 382 0156 0F90      		pop __tmp_reg__
 383 0158 1F90      		pop __zero_reg__
 384 015a 1895      		reti
 385               	/* epilogue end (size=12) */
 386               	/* function __vector_18 size 70 (46) */
 387               	.Lfe4:
 388               		.size	__vector_18,.Lfe4-__vector_18
 389               	.Lscope3:
 390               		.stabs	"",36,0,0,.Lscope3-__vector_18
 391               		.stabs	"__vector_30:F(0,20)",36,0,152,__vector_30
 392               	.global	__vector_30
 393               		.type	__vector_30,@function
 394               	__vector_30:
 149:wxjtest1.c    **** 
 150:wxjtest1.c    **** SIGNAL(SIG_UART1_RECV)      
 151:wxjtest1.c    **** /* signal handler for receive complete interrupt */
 152:wxjtest1.c    **** {
 395               		.stabn 68,0,152,.LM37-__vector_30
 396               	.LM37:
 397               	/* prologue: frame size=0 */
 398 015c 1F92      		push __zero_reg__
 399 015e 0F92      		push __tmp_reg__
 400 0160 0FB6      		in __tmp_reg__,__SREG__
 401 0162 0F92      		push __tmp_reg__
 402 0164 1124      		clr __zero_reg__
 403 0166 2F93      		push r18
 404 0168 8F93      		push r24
 405 016a 9F93      		push r25
 406 016c AF93      		push r26
 407 016e BF93      		push r27
 408 0170 EF93      		push r30
GAS LISTING C:\DOCUME~1\zhang\LOCALS~1\Temp/ccyqaaaa.s 			page 11


 409 0172 FF93      		push r31
 410               	/* prologue end (size=12) */
 153:wxjtest1.c    **** 
 154:wxjtest1.c    ****     seriel_data = inp(UDR1);        /* read byte for UART data buffer */
 411               		.stabn 68,0,154,.LM38-__vector_30
 412               	.LM38:
 413 0174 9091 9C00 		lds r25,156
 414 0178 9093 0000 		sts seriel_data,r25
 155:wxjtest1.c    ****     seriel_re_buf[seriel_re_time]=seriel_data;
 415               		.stabn 68,0,155,.LM39-__vector_30
 416               	.LM39:
 417 017c 2091 0000 		lds r18,seriel_re_time
 418 0180 E0E0      		ldi r30,lo8(seriel_re_buf)
 419 0182 F0E0      		ldi r31,hi8(seriel_re_buf)
 420 0184 E20F      		add r30,r18
 421 0186 F11D      		adc r31,__zero_reg__
 422 0188 9083      		st Z,r25
 156:wxjtest1.c    ****     //outp(~led, PORTB);     /*output received byte to PortB (LEDs) */
 157:wxjtest1.c    ****     if((seriel_re_time>0)&&(seriel_re_time<=30)&&(!(seriel_data==0x0d))&&(!(seriel_data==0x20)))
 423               		.stabn 68,0,157,.LM40-__vector_30
 424               	.LM40:
 425 018a 822F      		mov r24,r18
 426 018c 8150      		subi r24,lo8(-(-1))
 427 018e 8E31      		cpi r24,lo8(30)
 428 0190 40F4      		brsh .L20
 429 0192 9D30      		cpi r25,lo8(13)
 430 0194 31F0      		breq .L20
 431 0196 9032      		cpi r25,lo8(32)
 432 0198 21F0      		breq .L20
 158:wxjtest1.c    ****     {
 159:wxjtest1.c    ****     	seriel_re_time++;

⌨️ 快捷键说明

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