yaonew01.lst

来自「基于8051单片机的摇棒系统」· LST 代码 · 共 233 行

LST
233
字号
C51 COMPILER V6.02  YAONEW01                                                               01/07/2006 13:33:56 PAGE 1   


C51 COMPILER V6.02, COMPILATION OF MODULE YAONEW01
OBJECT MODULE PLACED IN G:\MAJOR\DESIGN\摇棒\YAONEW01.OBJ
COMPILER INVOKED BY: C:\comp51v6\C51.EXE G:\MAJOR\DESIGN\摇棒\YAONEW01.C DB SB OE

stmt level    source

   1          
   2          /******************************/
   3          //        ---------------
   4          //          LED显示摇棒
   5          //        ---------------
   6          /******************************/
   7          #include <reg51.h>
   8          #define SEG1 17        //每幅图片分成17列来显示
   9          #define SEG2 8
  10          #define INTERVAL 20    //每幅图片在左右摇摆20
  11          //次后换下一幅
  12          
  13          typedef unsigned char uchar;
  14          typedef unsigned int uint;
  15          uchar left_flag;
  16          
  17          code char pattern[17][3]={    //3幅图片的字模
  18          {0xff,0xff,0xff}, //在长沙的时候教过你怎么算,所以我就不多说了
  19          {0xff,0xff,0xff},
  20          {0xff,0xff,0xff},
  21          {0xff,0xf9,0xff},
  22          {0xff,0xf6,0x9f},
  23          {0xff,0xee,0xa6},
  24          {0xfe,0xdd,0x78},
  25          {0x7e,0xbb,0x7f},
  26          {0x00,0x77,0x7f},
  27          {0x7e,0xbb,0x7f},
  28          {0xfe,0xdd,0x78},
  29          {0xff,0xee,0xa6},
  30          {0xff,0xf6,0x9f},
  31          {0xff,0xf9,0xff},
  32          {0xff,0xff,0xff},
  33          {0xff,0xff,0xff},
  34          {0xff,0xff,0xff},
  35          };
  36          uchar phase,th1,tl1,index,count;
  37          
  38          
  39          main()
  40          {
  41   1          EA=0;     
  42   1          EX1=1;  
  43   1          EX0=1;
  44   1        //  ET0=1;
  45   1          ET1=1;  
  46   1          PX0=1;   
  47   1          IT1=1; 
  48   1         // IT0=1;
  49   1          TMOD=0x11;
  50   1          index=0;
  51   1          EA=1;   
  52   1          while(1)
  53   1          {
  54   2          }
  55   1      }
C51 COMPILER V6.02  YAONEW01                                                               01/07/2006 13:33:56 PAGE 2   

  56          
  57          void Int0_Handle(void) interrupt 2  using 1
  58          {
  59   1          uint t0_time;
  60   1          TR0=0;
  61   1          TR1=0;
  62   1          TF1=0;
  63   1              t0_time=TH0<<8|TL0;
  64   1          TL0=0;
  65   1          TH0=0;
  66   1          TR0=1;
  67   1          t0_time=65535-t0_time/SEG1;
  68   1          th1=t0_time/256;
  69   1          TH1=th1;
  70   1          tl1=t0_time % 256;
  71   1          TL1=tl1;
  72   1          if (count<3*INTERVAL){        //3幅图片循环
  73   2              count++;
  74   2          }
  75   1          else{
  76   2              count=0;
  77   2          }
  78   1          index=count/INTERVAL;
  79   1          if (th1!=0xff || tl1!=0xff){    //如果摆动特别慢,
  80   2      //定时器溢出就不显示
  81   2              phase=0;
  82   2              TR1=1;
  83   2          }
  84   1          else{
  85   2              TR1=0;
  86   2          }
  87   1      }
  88          
  89          //void Int1_Handle(void) interrupt 2 using 2
  90          //{
  91            /*  uint t0_time;
  92              left_flag=0;
  93              TR0=0;
  94              TR1=0;
  95              TF1=0;
  96                  t0_time=TH0<<8|TL0;
  97              TL0=0;
  98              TH0=0;
  99              TR0=1;
 100              t0_time=65535-t0_time/SEG1;
 101              th1=t0_time/256;
 102              TH1=th1;
 103              tl1=t0_time % 256;
 104              TL1=tl1;
 105              if (count<3*INTERVAL){     
 106                  count++;
 107              }
 108              else{
 109                  count=0;
 110              }  */
 111             // index=1;//count/INTERVAL;
 112              /*if (th1!=0xff || tl1!=0xff){ 
 113                  phase=8;
 114                  TR1=1;
 115              }
 116              else{
 117                   TR1=0;
C51 COMPILER V6.02  YAONEW01                                                               01/07/2006 13:33:56 PAGE 3   

 118              } */
 119          //}
 120          
 121          void Timer1(void) interrupt 3 using 3
 122          {
 123   1          if (phase<SEG1)           
 124   1          {
 125   2              P0=pattern[phase][index];
 126   2              phase++;
 127   2              TH1=th1;
 128   2              TL1=tl1;
 129   2          }
 130   1      }
 131          
 132          
