startup.lst

来自「cs8900 c51应用」· LST 代码 · 共 631 行 · 第 1/3 页

LST
631
字号
  0091          +1   196     sbit T2EX = 0x91;       /* Timer/Counter 2 capture/reload trigger & dir ctl */
                +1   197     
  0094          +1   198     sbit SS   = 0x94;       /* SPI: SS - Slave port select input */
  0095          +1   199     sbit MOSI = 0x95;       /* SPI: MOSI - Master data output, slave data input */
  0096          +1   200     sbit MISO = 0x96;       /* SPI: MISO - Master data input, slave data output */
  0097          +1   201     sbit SCK  = 0x97;       /* SPI: SCK - Master clock output, slave clock input */
                +1   202     
                +1   203     
                +1   204     
                +1   205     
                +1   206     
                +1   207     
                +1   208     
                +1   209     
                +1   210     
                +1   211     
                +1   212     
                +1   213     
                +1   214     
                +1   215     
                +1   216     
                +1   217                             
                +1   218                             
                +1   219                             
                +1   220                             
                +1   221                             
                +1   222                             
                +1   223                             
                +1   224                             
                +1   225     
                +1   226     
                +1   227     
                +1   228     
  0098          +1   229     sbit RI   = 0x98;       /* Receive Interrupt Flag */
  0099          +1   230     sbit TI   = 0x99;       /* Transmit Interrupt Flag */
  009A          +1   231     sbit RB8  = 0x9A;       /* 9th data bit received */
  009B          +1   232     sbit TB8  = 0x9B;       /* 9th data bit to be transmitted in modes 2 & 3 */
  009C          +1   233     sbit REN  = 0x9C;       /* Receive Enable */
  009D          +1   234     sbit SM2  = 0x9D;       /* Serial Port Mode Bit 2 */
  009E          +1   235     sbit SM1  = 0x9E;       /* Serial Port Mode Bit 1 */
  009F          +1   236     sbit SM0  = 0x9F;       /* Serial Port Mode Bit 0 */
                +1   237     
                +1   238     
                +1   239     
                +1   240     
  00A0          +1   241     sbit P2_0 = 0xA0;
  00A1          +1   242     sbit P2_1 = 0xA1;
  00A2          +1   243     sbit P2_2 = 0xA2;
  00A3          +1   244     sbit P2_3 = 0xA3;
  00A4          +1   245     sbit P2_4 = 0xA4;
  00A5          +1   246     sbit P2_5 = 0xA5;
  00A6          +1   247     sbit P2_6 = 0xA6;
  00A7          +1   248     sbit P2_7 = 0xA7;
                +1   249     
                +1   250     
                +1   251     
                +1   252     
  00A8          +1   253     sbit EX0  = 0xA8;       /* External Interrupt 0 Enable: 1=Enabled */
  00A9          +1   254     sbit ET0  = 0xA9;       /* Timer 0 Interrupt Enable: 1=Enabled */
  00AA          +1   255     sbit EX1  = 0xAA;       /* External Interrupt 1 Enable: 1=Enabled */
