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

📄 dianzhen.lst

📁 这是一个点阵显示程序
💻 LST
字号:
C51 COMPILER V7.06   DIANZHEN                                                              04/19/2007 19:51:50 PAGE 1   


C51 COMPILER V7.06, COMPILATION OF MODULE DIANZHEN
OBJECT MODULE PLACED IN dianzhen.OBJ
COMPILER INVOKED BY: D:\keil\C51\BIN\C51.EXE dianzhen.c BROWSE DEBUG OBJECTEXTEND

stmt level    source

   1          #include <at89x52.h>
   2          #define uchar unsigned char
   3          
   4          uchar i=0x00;
   5          uchar j=0x00;
   6          uchar k=0x00;
   7          uchar t=0x00;
   8          uchar keytemp;
   9          uchar x;
  10          uchar count=0x00;
  11          const uchar b[8] = {0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
  12          const uchar c[8] = {0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; 
  13          const uchar code a[][8] = {
  14                  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  15                  0x66,0x53,0x4e,0x00,0x3e,0x43,0x43,0x7e,//20
  16                          0x3e,0x43,0x43,0x7e,0x00,0x7e,0x4b,0x7a,//06
  17                          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  18                  0x00,0x1E,0xE0,0x3E,0xE0,0x1E,0x00,0x00,//W
  19                  0x00,0x82,0xFE,0x92,0xBA,0x82,0xC6,0x00,//E
  20                          0x00,0x82,0xFE,0x82,0x80,0x80,0xC0,0x00,//L
  21                  0x00,0x7C,0x82,0x82,0x84,0x66,0x00,0x00,//C
  22                          0x00,0x38,0x44,0x82,0x82,0x82,0x44,0x38,//O
  23                  0x00,0xFF,0x0C,0x30,0xC0,0x30,0x0C,0xFF,//M
  24                  0x00,0x00,0x00,0xDf,0xdf,0x00,0x00,0x00,//!
  25                          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  26                  0xfd,0xe5,0xdf,0xc5,0xff,0xe5,0xfd,0x00,//西
  27                          0x00,0x00,0x00,0x00,//0x00,0x00,0x00,0x00,
  28                          0xfd,0x35,0x3d,0xf7,0x3d,0xb5,0xfd,0x00,//南
  29                          0x00,0x00,0x00,0x00,//0x00,0x00,0x00,0x00,
  30                          0x35,0xff,0x35,0x28,0x3e,0x20,0xff,0x30,//科
  31                          0x00,0x00,0x00,0x00,//0x00,0x00,0x00,0x00,
  32                          0x94,0xff,0x94,0x9a,0x6f,0x6a,0x9a,0x80,//技
  33                          0x00,0x00,0x00,0x00,//0x00,0x00,0x00,0x00,
  34                          0x84,0x44,0x24,0x1f,0x34,0x44,0x84,0x80,//大
  35                  0x00,0x00,0x00,0x00,//0x00,0x00,0x00,0x00,
  36                  0x26,0x2b,0xaa,0xfb,0x3a,0x2b,0x22,0x24,//学
  37                  0x00,0x00,0x00,0x00,//0x00,0x00,0x00,0x00,
  38          };
  39          
  40          
  41          
  42          
  43          void device_init();
  44          void display();
  45          void next();
  46          
  47          
  48          //----------------------------------------
  49          void device_init()
  50          {
  51   1          TL0=0xbf; 
  52   1          TH0=0xf0;
  53   1          TMOD=0x01; 
  54   1          IE=0x82;
  55   1          TR0=0x01;
C51 COMPILER V7.06   DIANZHEN                                                              04/19/2007 19:51:50 PAGE 2   

  56   1      }
  57          
  58          
  59          //---------------------------------------
  60          void base_send(uchar send_data)
  61          {
  62   1              uchar index = 0x00;
  63   1              for (index=0x00; index<0x08; index++)
  64   1              {
  65   2                      P1_7 = 0;
  66   2                      P1_6 = send_data & (0x80 >> index);
  67   2                      P1_7 = 1;
  68   2              }
  69   1      }
  70           
  71          void send(uchar first,uchar second)
  72          {
  73   1              P1_5= 0;
  74   1              base_send(first);
  75   1              base_send(second);
  76   1              P1_5= 1;
  77   1      }
  78          
  79          
  80          //---------------------------------------
  81          void display()
  82          {
  83   1            if(j>t%8)
  84   1             x=i;
  85   1            else
  86   1             x=(i+1)%0x15;
  87   1      
  88   1            //send(a[x][j],b[k]);
  89   1                send(c[k],a[x][j]);
  90   1      
  91   1            j++;
  92   1            if(j==0x08)
  93   1            {
  94   2                j=0x00;
  95   2            }
  96   1            k++;
  97   1            if(k==0x08)
  98   1            {
  99   2                k=0x00;
 100   2            }
 101   1      }
 102          //---------------------------------------
 103          void next()//字符移动
 104          {
 105   1            t++;
 106   1            if(t==(0x15)*8)
 107   1            {
 108   2            t=0x00;
 109   2            }
 110   1            i=t/8;
 111   1            j=t%8;
 112   1      }
 113          
 114          //---------------------------------------
 115          void timeover()  interrupt 1
 116          {
 117   1      
C51 COMPILER V7.06   DIANZHEN                                                              04/19/2007 19:51:50 PAGE 3   

 118   1            //keytemp=Scan();
 119   1            count++;
 120   1            if(count==0x40)
 121   1            {
 122   2             count=0x00;
 123   2             next();
 124   2            }
 125   1      
 126   1            display();
 127   1            TL0=0xbf;
 128   1            TH0=0xf0;
 129   1      }
 130          
 131          
 132          
 133          //---------------------------------------
 134          void main()
 135          {
 136   1            device_init();
 137   1            while(1)
 138   1            {
 139   2            }
 140   1      }
 141          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    258    ----
   CONSTANT SIZE    =    168    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     23    ----
   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 + -