C51 COMPILER V6.02  YAONEW01                                                               01/07/2006 13:33:56 PAGE 4   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


P0 . . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0080H  1
pattern. . . . . . . . . . . . . . . .  PUBLIC   CODE   ARRAY    0000H  51
T0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B4H  1
AC . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D6H  1
T1 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B5H  1
EA . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AFH  1
Int0_Handle. . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
  t0_time. . . . . . . . . . . . . . .  * REG *  DATA   U_INT    000AH  2
th1. . . . . . . . . . . . . . . . . .  PUBLIC   DATA   U_CHAR   0000H  1
tl1. . . . . . . . . . . . . . . . . .  PUBLIC   DATA   U_CHAR   0001H  1
phase. . . . . . . . . . . . . . . . .  PUBLIC   DATA   U_CHAR   0002H  1
uchar. . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_CHAR   -----  1
RD . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B7H  1
ES . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ACH  1
index. . . . . . . . . . . . . . . . .  PUBLIC   DATA   U_CHAR   0003H  1
RI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0098H  1
INT0 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B2H  1
CY . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D7H  1
TI . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0099H  1
INT1 . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B3H  1
PS . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BCH  1
OV . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D2H  1
main . . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
WR . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B6H  1
left_flag. . . . . . . . . . . . . . .  PUBLIC   DATA   U_CHAR   0004H  1
count. . . . . . . . . . . . . . . . .  PUBLIC   DATA   U_CHAR   0005H  1
Timer1 . . . . . . . . . . . . . . . .  PUBLIC   CODE   PROC     0000H  -----
TMOD . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   0089H  1
IE0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0089H  1
IE1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008BH  1
uint . . . . . . . . . . . . . . . . .  TYPEDEF  -----  U_INT    -----  2
ET0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A9H  1
ET1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00ABH  1
TF0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008DH  1
TF1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008FH  1
RB8. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009AH  1
TH0. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008CH  1
EX0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00A8H  1
IT0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      0088H  1
TH1. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008DH  1
TB8. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009BH  1
EX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00AAH  1
IT1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008AH  1
P. . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D0H  1
SM0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009FH  1
TL0. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008AH  1
SM1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009EH  1
TL1. . . . . . . . . . . . . . . . . .  SFR      DATA   U_CHAR   008BH  1
SM2. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009DH  1
PT0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B9H  1
PT1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BBH  1
RS0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D3H  1
TR0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008CH  1
RS1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D4H  1
TR1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      008EH  1
PX0. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B8H  1
PX1. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00BAH  1
C51 COMPILER V6.02  YAONEW01                                                               01/07/2006 13:33:56 PAGE 5   

NAME                                    CLASS   MSPACE  TYPE    OFFSET  SIZE
====                                    =====   ======  ====    ======  ====


REN. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      009CH  1
RXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B0H  1
TXD. . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00B1H  1
F0 . . . . . . . . . . . . . . . . . .  ABSBIT   -----  BIT      00D5H  1


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    199    ----
   CONSTANT SIZE    =     51    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      6    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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