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

📄 text1.lst

📁 本设计的内容是使用89C51RC单片机最小系统设计频率计系统
💻 LST
字号:
C51 COMPILER V7.50   TEXT1                                                                 11/11/2007 18:31:50 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE TEXT1
OBJECT MODULE PLACED IN Text1.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE Text1.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          //****12mhz***////      
   2          #include"reg52.h"
   3          #define uchar unsigned char
   4          #define uint  unsigned int
   5          
   6          uchar code  tv[]={0xfe,0xfd,0xfb,0xf7};
   7          uchar code  a[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
   8          
   9          uchar  data  led[4];
  10          uint   data  fre;
  11          uchar  cnt;
  12          
  13                  
  14          void delay(void)
  15          {
  16   1              uint i;
  17   1              for(i=0;i<10;i++);
  18   1      }
  19          
  20          
  21          void led_show(void)
  22          {
  23   1              uchar k,i;
  24   1          led[0]=fre%10;
  25   1          led[1]=fre/10%10;
  26   1              led[2]=fre/100%10;
  27   1              led[3]=fre/1000;
  28   1              
  29   1              for(k=0;k<4;k++)
  30   1                      { 
  31   2                              P2=tv[k];
  32   2                          i=led[k];
  33   2                          P0=a[i];
  34   2                          delay();
  35   2                  }
  36   1      } 
  37          
  38          /********************50ms*********************************************/
  39          
  40           void Timer_Init (void)
  41          { 
  42   1              TMOD=0x51;
  43   1          TH0=(65536-50000)/256;
  44   1          TL0=(65536-50000)%256;
  45   1          EA=1;
  46   1          ET0=1;
  47   1          ET1=1;
  48   1      
  49   1      } 
  50          
  51          void T0_ISP(void) interrupt 1
  52          {
  53   1              cnt++;
  54   1              if (cnt==20)
  55   1              {
C51 COMPILER V7.50   TEXT1                                                                 11/11/2007 18:31:50 PAGE 2   

  56   2                      cnt=0;
  57   2                  EA=0;
  58   2                  fre=TL1+(TH1<<8);     //体会为什么要这样写呢?TH1是计数高8位,TL1是低8位,这个16位数分2部分存放,
  59   2                  EA=1;                //高8位和低8位进制是256。这里写成这样也可以fre=TH1*256+TL1
  60   2                  TL1=0;
  61   2                  TH1=0;
  62   2              }
  63   1                  TH0=(65536-50000)/256;  //注;为什么要在这里附上TH0,TL0的初值。(减小误差)
  64   1              TL0=(65536-50000)%256;
  65   1      } 
  66          
  67          void main()
  68          {  
  69   1              uint i;
  70   1              Timer_Init();
  71   1              TR0=1;
  72   1              TR1=1;
  73   1      
  74   1      
  75   1          while(1)
  76   1          { 
  77   2                      for(i=0;i<20;i++)
  78   2                      {
  79   3                              led_show();
  80   3                  }
  81   2          }
  82   1      }
  83            
  84          
  85          
  86          
  87          
  88          
  89          
  90          
  91          
  92          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    222    ----
   CONSTANT SIZE    =     14    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      7    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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