📄 main.lst
字号:
405 00ae F894 cli
406 00b0 9EBF out __SP_H__,r25
407 00b2 0FBE out __SREG__,__tmp_reg__
408 00b4 8DBF out __SP_L__,r24
409 .L13:
175:main.c **** //wdt_reset();
176:main.c **** //OS_run_task();
177:main.c **** //network layer management
178:main.c **** switch(mac_current_state)
411 .LM29:
412 00b6 8091 0000 lds r24,mac_current_state
413 00ba 9927 clr r25
414 00bc 8630 cpi r24,6
415 00be 9105 cpc r25,__zero_reg__
416 00c0 09F4 brne .+2
417 00c2 3FC0 rjmp .L17
418 00c4 8730 cpi r24,7
419 00c6 9105 cpc r25,__zero_reg__
420 00c8 34F4 brge .L44
421 00ca 0097 sbiw r24,0
422 00cc 91F0 breq .L16
423 00ce 0497 sbiw r24,4
424 00d0 09F4 brne .+2
425 00d2 DFC0 rjmp .L25
426 00d4 7AC1 rjmp .L15
427 .L44:
428 00d6 8F30 cpi r24,15
429 00d8 9105 cpc r25,__zero_reg__
430 00da 09F4 brne .+2
431 00dc 62C0 rjmp .L21
432 00de 8031 cpi r24,16
433 00e0 9105 cpc r25,__zero_reg__
434 00e2 1CF4 brge .L45
435 00e4 0A97 sbiw r24,10
436 00e6 B1F1 breq .L18
437 00e8 70C1 rjmp .L15
438 .L45:
439 00ea 4297 sbiw r24,18
440 00ec 09F4 brne .+2
441 00ee EEC0 rjmp .L27
442 00f0 6CC1 rjmp .L15
443 .L16:
179:main.c **** {
180:main.c **** case MAC_STATE_UNSTARTED:
181:main.c **** printf("\n----START TO FORM NETWORK----\n");
445 .LM30:
446 00f2 80E0 ldi r24,lo8(.LC1)
447 00f4 90E0 ldi r25,hi8(.LC1)
448 00f6 0E94 0000 call puts
182:main.c **** MAC_init();
450 .LM31:
451 00fa 0E94 0000 call MAC_init
183:main.c **** mlmeResetRequest(TRUE);
453 .LM32:
454 00fe 81E0 ldi r24,lo8(1)
455 0100 0E94 0000 call mlmeResetRequest
184:main.c **** IS_NETWORK_FORMED=FALSE;
457 .LM33:
458 0104 1092 0000 sts IS_NETWORK_FORMED,__zero_reg__
185:main.c **** mlmeScanRequest(ED_SCAN, 0x00000008, 6);
460 .LM34:
461 0108 26E0 ldi r18,lo8(6)
462 010a 48E0 ldi r20,lo8(8)
463 010c 50E0 ldi r21,hi8(8)
464 010e 60E0 ldi r22,hlo8(8)
465 0110 70E0 ldi r23,hhi8(8)
466 0112 80E0 ldi r24,lo8(0)
467 0114 0E94 0000 call mlmeScanRequest
186:main.c **** //for(index=0;index<scan_result_info.resultListSize;index++)
187:main.c **** printf("%8d\n",scan_result_info.pEnergyDetectList[index]);
469 .LM35:
470 0118 EB2D mov r30,r11
471 011a FF27 clr r31
472 011c E050 subi r30,lo8(-(scan_result_info))
473 011e F040 sbci r31,hi8(-(scan_result_info))
474 0120 8781 ldd r24,Z+7
475 0122 9927 clr r25
476 0124 87FD sbrc r24,7
477 0126 9095 com r25
478 0128 9F93 push r25
479 012a 8F93 push r24
480 012c 80E0 ldi r24,lo8(.LC2)
481 012e 90E0 ldi r25,hi8(.LC2)
482 0130 9F93 push r25
483 0132 8F93 push r24
484 0134 0E94 0000 call printf
188:main.c **** break;
486 .LM36:
487 0138 0F90 pop __tmp_reg__
488 013a 0F90 pop __tmp_reg__
489 013c 0F90 pop __tmp_reg__
490 013e 0F90 pop __tmp_reg__
491 0140 44C1 rjmp .L15
492 .L17:
189:main.c **** case MAC_STATE_ENERGY_SCAN_FINISHED:
190:main.c **** mlmeScanRequest(ACTIVE_PASSIVE_SCAN, 0x00000008, 6);
494 .LM37:
495 0142 26E0 ldi r18,lo8(6)
496 0144 48E0 ldi r20,lo8(8)
497 0146 50E0 ldi r21,hi8(8)
498 0148 60E0 ldi r22,hlo8(8)
499 014a 70E0 ldi r23,hhi8(8)
500 014c 81E0 ldi r24,lo8(1)
501 014e 0E94 0000 call mlmeScanRequest
191:main.c ****
192:main.c **** break;
503 .LM38:
504 0152 3BC1 rjmp .L15
505 .L18:
193:main.c **** case MAC_STATE_ACTIVE_PASSIVE_SCAN_FINISHED:
194:main.c **** printf("ok\n");
507 .LM39:
508 0154 80E0 ldi r24,lo8(.LC3)
509 0156 90E0 ldi r25,hi8(.LC3)
510 0158 0E94 0000 call puts
195:main.c **** if(!IS_COORDINATOR)
196:main.c **** mlmeSyncRequest(ppib.phyCurrentChanel,TRUE);
197:main.c **** //mac_current_state=MAC_STATE_SYNING;
198:main.c **** else
199:main.c **** {
200:main.c **** printf("ok1\n");
512 .LM40:
513 015c 80E0 ldi r24,lo8(.LC4)
514 015e 90E0 ldi r25,hi8(.LC4)
515 0160 0E94 0000 call puts
201:main.c **** cc2420_setshortaddress((uint16_t)mac_pib_data.macShortAddress.Val);
517 .LM41:
518 0164 8091 0000 lds r24,mac_pib_data+32
519 0168 9091 0000 lds r25,(mac_pib_data+32)+1
520 016c 0E94 0000 call cc2420_setshortaddress
202:main.c **** cc2420_setpanid((uint16_t)mac_pib_data.macPANId.Val);
522 .LM42:
523 0170 8091 0000 lds r24,mac_pib_data+28
524 0174 9091 0000 lds r25,(mac_pib_data+28)+1
525 0178 0E94 0000 call cc2420_setpanid
203:main.c **** mlmeStartRequest(mac_pib_data.macPANId,3, mac_pib_data.macBeaconOrder, mac_pib_data.macSuperf
527 .LM43:
528 017c 8824 clr r8
529 017e 9924 clr r9
530 0180 AA24 clr r10
531 0182 CA2C mov r12,r10
532 0184 E090 0000 lds r14,mac_pib_data+3
533 0188 01E0 ldi r16,lo8(1)
534 018a 2091 0000 lds r18,mac_pib_data+42
535 018e 4091 0000 lds r20,mac_pib_data+8
536 0192 63E0 ldi r22,lo8(3)
537 0194 8091 0000 lds r24,mac_pib_data+28
538 0198 9091 0000 lds r25,(mac_pib_data+28)+1
539 019c 0E94 0000 call mlmeStartRequest
204:main.c **** }
205:main.c **** break;
541 .LM44:
542 01a0 14C1 rjmp .L15
543 .L21:
206:main.c **** case MAC_STATE_SYNING_END:
207:main.c **** printf("ok2\n");
545 .LM45:
546 01a2 80E0 ldi r24,lo8(.LC5)
547 01a4 90E0 ldi r25,hi8(.LC5)
548 01a6 0E94 0000 call puts
208:main.c **** if(!IS_NETWORK_FORMED)
550 .LM46:
551 01aa 8090 0000 lds r8,IS_NETWORK_FORMED
552 01ae 8820 tst r8
553 01b0 D1F4 brne .L22
209:main.c **** {
210:main.c **** //if(phy_channel_state==PHY_IDLE)
211:main.c **** //printf("\nstart to do the associate\n");
212:main.c **** //mac_current_state=MAC_STATE_IDLE;
213:main.c **** temp_node.bytes=0x88;
214:main.c **** temp_addr.Short=mac_pib_data.macCoordShortAddress;
555 .LM47:
556 01b2 8091 0000 lds r24,mac_pib_data+22
557 01b6 9091 0000 lds r25,(mac_pib_data+22)+1
558 01ba 8983 std Y+1,r24
559 01bc 9A83 std Y+2,r25
215:main.c **** mlmeAssociateRequest(ppib.phyCurrentChanel, 0x02, mac_pib_data.macPANId,temp_addr , temp_no
561 .LM48:
562 01be 88E8 ldi r24,lo8(-120)
563 01c0 A82E mov r10,r24
564 01c2 C980 ldd r12,Y+1
565 01c4 DA80 ldd r13,Y+2
566 01c6 EB80 ldd r14,Y+3
567 01c8 FC80 ldd r15,Y+4
568 01ca 0D81 ldd r16,Y+5
569 01cc 1E81 ldd r17,Y+6
570 01ce 2F81 ldd r18,Y+7
571 01d0 3885 ldd r19,Y+8
572 01d2 4091 0000 lds r20,mac_pib_data+28
573 01d6 5091 0000 lds r21,(mac_pib_data+28)+1
574 01da 62E0 ldi r22,lo8(2)
575 01dc 8091 0000 lds r24,ppib
576 01e0 0E94 0000 call mlmeAssociateRequest
577 01e4 F2C0 rjmp .L15
578 .L22:
216:main.c **** //IS_FIRST
217:main.c **** }
218:main.c **** else
219:main.c **** {
220:main.c **** if(DATA_READY)
580 .LM49:
581 01e6 8091 0000 lds r24,DATA_READY
582 01ea 8823 tst r24
583 01ec 09F4 brne .+2
584 01ee EDC0 rjmp .L15
585 .LBB4:
221:main.c **** {
222:main.c **** //printf("\n---sensor data sent--\n");
223:main.c **** //---------------------------------------
224:main.c **** //---------------------------------------
225:main.c **** NODE_INFO dst;
226:main.c **** NODE_INFO src;
227:main.c **** uint8_t msdulength;
228:main.c **** BYTE * pMsdu;
229:main.c **** BYTE msduhandle;
230:main.c **** BYTE txOptions;
231:main.c **** dst.addrMode=0x02;
587 .LM50:
588 01f0 82E0 ldi r24,lo8(2)
589 01f2 8987 std Y+9,r24
232:main.c **** dst.shortAddr=mac_pib_data.macCoordShortAddress;
591 .LM51:
592 01f4 8091 0000 lds r24,mac_pib_data+22
593 01f8 9091 0000 lds r25,(mac_pib_data+22)+1
594 01fc 8A8B std Y+18,r24
595 01fe 9B8B std Y+19,r25
233:main.c **** dst.panID=mac_pib_data.macPANId;
597 .LM52:
598 0200 8091 0000 lds r24,mac_pib_data+28
599 0204 9091 0000 lds r25,(mac_pib_data+28)+1
600 0208 8C8B std Y+20,r24
601 020a 9D8B std Y+21,r25
234:main.c **** src.addrMode=0x03;
603 .LM53:
604 020c 83E0 ldi r24,lo8(3)
605 020e 8E8B std Y+22,r24
235:main.c **** src.longAddr=mac_pib_data.macExtAddress;
607 .LM54:
608 0210 88E0 ldi r24,lo8(8)
609 0212 DE01 movw r26,r28
610 0214 5796 adiw r26,23
611 0216 E0E0 ldi r30,lo8(mac_pib_data+34)
612 0218 F0E0 ldi r31,hi8(mac_pib_data+34)
613 021a 0190 ld __tmp_reg__,Z+
614 021c 0D92 st X+,__tmp_reg__
615 021e 8A95 dec r24
616 0220 E1F7 brne .-8
236:main.c **** src.panID=mac_pib_data.macPANId;
618 .LM55:
619 0222 8091 0000 lds r24,mac_pib_data+28
620 0226 9091 0000 lds r25,(mac_pib_data+28)+1
621 022a 89A3 std Y+33,r24
622 022c 9AA3 std Y+34,r25
237:main.c **** msdulength=20;
238:main.c **** pMsdu=(BYTE *)SENSOR_DATA_VALUE;
239:main.c **** msduhandle=0;
240:main.c **** txOptions=0x01;
241:main.c **** mcpsDataRequest(dst, src, msdulength, pMsdu, msduhandle, txOptions);
624 .LM56:
625 022e 81E0 ldi r24,lo8(1)
626 0230 8F93 push r24
627 0232 1F92 push __zero_reg__
628 0234 80E0 ldi r24,lo8(SENSOR_DATA_VALUE)
629 0236 90E0 ldi r25,hi8(SENSOR_DATA_VALUE)
630 0238 9F93 push r25
631 023a 8F93 push r24
632 023c 84E1 ldi r24,lo8(20)
633 023e 8F93 push r24
634 0240 8DB7 in r24,__SP_L__
635 0242 9EB7 in r25,__SP_H__
636 0244 0D97 sbiw r24,13
637 0246 0FB6 in __tmp_reg__,__SREG__
638 0248 F894 cli
639 024a 9EBF out __SP_H__,r25
640 024c 0FBE out __SREG__,__tmp_reg__
641 024e 8DBF out __SP_L__,r24
642 0250 0196 adiw r24,1
643 0252 2DE0 ldi r18,lo8(13)
644 0254 FC01 movw r30,r24
645 0256 DE01 movw r26,r28
646 0258 5696 adiw r26,22
647 025a 0D90 ld __tmp_reg__,X+
648 025c 0192 st Z+,__tmp_reg__
649 025e 2A95 dec r18
650 0260 E1F7 brne .-8
651 0262 C984 ldd r12,Y+9
652 0264 DA84 ldd r13,Y+10
653 0266 EB84 ldd r14,Y+11
654 0268 FC84 ldd r15,Y+12
655 026a 0D85 ldd r16,Y+13
656 026c 1E85 ldd r17,Y+14
657 026e 2F85 ldd r18,Y+15
658 0270 3889 ldd r19,Y+16
659 0272 4989 ldd r20,Y+17
660 0274 5A89 ldd r21,Y+18
661 0276 6B89 ldd r22,Y+19
662 0278 7C89 ldd r23,Y+20
663 027a 8D89 ldd r24,Y+21
664 027c 0E94 0000 call mcpsDataRequest
665 .LBE4:
666 0280 8DB7 in r24,__SP_L__
667 0282 9EB7 in r25,__SP_H__
668 0284 4296 adiw r24,18
669 0286 0FB6 in __tmp_reg__,__SREG__
670 0288 F894 cli
671 028a 9EBF out __SP_H__,r25
672 028c 0FBE out __SREG__,__tmp_reg__
673 028e 8DBF out __SP_L__,r24
242:main.c **** //mac_current_state=MAC_STATE_START_TO_SLEEP;
243:main.c **** }
244:main.c **** }
245:main.c **** break;
675 .LM57:
676 0290 9CC0 rjmp .L15
677 .L25:
246:main.c **** case MAC_STATE_ASSOC_FINISHED:
247:main.c **** printf("ok3\n");
679 .LM58:
680 0292 80E0 ldi r24,lo8(.LC6)
681 0294 90E0 ldi r25,hi8(.LC6)
682 0296 0E94 0000 call puts
248:main.c **** //网络已经建立完成,可以启动ADC传感器采样
249:main.c **** if((!head_of_rx_buffer)&&(!head_of_tx_buffer)&&(!head_of_timer_queue))
684 .LM59:
685 029a 8091 0000 lds r24,head_of_rx_buffer
686 029e 9091 0000 lds r25,(head_of_rx_buffer)+1
687 02a2 892B or r24,r25
688 02a4 79F4 brne .L26
689 02a6 8091 0000 lds r24,head_of_tx_buffer
690 02aa 9091 0000 lds r25,(head_of_tx_buffer)+1
691 02ae 892B or r24,r25
692 02b0 49F4 brne .L26
693 02b2 8091 0000 lds r24,head_of_timer_queue
694 02b6 9091 0000 lds r25,(head_of_timer_queue)+1
695 02ba 892B or r24,r25
696 02bc 19F4 brne .L26
250:main.c **** //printf("\nnetwork successful formed\n");
251:main.c **** IS_NETWORK_FORMED=TRUE;
698 .LM60:
699 02be 81E0 ldi r24,lo8(1)
700 02c0 8093 0000 sts IS_NETWORK_FORMED,r24
701 .L26:
252:main.c **** mac_current_state=MAC_STATE_IDLE;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -