📄 39vf400.lst
字号:
39vf400.asm PAGE 11
505 .line 25
506 ;>>>> flag = Check_Toggle_Ready(Temp);
507 00b4 83a0 SAR AR3,*+
508 00b5 7a80 CALL _Check_Toggle_Ready
00b6 011c'
509 00b7 8b9a MAR *-,AR2
510 00b8 b202 LARK AR2,2
511 00b9 8be0 MAR *0+
512 00ba 9080 SACL *
513 .line 26
514 ;>>>> cs_flash_1;
515 00bb bf80 LACK 64511
00bc fbff
516 00bd bc00! LDPK _MCRC
517 00be 6e00! AND _MCRC
518 00bf 9000! SACL _MCRC
519 00c0 bf80 LACK 1028
00c1 0404
520 00c2 bc00! LDPK _PFDATDIR
521 00c3 6d00! OR _PFDATDIR
522 00c4 9000! SACL _PFDATDIR
523 .line 27
524 ;>>>> if(flag) return 1;
525 00c5 1080 LAC *
526 00c6 e388 BZ L3
00c7 00cb'
527 00c8 b901 LACK 1
528 00c9 7980 B EPI0_3
00ca 00cc'
529 00cb L3:
530 .line 28
531 ;>>>> else return 0;
532 00cb b900 LACK 0
533 00cc EPI0_3:
534 .line 29
535 00cc 8b89 MAR * ,AR1
536 00cd 7c04 SBRK 4
537 00ce 0090 LAR AR0,*-
538 00cf 7680 PSHD *
539 00d0 ef00 RET
540
541 .endfunc 146,000000000H,3
542
543 .sym _Program_One_Word,_Program_One_Word,46,2,0
544 .globl _Program_One_Word
545
546 .func 208
547 ;>>>> uint Program_One_Word (uint SrcWord, uint *Dst)
548 ******************************************************
549 * FUNCTION DEF : _Program_One_Word
550 ******************************************************
551 00d1 _Program_One_Word:
552
553 0000 LF4 .set 0
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00 Thu Dec 8 11:06:36 2005
Copyright (c) 1987-1999 Texas Instruments Incorporated
39vf400.asm PAGE 12
554
555 00d1 8aa0 POPD *+
556 00d2 80a0 SAR AR0,*+
557 00d3 8180 SAR AR1,*
558 00d4 b004 LARK AR0,4
559 00d5 00ea LAR AR0,*0+,AR2
560
561 .sym _SrcWord,-3+LF4,14,9,16
562 .sym _Dst,-4+LF4,30,9,16
563 .sym _Temp,1,30,1,16
564 .sym _DestBuf,2,30,1,16
565 .sym _flag,3,14,1,16
566 .line 2
567 ;>>>> uint *Temp;
568 ;>>>> uint *DestBuf;
569 .line 5
570 ;>>>> uint flag = 1;
571 00d6 b901 LACK 1
572 00d7 b203 LARK AR2,3
573 00d8 8be0 MAR *0+
574 00d9 9080 SACL *
575 .line 7
576 ;>>>> cs_flash_0;
577 00da bf80 LACK 64511
00db fbff
578 00dc bc00! LDPK _MCRC
579 00dd 6e00! AND _MCRC
580 00de 9000! SACL _MCRC
581 00df bf80 LACK 1024
00e0 0400
582 00e1 bc00! LDPK _PFDATDIR
583 00e2 6d00! OR _PFDATDIR
584 00e3 9000! SACL _PFDATDIR
585 00e4 bf80 LACK 65531
00e5 fffb
586 00e6 6e00! AND _PFDATDIR
587 00e7 9000! SACL _PFDATDIR
588 .line 8
589 ;>>>> DestBuf = Dst;
590 00e8 7c07 SBRK 7-LF4
591 00e9 1080 LAC *
592 00ea 7806 ADRK 6-LF4
593 00eb 9090 SACL *-
594 .line 9
595 ;>>>> Temp = (uint *)(BaseAddr+0x5555); // address 555h
596 00ec ae80 SPLK #54613,*
00ed d555
597 .line 10
598 ;>>>> *Temp = 0xAAAA; // 0xAAAA
599 00ee 038b LAR AR3,* ,AR3
600 00ef ae8a SPLK #43690,* ,AR2
00f0 aaaa
601 .line 12
602 ;>>>> Temp = (uint *)(BaseAddr+0x2AAA); //address 2AAAh
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00 Thu Dec 8 11:06:36 2005
Copyright (c) 1987-1999 Texas Instruments Incorporated
39vf400.asm PAGE 13
603 00f1 ae80 SPLK #43690,*
00f2 aaaa
604 .line 13
605 ;>>>> *Temp = 0x5555; //0x5555
606 00f3 038b LAR AR3,* ,AR3
607 00f4 ae8a SPLK #21845,* ,AR2
00f5 5555
608 .line 15
609 ;>>>> Temp = (uint *)(BaseAddr+0x5555); //address 5555h
610 00f6 ae80 SPLK #54613,*
00f7 d555
611 .line 16
612 ;>>>> *Temp = 0xA0A0; //0xA0A0
613 00f8 03ab LAR AR3,*+,AR3
614 00f9 ae8a SPLK #41120,* ,AR2
00fa a0a0
615 .line 18
616 ;>>>> *DestBuf = SrcWord;
617 00fb 0480 LAR AR4,*
618 00fc 7c05 SBRK 5-LF4
619 00fd 108c LAC * ,AR4
620 00fe 9089 SACL * ,AR1
621 .line 20
622 ;>>>> cs_flash_1;
623 00ff bf80 LACK 64511
0100 fbff
624 0101 bc00! LDPK _MCRC
625 0102 6e00! AND _MCRC
626 0103 9000! SACL _MCRC
627 0104 bf80 LACK 1028
0105 0404
628 0106 bc00! LDPK _PFDATDIR
629 0107 6d00! OR _PFDATDIR
630 0108 9000! SACL _PFDATDIR
631 .line 21
632 ;>>>> flag = Check_Toggle_Ready(DestBuf); // wait for TOGGLE bit to get ready
633 0109 84a0 SAR AR4,*+
634 010a 7a80 CALL _Check_Toggle_Ready
010b 011c'
635 010c 8b9a MAR *-,AR2
636 010d b203 LARK AR2,3
637 010e 8be0 MAR *0+
638 010f 9080 SACL *
639 .line 23
640 ;>>>> if(flag) return 1;
641 0110 1080 LAC *
642 0111 e388 BZ L4
0112 0116'
643 0113 b901 LACK 1
644 0114 7980 B EPI0_4
0115 0117'
645 0116 L4:
646 .line 24
647 ;>>>> else return 0;
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00 Thu Dec 8 11:06:36 2005
Copyright (c) 1987-1999 Texas Instruments Incorporated
39vf400.asm PAGE 14
648 0116 b900 LACK 0
649 0117 EPI0_4:
650 .line 25
651 0117 8b89 MAR * ,AR1
652 0118 7c05 SBRK 5
653 0119 0090 LAR AR0,*-
654 011a 7680 PSHD *
655 011b ef00 RET
656
657 .endfunc 232,000000000H,4
658
659 .sym _Check_Toggle_Ready,_Check_Toggle_Ready,46,2,0
660 .globl _Check_Toggle_Ready
661
662 .func 310
663 ;>>>> uint Check_Toggle_Ready (uint *Dst)
664 ******************************************************
665 * FUNCTION DEF : _Check_Toggle_Ready
666 ******************************************************
667 011c _Check_Toggle_Ready:
668
669 0000 LF5 .set 0
670
671 011c 8aa0 POPD *+
672 011d 80a0 SAR AR0,*+
673 011e 8180 SAR AR1,*
674 011f b006 LARK AR0,6
675 0120 00ea LAR AR0,*0+,AR2
676
677 .sym _Dst,-3+LF5,30,9,16
678 .sym _Loop,1,12,1,16
679 .sym _PreData,2,14,1,16
680 .sym _CurrData,3,14,1,16
681 .sym _TimeOut,4,15,1,32
682 .line 2
683 .line 3
684 ;>>>> uchar Loop = TRUE;
685 ;>>>> uint PreData;
686 ;>>>> uint CurrData;
687 0121 b901 LACK 1
688 0122 b201 LARK AR2,1
689 0123 8be0 MAR *0+
690 0124 9080 SACL *
691 .line 6
692 ;>>>> unsigned long TimeOut = 0;
693 0125 b900 LACK 0
694 0126 7803 ADRK 3
695 0127 90a0 SACL *+
696 0128 9880 SACH *
697 .line 8
698 ;>>>> cs_flash_0;
699 0129 bf80 LACK 64511
012a fbff
700 012b bc00! LDPK _MCRC
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00 Thu Dec 8 11:06:36 2005
Copyright (c) 1987-1999 Texas Instruments Incorporated
39vf400.asm PAGE 15
701 012c 6e00! AND _MCRC
702 012d 9000! SACL _MCRC
703 012e bf80 LACK 1024
012f 0400
704 0130 bc00! LDPK _PFDATDIR
705 0131 6d00! OR _PFDATDIR
706 0132 9000! SACL _PFDATDIR
707 0133 bf80 LACK 65531
0134 fffb
708 0135 6e00! AND _PFDATDIR
709 0136 9000! SACL _PFDATDIR
710 .line 9
711 ;>>>> PreData = *Dst;
712 0137 7c08 SBRK 8-LF5
713 0138 038b LAR AR3,* ,AR3
714 0139 108a LAC * ,AR2
715 013a 7805 ADRK 5-LF5
716 013b 9080 SACL *
717 .line 10
718 ;>>>> PreData = PreData & 0x4040;
719 013c bf80 LACK 16448
013d 4040
720 013e 6e80 AND *
721 013f 9090 SACL *-
722 .line 11
723 ;>>>> while (Loop)
724 0140 1080 LAC *
725 0141 e388 BZ L6
0142 017b'
726 0143 7c04 SBRK 4-LF5
727 0144 L5:
728 .line 13
729 ;>>>> CurrData = *Dst;
730 0144 038b LAR AR3,* ,AR3
731 0145 108a LAC * ,AR2
732 0146 7806 ADRK 6-LF5
733 0147 9080 SACL *
734 .line 14
735 ;>>>> CurrData = CurrData & 0x4040;
736 0148 bf80 LACK 16448
0149 4040
737 014a 6e80 AND *
738 014b 9090 SACL *-
739 .line 15
740 ;>>>> if (PreData == CurrData)
741 014c 10a0 LAC *+
742 014d 3080 SUB *
743 014e e308 BNZ L7
014f 0153'
744 .line 16
745 ;>>>> Loop = FALSE; /* ready to exit the while loop */
746 0150 b900 LACK 0
747 0151 7c02 SBRK 2
748 0152 9080 SACL *
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00 Thu Dec 8 11:06:36 2005
Copyright (c) 1987-1999 Texas Instruments Incorporated
39vf400.asm PAGE 16
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -