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

📄 pcf8583.lst

📁 dsp tmslf2407a 汇编,c的原代码,包括i2c,scitimer,fir等的很多程序.
💻 LST
📖 第 1 页 / 共 5 页
字号:
     515 00dc be46          RSXM
     516 00dd 8b8a          MAR     * ,AR2
     517 00de b201          LARK    AR2,1
     518 00df 8be0          MAR     *0+
     519 00e0 1e80          LAC     * ,14
     520 00e1 9980          SACH    * ,1
     521 00e2 1080          LAC     * 
     522 00e3 e308          BNZ     L3
         00e4 009c' 
     523 00e5       L4:
     524 00e5       EPI0_4:
     525                    .line   17
     526 00e5 8b89          MAR     * ,AR1
     527 00e6 7c04          SBRK    4
     528 00e7 0090          LAR     AR0,*-
     529 00e8 7680          PSHD    *
     530 00e9 ef00          RET
     531            
     532                    .endfunc        81,000000000H,3
     533            
     534                    .sym    _Pcf8583Ack,_Pcf8583Ack,44,2,0
     535                    .globl  _Pcf8583Ack
     536            
     537                    .func   85
     538            ;>>>>   uchar Pcf8583Ack()
     539            ******************************************************
     540            * FUNCTION DEF : _Pcf8583Ack
     541            ******************************************************
     542 00ea       _Pcf8583Ack:
     543 00ea 8aa0          POPD    *+
     544 00eb 80a0          SAR     AR0,*+
     545 00ec 8180          SAR     AR1,*
     546 00ed b003          LARK    AR0,3
     547 00ee 00ea          LAR     AR0,*0+,AR2
     548            
     549                    .sym    _sz,1,12,1,16
     550                    .sym    _k,2,12,1,16
     551                    .line   3
     552            ;>>>>           uchar sz, k=0;
     553 00ef b900          LACK    0
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00  Thu Dec  8 11:06:32 2005
Copyright (c) 1987-1999  Texas Instruments Incorporated 
pcf8583.asm                                                          PAGE   12

     554 00f0 b202          LARK    AR2,2
     555 00f1 8be0          MAR     *0+
     556 00f2 9089          SACL    * ,AR1
     557                    .line   4
     558            ;>>>>           sda_1;  //sda = 1
     559 00f3 bf80          LACK    61439
         00f4 efff  
     560 00f5 bc00!         LDPK    _MCRC
     561 00f6 6e00!         AND     _MCRC
     562 00f7 9000!         SACL    _MCRC
     563 00f8 bf80          LACK    4112
         00f9 1010  
     564 00fa bc00!         LDPK    _PFDATDIR
     565 00fb 6d00!         OR      _PFDATDIR
     566 00fc 9000!         SACL    _PFDATDIR
     567                    .line   5
     568            ;>>>>           Pcf8583DelayI2c();
     569 00fd 7a80          CALL    _Pcf8583DelayI2c
         00fe 0023' 
     570                    .line   6
     571            ;>>>>           sda_in; //config sda as input port
     572 00ff bf80          LACK    61439
         0100 efff  
     573 0101 bc00!         LDPK    _MCRC
     574 0102 6e00!         AND     _MCRC
     575 0103 9000!         SACL    _MCRC
     576 0104 bf80          LACK    61439
         0105 efff  
     577 0106 bc00!         LDPK    _PFDATDIR
     578 0107 6e00!         AND     _PFDATDIR
     579 0108 9000!         SACL    _PFDATDIR
     580 0109 b910          LACK    16
     581 010a 6d00!         OR      _PFDATDIR
     582 010b 9000!         SACL    _PFDATDIR
     583                    .line   7
     584            ;>>>>           Pcf8583DelayI2c();
     585 010c 7a80          CALL    _Pcf8583DelayI2c
         010d 0023' 
     586                    .line   8
     587            ;>>>>           scl_1;  //scl = 1
     588 010e bf80          LACK    49151
         010f bfff  
     589 0110 bc00!         LDPK    _MCRA
     590 0111 6e00!         AND     _MCRA
     591 0112 9000!         SACL    _MCRA
     592 0113 bf80          LACK    16448
         0114 4040  
     593 0115 bc00!         LDPK    _PBDATDIR
     594 0116 6d00!         OR      _PBDATDIR
     595 0117 9000!         SACL    _PBDATDIR
     596                    .line   9
     597            ;>>>>           Pcf8583DelayI2c();
     598 0118 7a80          CALL    _Pcf8583DelayI2c
         0119 0023' 
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00  Thu Dec  8 11:06:32 2005
Copyright (c) 1987-1999  Texas Instruments Incorporated 
pcf8583.asm                                                          PAGE   13

     599                    .line   10
     600            ;>>>>           sz = PFDATDIR&0x10;     //test data bit
     601 011a b910          LACK    16
     602 011b bc00!         LDPK    _PFDATDIR
     603 011c 6e00!         AND     _PFDATDIR
     604 011d 8b8a          MAR     * ,AR2
     605 011e b201          LARK    AR2,1
     606 011f 8be0          MAR     *0+
     607 0120 9080          SACL    * 
     608                    .line   11
     609            ;>>>>           if(sz==0x10)    k = 1;  // if data bit is 1,k=1,failed
     610 0121 1080          LAC     * 
     611 0122 ba10          SUBK    16
     612 0123 e308          BNZ     L7
         0124 012a' 
     613 0125 b901          LACK    1
     614 0126 8ba0          MAR     *+
     615 0127 9080          SACL    * 
     616 0128 7980          B       L8
         0129 012d' 
     617 012a       L7:
     618                    .line   12
     619            ;>>>>           else            k = 0;  // if data bit is 0,k=0;successed
     620 012a b900          LACK    0
     621 012b 8ba0          MAR     *+
     622 012c 9080          SACL    * 
     623 012d       L8:
     624                    .line   13
     625            ;>>>>           sda_0; scl_0;                   // scl = sda = 0                
     626 012d bf80          LACK    61439
         012e efff  
     627 012f bc00!         LDPK    _MCRC
     628 0130 6e00!         AND     _MCRC
     629 0131 9000!         SACL    _MCRC
     630 0132 bf80          LACK    4096
         0133 1000  
     631 0134 bc00!         LDPK    _PFDATDIR
     632 0135 6d00!         OR      _PFDATDIR
     633 0136 9000!         SACL    _PFDATDIR
     634 0137 bf80          LACK    65519
         0138 ffef  
     635 0139 6e00!         AND     _PFDATDIR
     636 013a 9000!         SACL    _PFDATDIR
     637 013b bf80          LACK    49151
         013c bfff  
     638 013d bc00!         LDPK    _MCRA
     639 013e 6e00!         AND     _MCRA
     640 013f 9000!         SACL    _MCRA
     641 0140 bf80          LACK    16384
         0141 4000  
     642 0142 bc00!         LDPK    _PBDATDIR
     643 0143 6d00!         OR      _PBDATDIR
     644 0144 9000!         SACL    _PBDATDIR
     645 0145 bf80          LACK    65471
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00  Thu Dec  8 11:06:32 2005
Copyright (c) 1987-1999  Texas Instruments Incorporated 
pcf8583.asm                                                          PAGE   14

         0146 ffbf  
     646 0147 6e00!         AND     _PBDATDIR
     647 0148 9000!         SACL    _PBDATDIR
     648                    .line   14
     649            ;>>>>           return(k);      
     650 0149 6980          ZALS    * 
     651 014a       EPI0_5:
     652                    .line   15
     653 014a 8b89          MAR     * ,AR1
     654 014b 7c04          SBRK    4
     655 014c 0090          LAR     AR0,*-
     656 014d 7680          PSHD    *
     657 014e ef00          RET
     658            
     659                    .endfunc        99,000000000H,3
     660            
     661                    .sym    _Pcf8583Stop,_Pcf8583Stop,32,2,0
     662                    .globl  _Pcf8583Stop
     663            
     664                    .func   103
     665            ;>>>>   void Pcf8583Stop()
     666            ******************************************************
     667            * FUNCTION DEF : _Pcf8583Stop
     668            ******************************************************
     669 014f       _Pcf8583Stop:
     670 014f 8aa0          POPD    *+
     671 0150 80a0          SAR     AR0,*+
     672 0151 8180          SAR     AR1,*
     673 0152 b001          LARK    AR0,1
     674 0153 00e0          LAR     AR0,*0+
     675            
     676                    .line   3
     677            ;>>>>           sda_0;                  //sda = 0
     678 0154 bf80          LACK    61439
         0155 efff  
     679 0156 bc00!         LDPK    _MCRC
     680 0157 6e00!         AND     _MCRC
     681 0158 9000!         SACL    _MCRC
     682 0159 bf80          LACK    4096
         015a 1000  
     683 015b bc00!         LDPK    _PFDATDIR
     684 015c 6d00!         OR      _PFDATDIR
     685 015d 9000!         SACL    _PFDATDIR
     686 015e bf80          LACK    65519
         015f ffef  
     687 0160 6e00!         AND     _PFDATDIR
     688 0161 9000!         SACL    _PFDATDIR
     689                    .line   4
     690            ;>>>>           Pcf8583DelayI2c();
     691 0162 7a80          CALL    _Pcf8583DelayI2c
         0163 0023' 
     692                    .line   5
     693            ;>>>>           scl_1;                  //scl = 1
     694 0164 bf80          LACK    49151
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00  Thu Dec  8 11:06:32 2005
Copyright (c) 1987-1999  Texas Instruments Incorporated 
pcf8583.asm                                                          PAGE   15

         0165 bfff  
     695 0166 bc00!         LDPK    _MCRA
     696 0167 6e00!         AND     _MCRA
     697 0168 9000!         SACL    _MCRA
     698 0169 bf80          LACK    16448
         016a 4040  
     699 016b bc00!         LDPK    _PBDATDIR
     700 016c 6d00!         OR      _PBDATDIR
     701 016d 9000!         SACL    _PBDATDIR
     702                    .line   6
     703            ;>>>>           Pcf8583DelayI2c();
     704 016e 7a80          CALL    _Pcf8583DelayI2c
         016f 0023' 
     705                    .line   7
     706            ;>>>>           sda_1;                  //sda = 1
     707 0170 bf80          LACK    61439
         0171 efff  
     708 0172 bc00!         LDPK    _MCRC
     709 0173 6e00!         AND     _MCRC
     710 0174 9000!         SACL    _MCRC
     711 0175 bf80          LACK    4112
         0176 1010  
     712 0177 bc00!         LDPK    _PFDATDIR
     713 0178 6d00!         OR      _PFDATDIR
     714 0179 9000!         SACL    _PFDATDIR
     715 017a       EPI0_6:
     716                    .line   8
     717 017a 7c02          SBRK    2
     718 017b 0090          LAR     AR0,*-
     719 017c 7680          PSHD    *
     720 017d ef00          RET
     721            
     722                    .endfunc        110,000000000H,1
     723            
     724                    .sym    _WriteByte,_WriteByte,44,2,0
     725                    .globl  _WriteByte
     726            
     727                    .func   114
     728            ;>>>>   uchar WriteByte(uchar addr,uchar data)
     729            ******************************************************
     730            * FUNCTION DEF : _WriteByte
     731            ******************************************************
     732 017e       _WriteByte:
     733            
     734      0000  LF7     .set    0
     735            
     736 017e 8aa0          POPD    *+
     737 017f 80a0          SAR     AR0,*+
     738 0180 8180          SAR     AR1,*
     739 0181 b002          LARK    AR0,2
     740 0182 00e0          LAR     AR0,*0+
     741            
     742                    .sym    _addr,-3+LF7,12,9,16
     743                    .sym    _data,-4+LF7,12,9,16
TMS320C1x/C2x/C2xx/C5x COFF Assembler Version 7.00  Thu Dec  8 11:06:32 2005
Copyright (c) 1987-1999  Texas Instruments Incorporated 
pcf8583.asm                                                          PAGE   16

     744                    .sym    _k,1,12,1,16
     745                    .line   2
     746            ;>>>>           uchar k;
     747                    .line   4
     748            ;>>>>           Pcf8583Start();         //start i2c bus
     749 0183 7a80          CALL    _Pcf8583Start
         0184 0040' 
     750                    .line   5
     751            ;>>>>           Pcf8583sendByte(0xa0);  //send control byte
     752 0185 b9a0          LACK    160
     753 0186 90a0          SACL    *+
     754 0187 7a80          CALL    _Pcf8583sendByte
         0188 007f' 
     755 0189 8b90          MAR     *-
     756                    .line   6
     757            ;>>>>           k = Pcf8583Ack();       
     758 018a 7a80          CALL    _Pcf8583Ack
         018b 00ea' 
     759 018c 8b8a          MAR     * ,AR2
     760 018d b201          LARK    AR2,1
     761 018e 8be0          MAR     *0+
     762 018f 9080          SACL    * 
     763                    .line   7
     764            ;>>>>           if(k==0)Pcf8583sendByte(addr);  //send out addr

⌨️ 快捷键说明

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