📄 twi.lst
字号:
181:twi.c **** else
445 k_last)+1,__zero_reg__
446 sts TWI_task_last,__zero_reg__
447 0226 1092 0000 sts (TWI_task_first)+1,__zero_reg__
182:twi.c **** CR = (1 << TWEN) |
448 158,.LM34-.LFBB5
449 .LM34:
450 022a E091 0000 sts (TWI_task_current)+1,__zero_reg__
451 022e F091 0000 sts TWI_task_current,__zero_reg__
452 0232 0380 sts (TWI_task_last)+1,__zero_reg__
453 0234 F481 sts TWI_task_last,__zero_reg__
454 0236 E02D sts (TWI_task_first)+1,__zero_reg__
455 0238 8FEF sts TWI_task_first,__zero_reg__
457 .LM35:
183:twi.c **** current->flag = 0;
184:twi.c **** if (TWI_task_current != TWI_task_last)
458 o8(-43)
459 rjmp .L44
460 023c 9091 0000 .L15:
462 0244 F091 0000 .LM36:
463 0248 8081 lds r24,TWI_task_current
464 024a 9817 lds r25,(TWI_task_current)+1
465 024c 00F4 sts (TWI_task_first)+1,r25
185:twi.c **** < TWSTA) | (0 << TWSTO) |
467 .LM35:
468 024e 0180 ldi r24,lo8(-43)
469 0250 F281 rjmp .L44
470 0252 E02D .L15:
472 0256 F11D .LM36:
473 0258 8081 lds r24,TWI_task_current
474 025a 83B9 lds r25,(TWI_task_current)+1
475 025c 9F5F sts (TWI_task_first)+1,r25
476 025e 9093 0000 sts TWI_task_first,r24
477 0262 00C0 rjmp .L42
478 .L23:
186:twi.c **** = TWI_task_current->string[string_index++];
187:twi.c **** TWCR = (1 << TWEN) |
188:twi.c **** (1 << TWIE) | (1 << TWINT) |
479 ,lo8(-43)
480 rjmp .L44
481 0264 13B8 .L15:
483 .LM36:
189:twi.c **** x < TWI_task_current->length)
190:twi.c **** {
191:twi.c **** TWDR = TWI_task_current->string[string_index++];
192:twi.c **** TWCR = (1 << TWEN) |
193:twi.c **** (1 << TWIE) | (1 << TWINT) |
194:twi.c **** (0 << TWEA) | (0 << TWSTA) | (0 << TWSTO) |
195:twi.c **** (0 << TWWC);
484 st,__zero_reg__
485 sts (TWI_task_first)+1,__zero_reg__
486 0268 E091 0000 sts TWI_task_first,__zero_reg__
488 0270 00C0 .LM35:
489 ldi r24,lo8(-43)
196:twi.c **** rent->string[string_index++];
197:twi.c **** TWCR = (1 << TWEN) |
198:twi.c **** (1 << TWIE) | (1 << TWINT) |
199:twi.c **** (0 << TWEA) | (0 << TWSTA) | (0 << TWSTO) |
200:twi.c **** (0 << TWWC);
201:twi.c **** }
202:twi.c **** else
203:twi.c **** {
490 reg__
491 sts (TWI_task_last)+1,__zero_reg__
492 0272 1092 0000 sts TWI_task_last,__zero_reg__
204:twi.c **** x++];
493 o8(-91)
494 rjmp .L44
495 0276 E091 0000 .L37:
497 027e 0380 .LM34:
498 0280 F481 sts (TWI_task_current)+1,__zero_reg__
499 0282 E02D sts TWI_task_current,__zero_reg__
500 0284 8FEF sts (TWI_task_last)+1,__zero_reg__
501 0286 8083 sts TWI_task_last,__zero_reg__
502 0288 00C0 sts (TWI_task_first)+1,__zero_reg__
503 sts TWI_task_first,__zero_reg__
205:twi.c **** I_MTX_ADR_ACK:
206:twi.c **** case TWI_MTX_DATA_ACK:
207:twi.c **** if (string_index < TWI_task_current->length)
208:twi.c **** {
209:twi.c **** TWDR = TWI_task_current->string[string_index++];
210:twi.c **** TWCR = (1 << TWEN) |
211:twi.c **** (1 << TWIE) | (1 << TWINT) |
212:twi.c **** (0 << TWEA) | (0 << TWSTA) | (0 << TWSTO) |
504 0,159,.LM35-.LFBB5
505 .LM35:
506 028a 9091 0000 ldi r24,lo8(-43)
507 028e E091 0000 rjmp .L44
508 0292 F091 0000 .L15:
510 0298 9817 .LM36:
511 029a 00F4 lds r24,TWI_task_current
213:twi.c **** = TWI_task_current->string[string_index++];
512 ask_first)+1,__zero_reg__
513 sts TWI_task_first,__zero_reg__
515 029e F281 .LM35:
516 02a0 E02D ldi r24,lo8(-43)
517 02a2 E90F rjmp .L44
518 02a4 F11D .L15:
520 02a8 8083 .LM36:
521 02aa 9F5F lds r24,TWI_task_current
522 02ac 9093 0000 lds r25,(TWI_task_current)+1
523 sts (TWI_task_first)+1,r25
214:twi.c **** I_MTX_ADR_ACK:
525 .LM35:
526 02b0 E091 0000 ldi r24,lo8(-43)
527 02b4 F091 0000 rjmp .L44
528 02b8 9081 .L15:
530 02be 8917 .LM36:
531 02c0 01F4 lds r24,TWI_task_current
532 lds r25,(TWI_task_current)+1
215:twi.c **** I_vect)
533 TWI_task_first,__zero_reg__
535 02c2 0380 .LM35:
536 02c4 F481 ldi r24,lo8(-43)
537 02c6 E02D rjmp .L44
538 02c8 1082 .L15:
540 .LM36:
216:twi.c ****
217:twi.c ****
218:twi.c **** static unsigned char string_index;
219:twi.c **** switch (TWSR)
220:twi.c **** {
221:twi.c **** case TWI_START:
222:twi.c **** case TWI_REP_START:
541 st,__zero_reg__
542 sts (TWI_task_first)+1,__zero_reg__
543 02cc E091 0000 sts TWI_task_first,__zero_reg__
545 02d4 0380 .LM35:
546 02d6 F481 ldi r24,lo8(-43)
547 02d8 E02D rjmp .L44
548 02da 1082 .L15:
223:twi.c **** ring_index = 0;
549 k_last)+1,__zero_reg__
550 sts TWI_task_last,__zero_reg__
551 02dc E091 0000 sts (TWI_task_first)+1,__zero_reg__
552 02e0 F091 0000 sts TWI_task_first,__zero_reg__
554 02e6 9681 .LM35:
555 02e8 9093 0000 ldi r24,lo8(-43)
556 02ec 8093 0000 rjmp .L44
224:twi.c **** 0x00
557 TWI_task_last)+1,__zero_reg__
558 sts TWI_task_last,__zero_reg__
559 02f0 8091 0000 sts (TWI_task_first)+1,__zero_reg__
560 02f4 9091 0000 sts TWI_task_first,__zero_reg__
562 02fa 01F0 .LM35:
563 ldi r24,lo8(-43)
225:twi.c **** ISR (TWI_vect)
226:twi.c **** {
227:twi.c ****
228:twi.c **** static unsigned char string_index;
229:twi.c **** switch (TWSR)
230:twi.c **** {
231:twi.c **** case TWI_START:
564 reg__
565 sts (TWI_task_last)+1,__zero_reg__
566 02fc 85EE sts TWI_task_last,__zero_reg__
567 02fe 00C0 sts (TWI_task_first)+1,__zero_reg__
568 sts TWI_task_first,__zero_reg__
232:twi.c **** TWI_REP_START:
233:twi.c **** string_index = 0;
234:twi.c **** case TWI_MTX_ADR_ACK:
235:twi.c **** case TWI_MTX_DATA_ACK:
236:twi.c **** if (string_index < TWI_task_current->length)
237:twi.c **** {
238:twi.c **** TWDR = TWI_task_current->string[string_index++];
239:twi.c **** TWCR = (1 << TWEN) |
240:twi.c **** (1 << TWIE) | (1 << TWINT) |
241:twi.c **** (0 << TWEA) | (0 << TWSTA) | (0 << TWSTO) |
569 task_current)+1,__zero_reg__
570 sts TWI_task_current,__zero_reg__
571 0300 85EC sts (TWI_task_last)+1,__zero_reg__
572 sts TWI_task_last,__zero_reg__
573 0302 86BF sts (TWI_task_first)+1,__zero_reg__
574 sts TWI_task_first,__zero_reg__
242:twi.c **** = TWI_task_current->string[string_index++];
243:twi.c **** TWCR = (1 << TWEN) |
244:twi.c **** (1 << TWIE) | (1 << TWINT) |
245:twi.c **** (0 << TWEA) | (0 << TWSTA) | (0 << TWSTO) |
246:twi.c **** (0 << TWWC);
247:twi.c **** }
575 n 68,0,159,.LM35-.LFBB5
576 .LM35:
577 0304 FF91 ldi r24,lo8(-43)
578 0306 EF91 rjmp .L44
579 0308 9F91 .L15:
581 030c 3F91 .LM36:
582 030e 2F91 lds r24,TWI_task_current
583 0310 0F90 lds r25,(TWI_task_current)+1
584 0312 0FBE sts (TWI_task_first)+1,r25
585 0314 0F90 sts TWI_task_first,r24
586 0316 1F90 rjmp .L42
587 0318 1895 .L23:
589 .LM37:
590 sts string_index.1269,__zero_reg__
592 .LM38:
593 lds r30,TWI_slave_send
594 lds r31,(TWI_slave_send)+1
595 ldd __tmp_reg__,Z+3
596 ldd r31,Z+4
597 mov r30,__tmp_reg__
598 ldi r24,lo8(-1)
599 0000 0000 st Z,r24
600 .L24:
602 .LM39:
603 lds r25,string_index.1269
604 lds r30,TWI_slave_send
605 0002 0000 lds r31,(TWI_slave_send)+1
606 ld r24,Z
607 cp r25,r24
608 brsh .L38
610 .LM40:
611 0004 0000 ldd __tmp_reg__,Z+1
612 ldd r31,Z+2
613 mov r30,__tmp_reg__
614 add r30,r25
615 adc r31,__zero_reg__
616 ld r24,Z
617 0006 0000 out 35-32,r24
618 subi r25,lo8(-(1))
619 sts string_index.1269,r25
620 rjmp .L12
621 .L38:
623 0008 0000 .LM41:
624 out 35-32,__zero_reg__
625 rjmp .L12
626 .L51:
628 .LM42:
629 lds r30,TWI_slave_send
630 lds r31,(TWI_slave_send)+1
631 rjmp .L48
632 .L20:
DEFINED SYMBOLS
*ABS*:00000000 twi.c
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:2 *ABS*:0000003f __SREG__
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:3 *ABS*:0000003e __SP_H__
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:4 *ABS*:0000003d __SP_L__
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:5 *ABS*:00000034 __CCP__
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:6 *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:7 *ABS*:00000001 __zero_reg__
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:77 .text:00000000 TWI_initialize
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:111 .text:0000000e TWI_master_initialize
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:143 .text:0000002a TWI_slave_initialize
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:616 .bss:00000006 TWI_slave_send
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:622 .bss:00000008 TWI_slave_receive
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:174 .text:00000044 TWI_master
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:598 .bss:00000000 TWI_task_first
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:610 .bss:00000004 TWI_task_current
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:604 .bss:00000002 TWI_task_last
C:\DOCUME~1\wht\LOCALS~1\Temp/ccooArjk.s:218 .text:00000088 __vector_17
.bss:0000000a string_index.1269
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__divmodsi4
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -