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

📄 mac.lst

📁 无线单片机cc2430简化协议的无线收发程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
    294             BYTE cs;
    295             for(int i=0;i<len;i++)
   \   000007   7800         MOV     R0,#0x0
   \   000009   7900         MOV     R1,#0x0
   \                     ??MACPutArray_0:
   \   00000B   8C..         MOV     ?V0 + 0,R4
   \   00000D   75..00       MOV     ?V0 + 1,#0x0
   \   000010   C3           CLR     C
   \   000011   E8           MOV     A,R0
   \   000012   95..         SUBB    A,?V0 + 0
   \   000014   E9           MOV     A,R1
   \   000015   95..         SUBB    A,?V0 + 1
   \   000017   A2D2         MOV     C,0xD0 /* PSW */.2
   \   000019   65D0         XRL     A,PSW
   \   00001B   33           RLC     A
   \   00001C   5037         JNC     ??MACPutArray_1
    296             	{
    297             	  phy_pib.currentTxFrm++;
   \   00001E   90....       MOV     DPTR,#(phy_pib + 14)
   \   000021   E0           MOVX    A,@DPTR
   \   000022   2401         ADD     A,#0x1
   \   000024   FE           MOV     R6,A
   \   000025   A3           INC     DPTR
   \   000026   E0           MOVX    A,@DPTR
   \   000027   3400         ADDC    A,#0x0
   \   000029   FF           MOV     R7,A
   \   00002A   90....       MOV     DPTR,#(phy_pib + 14)
   \   00002D   EE           MOV     A,R6
   \   00002E   F0           MOVX    @DPTR,A
   \   00002F   A3           INC     DPTR
   \   000030   EF           MOV     A,R7
   \   000031   F0           MOVX    @DPTR,A
    298                *phy_pib.currentTxFrm = data[i];
   \   000032   EA           MOV     A,R2
   \   000033   28           ADD     A,R0
   \   000034   F582         MOV     DPL,A
   \   000036   EB           MOV     A,R3
   \   000037   39           ADDC    A,R1
   \   000038   F583         MOV     DPH,A
   \   00003A   E0           MOVX    A,@DPTR
   \   00003B   C0E0         PUSH    A
   \   00003D   90....       MOV     DPTR,#(phy_pib + 14)
   \   000040   E0           MOVX    A,@DPTR
   \   000041   FE           MOV     R6,A
   \   000042   A3           INC     DPTR
   \   000043   E0           MOVX    A,@DPTR
   \   000044   F583         MOV     DPH,A
   \   000046   8E82         MOV     DPL,R6
   \   000048   D0E0         POP     A
   \   00004A   F0           MOVX    @DPTR,A
    299             	}
   \   00004B   E8           MOV     A,R0
   \   00004C   2401         ADD     A,#0x1
   \   00004E   F8           MOV     R0,A
   \   00004F   E9           MOV     A,R1
   \   000050   3400         ADDC    A,#0x0
   \   000052   F9           MOV     R1,A
   \   000053   80B6         SJMP    ??MACPutArray_0
    300             phy_pib.currentTxFlen += len;	
   \                     ??MACPutArray_1:
   \   000055   90....       MOV     DPTR,#(phy_pib + 16)
   \   000058   E0           MOVX    A,@DPTR
   \   000059   2C           ADD     A,R4
   \   00005A   F0           MOVX    @DPTR,A
    301          	
    302          	cs=0;
   \   00005B   7D00         MOV     R5,#0x0
    303          	for(i=7;i<len;i++)
   \   00005D   75..07       MOV     ?V0 + 2,#0x7
   \                     ??MACPutArray_2:
   \   000060   E5..         MOV     A,?V0 + 2
   \   000062   C3           CLR     C
   \   000063   9C           SUBB    A,R4
   \   000064   5017         JNC     ??MACPutArray_3
    304          		cs+=data[i];	
   \   000066   85....       MOV     ?V0 + 0,?V0 + 2
   \   000069   75..00       MOV     ?V0 + 1,#0x0
   \   00006C   EA           MOV     A,R2
   \   00006D   25..         ADD     A,?V0 + 0
   \   00006F   F582         MOV     DPL,A
   \   000071   EB           MOV     A,R3
   \   000072   35..         ADDC    A,?V0 + 1
   \   000074   F583         MOV     DPH,A
   \   000076   E0           MOVX    A,@DPTR
   \   000077   2D           ADD     A,R5
   \   000078   FD           MOV     R5,A
   \   000079   05..         INC     ?V0 + 2
   \   00007B   80E3         SJMP    ??MACPutArray_2
    305             	phy_pib.currentTxFrm++;
   \                     ??MACPutArray_3:
   \   00007D   90....       MOV     DPTR,#(phy_pib + 14)
   \   000080   E0           MOVX    A,@DPTR
   \   000081   2401         ADD     A,#0x1
   \   000083   F8           MOV     R0,A
   \   000084   A3           INC     DPTR
   \   000085   E0           MOVX    A,@DPTR
   \   000086   3400         ADDC    A,#0x0
   \   000088   F9           MOV     R1,A
   \   000089   90....       MOV     DPTR,#(phy_pib + 14)
   \   00008C   E8           MOV     A,R0
   \   00008D   F0           MOVX    @DPTR,A
   \   00008E   A3           INC     DPTR
   \   00008F   E9           MOV     A,R1
   \   000090   F0           MOVX    @DPTR,A
    306              *phy_pib.currentTxFrm =cs;
   \   000091   ED           MOV     A,R5
   \   000092   C0E0         PUSH    A
   \   000094   90....       MOV     DPTR,#(phy_pib + 14)
   \   000097   E0           MOVX    A,@DPTR
   \   000098   F8           MOV     R0,A
   \   000099   A3           INC     DPTR
   \   00009A   E0           MOVX    A,@DPTR
   \   00009B   F583         MOV     DPH,A
   \   00009D   8882         MOV     DPL,R0
   \   00009F   D0E0         POP     A
   \   0000A1   F0           MOVX    @DPTR,A
    307              phy_pib.currentTxFlen ++;
   \   0000A2   90....       MOV     DPTR,#(phy_pib + 16)
   \   0000A5   E0           MOVX    A,@DPTR
   \   0000A6   2401         ADD     A,#0x1
   \   0000A8   F0           MOVX    @DPTR,A
    308          	
    309          }
   \   0000A9   7F03         MOV     R7,#0x3
   \   0000AB   02....       LJMP    ?FUNC_LEAVE_XDATA

   \                                 In segment NEAR_CODE, align 1, keep-with-next
    310          void macFormatUserData(BYTE frame) //bhj
   \                     macFormatUserData:
    311          {
   \   000000   74F8         MOV     A,#-0x8
   \   000002   12....       LCALL   ?FUNC_ENTER_XDATA
   \   000005                ; Saved register size: 8
   \   000005                ; Auto size: 10
   \   000005   74F6         MOV     A,#-0xa
   \   000007   12....       LCALL   ?ALLOC_XSTACK8
    312             int i;
    313             BYTE testdata[10];
    314             //unsigned char datalen=0;
    315             testdata[0]=1;
   \   00000A   7401         MOV     A,#0x1
   \   00000C   85..82       MOV     DPL,?XSP + 0
   \   00000F   85..83       MOV     DPH,?XSP + 1
   \   000012   F0           MOVX    @DPTR,A
    316             testdata[1]=0xff;
   \   000013   74FF         MOV     A,#-0x1
   \   000015   C0E0         PUSH    A
   \   000017   7401         MOV     A,#0x1
   \   000019   12....       LCALL   ?XSTACK_DISP0_8
   \   00001C   D0E0         POP     A
   \   00001E   F0           MOVX    @DPTR,A
    317             testdata[2]=0xff;
   \   00001F   74FF         MOV     A,#-0x1
   \   000021   C0E0         PUSH    A
   \   000023   7402         MOV     A,#0x2
   \   000025   12....       LCALL   ?XSTACK_DISP0_8
   \   000028   D0E0         POP     A
   \   00002A   F0           MOVX    @DPTR,A
    318             testdata[3]=0xff;
   \   00002B   74FF         MOV     A,#-0x1
   \   00002D   C0E0         PUSH    A
   \   00002F   7403         MOV     A,#0x3
   \   000031   12....       LCALL   ?XSTACK_DISP0_8
   \   000034   D0E0         POP     A
   \   000036   F0           MOVX    @DPTR,A
    319             testdata[4]=0xff;
   \   000037   74FF         MOV     A,#-0x1
   \   000039   C0E0         PUSH    A
   \   00003B   7404         MOV     A,#0x4
   \   00003D   12....       LCALL   ?XSTACK_DISP0_8
   \   000040   D0E0         POP     A
   \   000042   F0           MOVX    @DPTR,A
    320             testdata[5]=1;  //len  =data + cs;
   \   000043   7401         MOV     A,#0x1
   \   000045   C0E0         PUSH    A
   \   000047   7405         MOV     A,#0x5
   \   000049   12....       LCALL   ?XSTACK_DISP0_8
   \   00004C   D0E0         POP     A
   \   00004E   F0           MOVX    @DPTR,A
    321          
    322             testdata[6]=0;  //header checksum (test[0]~test[5])
   \   00004F   7400         MOV     A,#0x0
   \   000051   C0E0         PUSH    A
   \   000053   7406         MOV     A,#0x6
   \   000055   12....       LCALL   ?XSTACK_DISP0_8
   \   000058   D0E0         POP     A
   \   00005A   F0           MOVX    @DPTR,A
    323             for(i=0;i<=5;i++) testdata[6]+=testdata[i];
   \   00005B   7E00         MOV     R6,#0x0
   \   00005D   7F00         MOV     R7,#0x0
   \                     ??macFormatUserData_0:
   \   00005F   C3           CLR     C
   \   000060   EE           MOV     A,R6
   \   000061   9406         SUBB    A,#0x6
   \   000063   EF           MOV     A,R7
   \   000064   9400         SUBB    A,#0x0
   \   000066   A2D2         MOV     C,0xD0 /* PSW */.2
   \   000068   65D0         XRL     A,PSW
   \   00006A   33           RLC     A
   \   00006B   5024         JNC     ??macFormatUserData_1
   \   00006D   85..82       MOV     DPL,?XSP + 0
   \   000070   85..83       MOV     DPH,?XSP + 1
   \   000073   E582         MOV     A,DPL
   \   000075   2E           ADD     A,R6
   \   000076   F582         MOV     DPL,A
   \   000078   E583         MOV     A,DPH
   \   00007A   3F           ADDC    A,R7
   \   00007B   F583         MOV     DPH,A
   \   00007D   E0           MOVX    A,@DPTR
   \   00007E   FA           MOV     R2,A
   \   00007F   7406         MOV     A,#0x6
   \   000081   12....       LCALL   ?XSTACK_DISP0_8
   \   000084   E0           MOVX    A,@DPTR
   \   000085   2A           ADD     A,R2
   \   000086   F0           MOVX    @DPTR,A
   \   000087   EE           MOV     A,R6
   \   000088   2401         ADD     A,#0x1
   \   00008A   FE           MOV     R6,A
   \   00008B   EF           MOV     A,R7
   \   00008C   3400         ADDC    A,#0x0
   \   00008E   FF           MOV     R7,A
   \   00008F   80CE         SJMP    ??macFormatUserData_0
    324          
    325             MACPutArray(testdata,7);
   \                     ??macFormatUserData_1:
   \   000091                ; Setup parameters for call to function MACPutArray
   \   000091   7907         MOV     R1,#0x7
   \   000093   85..82       MOV     DPL,?XSP + 0
   \   000096   85..83       MOV     DPH,?XSP + 1
   \   000099   AA82         MOV     R2,DPL
   \   00009B   AB83         MOV     R3,DPH
   \   00009D   12....       LCALL   MACPutArray
    326          
    327          }
   \   0000A0   740A         MOV     A,#0xa
   \   0000A2   12....       LCALL   ?DEALLOC_XSTACK8
   \   0000A5   7F01         MOV     R7,#0x1
   \   0000A7   02....       LJMP    ?FUNC_LEAVE_XDATA

   \                                 In segment NEAR_CODE, align 1, keep-with-next
    328          BYTE MACFlush()
   \                     MACFlush:
    329          {
   \   000000   C082         PUSH    DPL
   \   000002   C083         PUSH    DPH
   \   000004                ; Saved register size: 2
   \   000004                ; Auto size: 0
    330          
    331              // at this point, we will attempt a TX
    332              mac_pib.flags.bits.ackPending = 0;
   \   000004   90....       MOV     DPTR,#(mac_pib + 4)
   \   000007   E0           MOVX    A,@DPTR
   \   000008   54BF         ANL     A,#0xbf
   \   00000A   F0           MOVX    @DPTR,A
   \   00000B   A3           INC     DPTR
   \   00000C   E0           MOVX    A,@DPTR
   \   00000D   54FF         ANL     A,#0xff
   \   00000F   F0           MOVX    @DPTR,A
    333          
    334          
    335              //now send the data, ignore the GTS and INDIRECT bits for now
    336              //DEBUG_STRING(DBG_TX,"TX DSN: ");
    337              //DEBUG_UINT8(DBG_TX,mac_pib.macDSN);
    338              //DEBUG_STRING(DBG_TX,"\n");
    339          
    340              macSetTxBusy();
   \   000010   90....       MOV     DPTR,#(mac_pib + 4)
   \   000013   E0           MOVX    A,@DPTR
   \   000014   4480         ORL     A,#0x80
   \   000016   F0           MOVX    @DPTR,A
   \   000017   A3           INC     DPTR
   \   000018   E0           MOVX    A,@DPTR
   \   000019   4400         ORL     A,#0x0
   \   00001B   F0           MOVX    @DPTR,A
    341              //mac_pib.currentAckRetries = mac_pib.macMaxAckRetries;
    342              macTxFS

⌨️ 快捷键说明

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