?? main.lst
字號:
398 _
399 subi r18,lo8(-(8))
400 00c4 2DB7 sbci r19,hi8(-(8))
401 00c6 3EB7 in __tmp_reg__,__SREG__
402 00c8 285F cli
403 00ca 3F4F out __SP_H__,r19
404 00cc 0FB6 out __SREG__,__tmp_reg__
405 00ce F894 out __SP_L__,r18
406 00d0 3EBF call cc2420_enablefifop
407 00d2 0FBE .LBB7:
409 00d6 0E94 0000 .LM21:
410 ldi r21,lo8(23)
174:main.c **** while(1) {
175:main.c **** //wdt_reset();
176:main.c **** //OS_run_task();
177:main.c **** //network layer management
178:main.c **** switch(mac_current_state)
179:main.c **** {
180:main.c **** case MAC_STATE_UNSTARTED:
181:main.c **** //printf("\n----START TO FORM NETWORK----\n");
182:main.c **** MAC_init();
183:main.c **** mlmeResetRequest(TRUE);
184:main.c **** IS_NETWORK_FORMED=FALSE;
185:main.c **** mlmeScanRequest(ED_SCAN, 0x00000008, 6);
186:main.c **** //for(index=0;index<scan_result_info.resultListSize;index++)
187:main.c **** // //printf("%8d\n",scan_result_info.pEnergyDetectList[index]);
188:main.c **** break;
189:main.c **** case MAC_STATE_ENERGY_SCAN_FINISHED:
190:main.c **** mlmeScanRequest(ACTIVE_PASSIVE_SCAN, 0x00000008, 6);
191:main.c **** break;
192:main.c **** case MAC_STATE_ACTIVE_PASSIVE_SCAN_FINISHED:
193:main.c **** if(!IS_COORDINATOR)
194:main.c **** mlmeSyncRequest(ppib.phyCurrentChanel,TRUE);
195:main.c **** //mac_current_state=MAC_STATE_SYNING;
196:main.c **** else
197:main.c **** {
198:main.c **** cc2420_setshortaddress((uint16_t)mac_pib_data.macShortAddress.Val);
199:main.c **** cc2420_setpanid((uint16_t)mac_pib_data.macPANId.Val);
200:main.c **** mlmeStartRequest(mac_pib_data.macPANId,3, mac_pib_data.macBeaconOrder, mac_pib_data.macSuperf
201:main.c **** }
202:main.c **** break;
203:main.c **** case MAC_STATE_SYNING_END:
204:main.c **** if(!IS_NETWORK_FORMED)
205:main.c **** {
206:main.c **** //if(phy_channel_state==PHY_IDLE)
207:main.c **** //printf("\nstart to do the associate\n");
208:main.c **** //mac_current_state=MAC_STATE_IDLE;
209:main.c **** temp_node.bytes=0x88;
210:main.c **** temp_addr.Short=mac_pib_data.macCoordShortAddress;
211:main.c **** mlmeAssociateRequest(ppib.phyCurrentChanel, 0x02, mac_pib_data.macPANId,temp_addr , temp_no
212:main.c **** //IS_FIRST
213:main.c **** }
214:main.c **** else
215:main.c **** {
216:main.c **** if(DATA_READY)
217:main.c **** {
218:main.c **** //printf("\n---sensor data sent--\n");
219:main.c **** //---------------------------------------
220:main.c **** //---------------------------------------
221:main.c **** NODE_INFO dst;
222:main.c **** NODE_INFO src;
223:main.c **** uint8_t msdulength;
224:main.c **** BYTE * pMsdu;
225:main.c **** BYTE msduhandle;
226:main.c **** BYTE txOptions;
227:main.c **** dst.addrMode=0x02;
228:main.c **** dst.shortAddr=mac_pib_data.macCoordShortAddress;
229:main.c **** dst.panID=mac_pib_data.macPANId;
230:main.c **** src.addrMode=0x03;
231:main.c **** src.longAddr=mac_pib_data.macExtAddress;
411 mov r5,__zero_reg__
412 add r4,r28
413 00da 57E1 adc r5,r29
415 00de 512C .LM22:
416 00e0 4C0E ldi r20,lo8(22)
417 00e2 5D1E mov r2,r20
232:main.c **** src.panID=mac_pib_data.macPANId;
233:main.c **** msdulength=20;
234:main.c **** pMsdu=(BYTE *)SENSOR_DATA_VALUE;
235:main.c **** msduhandle=0;
236:main.c **** txOptions=0x01;
237:main.c **** mcpsDataRequest(dst, src, msdulength, pMsdu, msduhandle, txOptions);
418 ,__zero_reg__
419 add r2,r28
420 00e4 46E1 adc r3,r29
421 00e6 242E ldi r19,lo8(20)
422 00e8 312C mov r11,r19
423 00ea 2C0E ldi r18,lo8(SENSOR_DATA_VALUE)
424 00ec 3D1E mov r6,r18
425 00ee 34E1 ldi r18,hi8(SENSOR_DATA_VALUE)
426 00f0 B32E mov r7,r18
427 00f2 20E0 .L28:
428 00f4 622E .LBE7:
430 00f8 722E .LM23:
431 lds r24,mac_current_state
432 cpi r24,lo8(6)
433 breq .L9
434 cpi r24,lo8(7)
435 00fa 8091 0000 brsh .L13
436 00fe 8630 tst r24
437 0100 01F0 breq .L7
438 0102 8730 cpi r24,lo8(4)
439 0104 00F4 breq .+2
440 0106 8823 rjmp .L6
441 0108 01F0 rjmp .L38
442 010a 8430 .L13:
443 010c 01F0 cpi r24,lo8(15)
444 010e 00C0 breq .L11
445 0110 00C0 cpi r24,lo8(18)
446 brne .+2
447 0112 8F30 rjmp .L12
448 0114 01F0 cpi r24,lo8(10)
449 0116 8231 breq .+2
450 0118 01F4 rjmp .L6
451 011a 00C0 rjmp .L39
452 011c 8A30 .L7:
454 0120 00C0 .LM24:
455 0122 00C0 call MAC_init
457 .LM25:
458 ldi r24,lo8(1)
459 0124 0E94 0000 call mlmeResetRequest
461 .LM26:
462 0128 81E0 sts IS_NETWORK_FORMED,__zero_reg__
464 .LM27:
465 ldi r24,lo8(0)
466 012e 1092 0000 rjmp .L37
467 .L9:
469 0132 80E0 .LM28:
470 0134 00C0 ldi r24,lo8(1)
471 .L37:
472 ldi r20,lo8(8)
473 ldi r21,hi8(8)
474 0136 81E0 ldi r22,hlo8(8)
475 ldi r23,hhi8(8)
476 0138 48E0 ldi r18,lo8(6)
477 013a 50E0 call mlmeScanRequest
478 013c 60E0 rjmp .L6
479 013e 70E0 .L39:
481 0142 0E94 0000 .LM29:
482 0146 00C0 lds r24,mac_pib_data+32
483 lds r25,(mac_pib_data+32)+1
484 call cc2420_setshortaddress
486 0148 8091 0000 .LM30:
487 014c 9091 0000 lds r24,mac_pib_data+28
488 0150 0E94 0000 lds r25,(mac_pib_data+28)+1
489 call cc2420_setpanid
491 0154 8091 0000 .LM31:
492 0158 9091 0000 lds r24,mac_pib_data+28
493 015c 0E94 0000 lds r25,(mac_pib_data+28)+1
494 ldi r22,lo8(3)
495 lds r20,mac_pib_data+8
496 0160 8091 0000 lds r18,mac_pib_data+42
497 0164 9091 0000 ldi r16,lo8(1)
498 0168 63E0 lds r14,mac_pib_data+3
499 016a 4091 0000 clr r12
500 016e 2091 0000 clr r10
501 0172 01E0 clr r8
502 0174 E090 0000 clr r9
503 0178 CC24 call mlmeStartRequest
504 017a AA24 rjmp .L6
505 017c 8824 .L11:
507 0180 0E94 0000 .LM32:
508 0184 00C0 lds r24,IS_NETWORK_FORMED
509 tst r24
510 brne .L14
512 0186 8091 0000 .LM33:
513 018a 8823 lds r24,mac_pib_data+22
514 018c 01F4 lds r25,mac_pib_data+23
515 mov r12,r24
516 std Y+1,r24
517 018e 8091 0000 std Y+2,r25
519 0196 C82E .LM34:
520 0198 8983 lds r20,mac_pib_data+28
521 019a 9A83 lds r21,(mac_pib_data+28)+1
522 lds r24,ppib
523 ldi r22,lo8(2)
524 019c 4091 0000 mov r13,r25
525 01a0 5091 0000 ldd r14,Y+3
526 01a4 8091 0000 ldd r15,Y+4
527 01a8 62E0 ldd r16,Y+5
528 01aa D92E ldd r17,Y+6
529 01ac EB80 ldd r18,Y+7
530 01ae FC80 ldd r19,Y+8
531 01b0 0D81 ldi r25,lo8(-120)
532 01b2 1E81 mov r10,r25
533 01b4 2F81 clr r8
534 01b6 3885 call mlmeAssociateRequest
535 01b8 98E8 rjmp .L6
536 01ba A92E .L14:
538 01be 0E94 0000 .LM35:
539 01c2 00C0 lds r24,DATA_READY
540 tst r24
541 brne .+2
542 rjmp .L6
543 01c4 8091 0000 .LBB8:
545 01ca 01F4 .LM36:
546 01cc 00C0 ldi r19,lo8(2)
547 std Y+9,r19
549 .LM37:
550 01ce 32E0 lds r24,mac_pib_data+22
551 01d0 3987 lds r25,mac_pib_data+23
552 std Y+18,r24
553 std Y+19,r25
555 01d6 9091 0000 .LM38:
556 01da 8A8B lds r24,mac_pib_data+28
557 01dc 9B8B lds r25,(mac_pib_data+28)+1
558 std Y+21,r25
559 std Y+20,r24
561 01e2 9091 0000 .LM39:
562 01e6 9D8B ldi r24,lo8(3)
563 01e8 8C8B std Y+22,r24
565 .LM40:
566 01ea 83E0 movw r26,r4
567 01ec 8E8B ldi r30,lo8(mac_pib_data+34)
568 ldi r31,hi8(mac_pib_data+34)
569 ldi r24,lo8(8)
570 01ee D201 .L15:
571 01f0 E0E0 ld r0,Z+
572 01f2 F0E0 st X+,r0
573 01f4 88E0 subi r24,lo8(-(-1))
574 brne .L15
576 01f8 0D92 .LM41:
577 01fa 8150 lds r24,mac_pib_data+28
578 01fc 01F4 lds r25,(mac_pib_data+28)+1
579 std Y+34,r25
580 std Y+33,r24
582 0202 9091 0000 .LM42:
583 0206 9AA3 in r26,__SP_L__
584 0208 89A3 in r27,__SP_H__
585 sbiw r26,18
586 in __tmp_reg__,__SREG__
587 020a ADB7 cli
588 020c BEB7 out __SP_H__,r27
589 020e 5297 out __SREG__,__tmp_reg__
590 0210 0FB6 out __SP_L__,r26
591 0212 F894 in r30,__SP_L__
592 0214 BEBF in r31,__SP_H__
593 0216 0FBE adiw r30,1
594 0218 ADBF movw r18,r30
595 021a EDB7 movw r20,r2
596 021c FEB7 ldi r24,lo8(13)
597 021e 3196 .L16:
598 0220 9F01 movw r26,r20
599 0222 A101 ld r0,X+
600 0224 8DE0 movw r20,r26
601 movw r26,r18
602 0226 DA01 st X+,r0
603 0228 0D90 movw r18,r26
604 022a AD01 subi r24,lo8(-(-1))
605 022c D901 brne .L16
606 022e 0D92 std Z+13,r11
607 0230 9D01 std Z+15,r7
608 0232 8150 std Z+14,r6
609 0234 01F4 std Z+16,__zero_reg__
610 0236 B586 ldi r24,lo8(1)
611 0238 7786 std Z+17,r24
612 023a 6686 ldd r12,Y+9
613 023c 108A ldd r13,Y+10
614 023e 81E0 ldd r14,Y+11
615 0240 818B ldd r15,Y+12
616 0242 C984 ldd r16,Y+13
617 0244 DA84 ldd r17,Y+14
618 0246 EB84 ldd r18,Y+15
619 0248 FC84 ldd r19,Y+16
620 024a 0D85 ldd r20,Y+17
621 024c 1E85 ldd r21,Y+18
622 024e 2F85 ldd r22,Y+19
623 0250 3889 ldd r23,Y+20
624 0252 4989 ldd r24,Y+21
625 0254 5A89 call mcpsDataRequest
626 0256 6B89 in r18,__SP_L__
627 0258 7C89 in r19,__SP_H__
628 025a 8D89 subi r18,lo8(-(18))
629 025c 0E94 0000 sbci r19,hi8(-(18))
630 0260 2DB7 in __tmp_reg__,__SREG__
631 0262 3EB7 cli
632 0264 2E5E out __SP_H__,r19
633 0266 3F4F out __SREG__,__tmp_reg__
634 0268 0FB6 out __SP_L__,r18
635 026a F894 rjmp .L6
636 026c 3EBF .L38:
637 026e 0FBE .LBE8:
639 0272 00C0 .LM43:
640 lds r24,head_of_rx_buffer
641 lds r25,(head_of_rx_buffer)+1
238:main.c **** //mac_current_state=MAC_STATE_START_TO_SLEEP;
239:main.c **** }
240:main.c **** }
241:main.c **** break;
242:main.c **** case MAC_STATE_ASSOC_FINISHED:
243:main.c **** //網絡已經建立完成,可以啟動ADC傳感器采樣
244:main.c **** if((!head_of_rx_buffer)&&(!head_of_tx_buffer)&&(!head_of_timer_queue))
642 :
643 ldi r24,lo8(1)
644 0274 8091 0000 sts IS_NETWORK_FORMED,r24
645 0278 9091 0000 .L17:
647 027e 01F4 .LM45:
648 0280 8091 0000 ldi r19,lo8(18)
649 0284 9091 0000 sts mac_current_state,r19
650 0288 892B rjmp .L6
651 028a 01F4 .L12:
653 0290 9091 0000 .LM46:
654 0294 892B ldi r24,lo8(3)
655 0296 01F4 call PLME_SET_TRX_STATE_request
245:main.c **** //printf("\nnetwork successful formed\n");
246:main.c **** IS_NETWORK_FORMED=TRUE;
656 62,.LM47-.LFBB2
657 .LM47:
658 0298 81E0 sts DATA_READY,__zero_reg__
660 .LM48:
247:main.c **** mac_current_state=MAC_STATE_IDLE;
248:main.c **** //break;
249:main.c **** //test orphan scan & unicast coordinator realignment frame
250:main.c **** //mlmeScanRequest(ORPHAN_SCAN, 0x00000008, 0);
251:main.c ****
252:main.c **** //test PANID conflict & broadcast coordinator realignment frame
253:main.c **** //panid_confilct_frame_send();
254:main.c ****
255:main.c **** //test Disassociation from the RFD
256:main.c **** //mlmeDisassociateRequest(default_long_addr, 0x02, FALSE);
257:main.c **** mac_current_state=MAC_STATE_START_TO_SLEEP;
661 r24,lo8(0)
662 ldi r22,lo8(1)
663 029e 32E1 ldi r18,lo8(1024)
664 02a0 3093 0000 ldi r19,hi8(1024)
665 02a4 00C0 ldi r20,hlo8(1024)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -