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

📄 at89c2051.lst

📁 汉字滚动屏包括:汉字库文件、人机界面、通信程序、主控程序。
💻 LST
字号:
C51 COMPILER V7.06   AT89C2051                                                             11/19/2005 08:41:49 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE AT89C2051
OBJECT MODULE PLACED IN at89c2051.OBJ
COMPILER INVOKED BY: C:\KEIL\C51\BIN\C51.EXE at89c2051.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include <AT892051.H>
   2          #include <intrins.H>
   3          #define uchar unsigned char
   4          #define uint unsigned int
   5          sbit SDA=P3^4;
   6          sbit SCL=P3^5;
   7          sbit WP=P3^2;
   8          sbit B0=P3^7;
   9          uint data cnt=0;
  10          uchar data time_cnt;
  11          uchar data x,temp,temp1;
  12          char bdata com_data;
  13          sbit mos_bit=com_data^7;
  14          sbit low_bit=com_data^0;
  15          //--------------------------
  16          void delay_iic(int n);
  17          void wr_24c01(char a,char b);
  18          //***************************
  19          
  20          /************************/
  21          void main(void)
  22          {
  23   1      TMOD=0x21;
  24   1      TL0=0x00;TH0=0x4c;
  25   1      TL1=0xf4;TH1=0xf4;
  26   1      SCON=0x50;
  27   1      PCON=0x00;
  28   1      TR1=1;
  29   1              while(1)
  30   1              {       while(!RI);
  31   2                      temp=SBUF;
  32   2                      RI=0;
  33   2                              WP=0;
  34   2                              wr_24c01((uchar)cnt,temp);
  35   2                              delay_iic(250);
  36   2                              cnt++;
  37   2                              if(cnt==256)
  38   2                              {cnt=0;x=x+2;}
  39   2                              if(temp==255)temp1++;
  40   2                              if(temp1==2)
  41   2                              {temp1=0;cnt=0;x=0;}
  42   2                              WP=1;
  43   2                              TR0=1;
  44   2                              ET0=1;
  45   2                              EA=1;
  46   2                              time_cnt=0;
  47   2              }
  48   1      }
  49          /****************************/
  50          void time0_zd(void) interrupt 1 using 1
  51          {
  52   1              TL0=0x00;
  53   1              TH0=0x4c;
  54   1              time_cnt++;
  55   1              if(time_cnt==40)B0=0;
C51 COMPILER V7.06   AT89C2051                                                             11/19/2005 08:41:49 PAGE 2   

  56   1              if(time_cnt==50)
  57   1              {B0=1;
  58   2              time_cnt=0;
  59   2              TR0=0;
  60   2              ET0=0;
  61   2              EA=0;
  62   2              }
  63   1      }
  64          //***************************************
  65          void start()
  66          {
  67   1      SDA=1;_nop_();_nop_();_nop_();_nop_();
  68   1      SCL=1;_nop_();_nop_();_nop_();_nop_();
  69   1      SDA=0;_nop_();_nop_();_nop_();_nop_();
  70   1      SCL=0;_nop_();_nop_();_nop_();_nop_();
  71   1      }
  72          //*****************************************
  73          void stop()
  74          {
  75   1      SDA=0;_nop_();_nop_();_nop_();_nop_();
  76   1      SCL=1;_nop_();_nop_();_nop_();_nop_();
  77   1      SDA=1;_nop_();_nop_();_nop_();_nop_();
  78   1      }
  79          //***********************
  80          void ack()
  81          {
  82   1      SCL=1;_nop_();_nop_();_nop_();_nop_();
  83   1      SCL=0;_nop_();_nop_();_nop_();_nop_();
  84   1      }
  85          //***********************
  86          void shift8(char a)
  87          {
  88   1      data uchar i;
  89   1      com_data=a;
  90   1      for(i=0;i<8;i++)
  91   1      {
  92   2      SDA=mos_bit;
  93   2      SCL=1;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
  94   2      SCL=0;_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
  95   2      com_data=com_data*2;
  96   2      }
  97   1      }
  98          //******************
  99          
 100          void wr_24c01(char a,char b)
 101          {
 102   1      data uchar command;
 103   1      _nop_();_nop_();_nop_();_nop_();_nop_();
 104   1      SDA=1;_nop_();_nop_();_nop_();_nop_();
 105   1      SCL=0;_nop_();_nop_();_nop_();_nop_();
 106   1      start();
 107   1      command=160+x;
 108   1      shift8(command);
 109   1      ack();
 110   1      shift8(a);
 111   1      ack();
 112   1      shift8(b);
 113   1      ack();
 114   1      stop();
 115   1      _nop_();_nop_();_nop_();_nop_();_nop_();
 116   1      }
 117          //***************
C51 COMPILER V7.06   AT89C2051                                                             11/19/2005 08:41:49 PAGE 3   

 118          void delay_iic(int n)
 119          {
 120   1      int i;
 121   1      for(i=1;i<n;i++){;}
 122   1      }
 123          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    319    ----
   CONSTANT SIZE    =   ----    ----
   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 + -