A51 MACRO ASSEMBLER  STARTUP                                                              11/26/2004 11:32:42 PAGE     5

  00AB          +1   256     sbit ET1  = 0xAB;       /* Timer 1 Interrupt Enable: 1=Enabled */
  00AC          +1   257     sbit ES   = 0xAC;       /* SPI and UART Interrupt Enable: 1=Enabled */
  00AD          +1   258     sbit ET2  = 0xAD;       /* Timer 2 Interrupt Enable: 1=Enabled */
                +1   259     
  00AF          +1   260     sbit EA   = 0xAF;       /* Global Interrupt Enable: 0=Disable all interrupts */
                +1   261     
                +1   262     
                +1   263     
                +1   264     
                +1   265     
                +1   266     
                +1   267     
                +1   268     
                +1   269     
                +1   270     
  00B0          +1   271     sbit P3_0 = 0xB0;
  00B1          +1   272     sbit P3_1 = 0xB1;
  00B2          +1   273     sbit P3_2 = 0xB2;
  00B3          +1   274     sbit P3_3 = 0xB3;
  00B4          +1   275     sbit P3_4 = 0xB4;
  00B5          +1   276     sbit P3_5 = 0xB5;
  00B6          +1   277     sbit P3_6 = 0xB6;
  00B7          +1   278     sbit P3_7 = 0xB7;
                +1   279     
  00B0          +1   280     sbit RXD  = 0xB0;       /* Serial data input */
  00B1          +1   281     sbit TXD  = 0xB1;       /* Serial data output */
  00B2          +1   282     sbit INT0 = 0xB2;       /* External interrupt 0 */
  00B3          +1   283     sbit INT1 = 0xB3;       /* External interrupt 1 */
  00B4          +1   284     sbit T0   = 0xB4;       /* Timer 0 external input */
  00B5          +1   285     sbit T1   = 0xB5;       /* Timer 1 external input */
  00B6          +1   286     sbit WR   = 0xB6;       /* External data memory write strobe */
  00B7          +1   287     sbit RD   = 0xB7;       /* External data memory read strobe */
                +1   288     
                +1   289     
                +1   290     
                +1   291     
  00B8          +1   292     sbit PX0  = 0xB8;       /* External Interrupt 0 Priority Bit */
  00B9          +1   293     sbit PT0  = 0xB9;       /* Timer 0 Interrupt Priority Bit */
  00BA          +1   294     sbit PX1  = 0xBA;       /* External Interrupt 1 Priority Bit */
  00BB          +1   295     sbit PT1  = 0xBB;       /* Timer 1 Interrupt Priority Bit */
  00BC          +1   296     sbit PS   = 0xBC;       /* Serial Port Interrupt Priority Bit */   
  00BD          +1   297     sbit PT2  = 0xBD;       /* Timer 2 Interrupt Priority Bit */
                +1   298     
                +1   299     
                +1   300     
                +1   301     
  00C8          +1   302     sbit CP_RL2= 0xC8;      /* 0=Reload, 1=Capture select */
  00C9          +1   303     sbit C_T2 = 0xC9;       /* 0=Timer, 1=Counter */
  00CA          +1   304     sbit TR2  = 0xCA;       /* 0=Stop timer, 1=Start timer */
  00CB          +1   305     sbit EXEN2= 0xCB;       /* Timer 2 external enable */
  00CC          +1   306     sbit TCLK = 0xCC;       /* 0=Serial clock uses Timer 1 overflow, 1=Timer 2 */
  00CD          +1   307     sbit RCLK = 0xCD;       /* 0=Serial clock uses Timer 1 overflow, 1=Timer 2 */
  00CE          +1   308     sbit EXF2 = 0xCE;       /* Timer 2 external flag */
  00CF          +1   309     sbit TF2  = 0xCF;       /* Timer 2 overflow flag */
                +1   310     
                +1   311     
                +1   312     
                +1   313     
                +1   314     
                +1   315     
                +1   316     
                +1   317     
                +1   318     
                +1   319     
  00D0          +1   320     sbit P    = 0xD0;       /* Parity Flag */
  00D1          +1   321     sbit FL   = 0xD1;       /* User Flag */
A51 MACRO ASSEMBLER  STARTUP                                                              11/26/2004 11:32:42 PAGE     6

  00D2          +1   322     sbit OV   = 0xD2;       /* Overflow Flag */
  00D3          +1   323     sbit RS0  = 0xD3;       /* Register Bank Select Bit 0 */
  00D4          +1   324     sbit RS1  = 0xD4;       /* Register Bank Select Bit 1 */
  00D5          +1   325     sbit F0   = 0xD5;       /* User Flag 0 */
  00D6          +1   326     sbit AC   = 0xD6;       /* Auxiliary Carry Flag */
  00D7          +1   327     sbit CY   = 0xD7;       /* Carry Flag */
                +1   328     
                +1   329     
                +1   330     
                +1   331     
                +1   332     
                +1   333     
                +1   334                             
                +1   335                             
                +1   336                             
                +1   337                             
                +1   338     
                +1   339     
                +1   340     
                +1   341     
                +1   342     
                +1   343     
                +1   344     
                +1   345     
                +1   346     
                +1   347     
                +1   348     
                +1   349     
                +1   350     
                +1   351     
                +1   352     
                +1   353     
                +1   354     
                +1   355     
                +1   356     
                +1   357     
                +1   358     
                +1   359     
                +1   360     
                     361     
                     362     
                     363                     NAME    ?C_STARTUP
                     364     
                     365     
                     366     ?C_C51STARTUP   SEGMENT   CODE
                     367     ?STACK          SEGMENT   IDATA
                     368     
----                 369                     RSEG    ?STACK
0000                 370                     DS      1
                     371     
                     372                     EXTRN CODE (?C_START)
                     373                     PUBLIC  ?C_STARTUP
                     374     
                     375     
                     376     $if  MONITOR
----                 377                     CSEG    AT      2000H
                     378     $else 
                                             CSEG    AT      0H
                             $endif  
                     381     
2000 020000   F      382     ?C_STARTUP:     LJMP    STARTUP1
                     383     
----                 384                     RSEG    ?C_C51STARTUP
                     385     
0000                 386     STARTUP1:
                     387     
A51 MACRO ASSEMBLER  STARTUP                                                              11/26/2004 11:32:42 PAGE     7

                     388     IF IDATALEN <> 0
0000 787F            389                     MOV     R0,#IDATALEN - 1
0002 E4              390                     CLR     A
0003 F6              391     IDATALOOP:      MOV     @R0,A
0004 D8FD            392                     DJNZ    R0,IDATALOOP
                     393     ENDIF
                     394     
                     395     IF XDATALEN <> 0
                                             MOV     DPTR,#XDATASTART
                                             MOV     R7,#LOW (XDATALEN)
                               IF (LOW (XDATALEN)) <> 0
                                             MOV     R6,#(HIGH XDATALEN) +1
                               ELSE

⌨️ 快捷键说明

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