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

📄 main.lst

📁 基于C51的点阵时钟显示仿真电路和源码
💻 LST
字号:
C51 COMPILER V8.02   MAIN                                                                  07/06/2010 09:13:29 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: F:\Program Files\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          
   2          // Header:DIY摇棒
   3          // Author:hxembed
   4          // Date:2010年1月
   5          #include<AT89x52.h>
   6          #define uchar unsigned char
   7          #define uint unsigned int
   8          
   9          sbit key = P3^0;//定义切换画面开关
  10          uchar Key_num;//定义按键次数
  11          uchar Int0_num;//定义中断次数
  12          uchar Direction;//定义摇动方向(从左到右)
  13          
  14          uchar code Embed[]={
  15          0x80,0x00,0x88,0x00,0x4A,0x80,0x4A,0x41,0x2A,0x21,0x2A,0x19,0x1A,0x07,0xFE,0x01,
  16          0x19,0x09,0x19,0x0D,0x29,0x4B,0x29,0x89,0x49,0x48,0xC8,0x38,0x48,0x00,0x00,0x00,/*秀*/
  17          0x80,0x00,0x88,0x00,0x4A,0x80,0x4A,0x41,0x2A,0x21,0x2A,0x19,0x1A,0x07,0xFE,0x01,
  18          0x19,0x09,0x19,0x0D,0x29,0x4B,0x29,0x89,0x49,0x48,0xC8,0x38,0x48,0x00,0x00,0x00,/*秀*/
  19          
  20          
  21          0x20,0x04,0x20,0x04,0x22,0x42,0x22,0x82,0xFE,0x7F,0x21,0x01,0x21,0x01,0x20,0x10,
  22          0x20,0x10,0xFF,0x08,0x20,0x07,0x22,0x1A,0xAC,0x21,0x20,0x40,0x20,0xF0,0x00,0x00,/*我*/
  23          0x00,0x40,0x40,0x20,0xB2,0xA0,0x96,0x90,0x9A,0x4C,0x92,0x47,0xF6,0x2A,0x9A,0x2A,
  24          0x93,0x12,0x91,0x1A,0x99,0x26,0x97,0x22,0x91,0x40,0x90,0xC0,0x30,0x40,0x00,0x00,/*爱*/
  25          0x80,0x00,0x40,0x00,0xF0,0x7F,0x2C,0x00,0x43,0x10,0x20,0x0C,0x98,0x03,0x0F,0x21,
  26          0x0A,0x40,0xE8,0x3F,0x08,0x00,0x88,0x00,0x28,0x03,0x1C,0x1C,0x08,0x08,0x00,0x00,/*你*/
  27          
  28          };
  29          
  30          uchar code love[] = {
  31          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  32          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x3F,0x00,0x20,0x00,0x20,0x00,0x20,
  33          0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x0F,
  34          0x04,0x10,0x02,0x20,0x02,0x20,0x02,0x20,0x02,0x20,0x04,0x10,0xF8,0x0F,0x00,0x00,
  35          0x00,0x00,0x00,0x00,0xFE,0x07,0x00,0x08,0x00,0x10,0x00,0x20,0x00,0x20,0x00,0x10,
  36          0x00,0x08,0xFE,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x3F,0x82,0x20,0x82,0x20,
  37          0x82,0x20,0x82,0x20,0x82,0x20,0x82,0x20,0x82,0x20,0x00,0x00,0x00,0x00,0x00,0x00,
  38          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*LOVE*/
  39          };
  40          
  41          uchar code love_picture[] = {
  42          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  43          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  44          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  45          0x78,0x00,0xFC,0x00,0xFE,0x01,0xFE,0x03,0xFE,0x07,0xFE,0x0F,0xFE,0x1F,0xFC,0x3F,
  46          0xF8,0x7F,0xFC,0x3F,0xFE,0x1F,0xFE,0x0F,0xFE,0x07,0xFE,0x03,0xFE,0x01,0xFC,0x00,
  47          0x78,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  48          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  49          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*心形图案*/
  50          };
  51          
  52          uchar code Hello[]={
  53          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",0*/
  54          
  55          0x08,0x20,0xF8,0x3F,0x08,0x21,0x00,0x01,0x00,0x01,0x08,0x21,0xF8,0x3F,0x08,0x20,/*"H",1*/
C51 COMPILER V8.02   MAIN                                                                  07/06/2010 09:13:29 PAGE 2   

  56          
  57          0x00,0x00,0x00,0x1F,0x80,0x22,0x80,0x22,0x80,0x22,0x80,0x22,0x00,0x13,0x00,0x00,/*"e",2*/
  58          
  59          0x00,0x00,0x08,0x20,0x08,0x20,0xF8,0x3F,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,/*"l",3*/
  60          
  61          0x00,0x00,0x08,0x20,0x08,0x20,0xF8,0x3F,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00,/*"l",4*/
  62          
  63          0x00,0x00,0x00,0x1F,0x80,0x20,0x80,0x20,0x80,0x20,0x80,0x20,0x00,0x1F,0x00,0x00,/*"o",5*/
  64          
  65          0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x33,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,/*"!",6*/
  66          
  67          0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",7*/
  68          
  69          
  70          };
  71          
  72          uchar code Smile[] =  
  73          {
  74           0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  75           0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  76           0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  77           0xF0,0x1F,0x3C,0x3C,0x0E,0xF7,0x06,0xEF,0xF3,0xDC,0xF3,0xB0,0x63,0xB0,0x03,0xB0,
  78           0xF3,0xB0,0xF3,0xB8,0x03,0xDD,0x06,0xEF,0x0E,0x76,0x3C,0x3C,0xF8,0x1F,0x00,0x00,
  79           0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  80           0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  81           0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  82          };
  83          
  84          uchar code Hxembed_Make[]={                               
  85          0x00,0x00,0x00,0x0E,0x00,0x11,0x80,0x20,0x80,0x20,0x88,0x10,0xF8,0x3F,0x00,0x20,/*"d",6*/       
  86           0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,
  87                0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,
  88                0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,
  89                0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x00,
  90          
  91          
  92          0x00,0x40,0x08,0x20,0x28,0x10,0x49,0x08,0x8A,0x04,0x0C,0x03,0xC8,0x06,0x38,0x38,
  93          0x08,0x10,0x00,0x00,0xF8,0x07,0x00,0x20,0x00,0x40,0xFF,0x3F,0x00,0x00,0x00,0x00,/*刘*/
  94          0x00,0x00,0x90,0x00,0x8C,0x00,0x84,0x00,0x84,0x00,0x84,0x40,0x85,0x80,0x86,0x7F,
  95          0x84,0x00,0x84,0x00,0x84,0x00,0x84,0x00,0x94,0x00,0x8E,0x00,0x04,0x00,0x00,0x00,/*宁*/
  96          
  97          
  98          
  99          0x00,0x00,0x00,0x00,0xC0,0x00,0xB8,0x1E,0xA0,0x02,0xFE,0x3F,0xA4,0x02,0x60,0x02,
 100          0x50,0x1E,0x00,0x00,0xE0,0x03,0x00,0x00,0x14,0x60,0xEC,0x3F,0x00,0x00,0x00,0x00,/*"制",7*/
 101          
 102          0x00,0x00,0x00,0x01,0x80,0x00,0x40,0x00,0xF0,0x3F,0x0C,0x00,0x80,0x00,0x40,0x00,
 103          0x30,0x00,0xEE,0x7E,0x20,0x09,0x20,0x09,0x20,0x05,0x10,0x00,0x00,0x00,0x00,0x00,/*"作",8*/
 104          
 105          };
 106          
 107          uchar code Thanks[] = 
 108          {
 109           0x00,0x00,0x00,0x08,0x00,0x09,0x00,0x10,
 110                0x00,0xFF,0x00,0x20,0x00,0x42,0x00,0x04,
 111                0x00,0xC8,0x00,0x30,0x00,0x2C,0x00,0xC3,
 112                0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x00,
 113          
 114           0x00,0x00,0x00,0x80,0x00,0x81,0x00,0x86,
 115                0x00,0x98,0x00,0xE0,0x00,0xB1,0x00,0xAA,
 116                0x00,0xA4,0x00,0xAA,0x00,0xB2,0x00,0xA1,
 117                0x00,0x81,0x00,0x01,0x00,0x00,0x00,0x00,
C51 COMPILER V8.02   MAIN                                                                  07/06/2010 09:13:29 PAGE 3   

 118           0x00,0x00,0x00,0x00,0x00,0xFF,0x00,0x00,
 119                0x00,0x00,0x00,0x08,0x00,0x10,0x00,0x61,
 120                0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x40
 121          };
 122          
 123          /*延时函数*/
 124          void delay(uint X)
 125          {
 126   1         uint i;
 127   1         for(i=0;i<=X;i++)
 128   1         ;
 129   1      }
 130          /* '嵌入式系统工程'显示112*16像素 */
 131          void display1()
 132          {
 133   1       uchar i;
 134   1       delay(4000);
 135   1       for(i=0;i<80;i++)
 136   1       {
 137   2           P0=~Embed[i*2];
 138   2           P2=~Embed[i*2+1];
 139   2           delay(40);//延时时间自己可以调,最好让画面显示在中间
 140   2       }
 141   1      }
 142          /*'LOVE'显示64*16像素 */
 143          void display2()
 144          {  
 145   1        uchar i;
 146   1        delay(4000);
 147   1        for(i=0;i<64;i++)
 148   1        {
 149   2         P0=~love[i*2];
 150   2       P2=~love[i*2+1];
 151   2       delay(120);
 152   2        }
 153   1      
 154   1      }
 155          /*心形图案 显示64*16像素 */
 156          void display3()
 157          {
 158   1         uchar i;
 159   1         delay(4000);
 160   1        for(i=0;i<64;i++)
 161   1        {
 162   2         P0=~love_picture[i*2];
 163   2       P2=~love_picture[i*2+1];
 164   2       delay(120);
 165   2        }
 166   1      }
 167          
 168          /*‘Hello!’显示64*16像素 */
 169          void display4()
 170          {
 171   1        uchar i;
 172   1        delay(4000);
 173   1        for(i=0;i<64;i++)
 174   1        {
 175   2         P0=~Hello[i*2];
 176   2       P2=~Hello[i*2+1];
 177   2       delay(120);
 178   2        }
 179   1      }
C51 COMPILER V8.02   MAIN                                                                  07/06/2010 09:13:29 PAGE 4   

 180          /*笑脸图案 显示64*16像素*/
 181          void display5()
 182          {
 183   1        uchar i;
 184   1        delay(4000);
 185   1        for(i=0;i<64;i++)
 186   1        {
 187   2         P0=~Smile[i*2];
 188   2       P2=~Smile[i*2+1];
 189   2       delay(120);
 190   2        }
 191   1      }
 192          
 193          /*‘Hxembed制作 显示88*16像素’*/
 194          void display6()
 195          {
 196   1        uchar i;
 197   1        delay(4000);
 198   1        for(i=0;i<88;i++)
 199   1        {
 200   2         P0=~Hxembed_Make[i*2];
 201   2       P2=~Hxembed_Make[i*2+1];
 202   2       delay(60);
 203   2        }
 204   1      }
 205          /* '谢谢!'显示48*16像素 */
 206          void display7()
 207          {
 208   1         uchar i;
 209   1         delay(4000);
 210   1        for(i=0;i<48;i++)
 211   1        {
 212   2         P0=~Thanks[i*2];
 213   2       P2=~Thanks[i*2+1];
 214   2       delay(120);
 215   2        }
 216   1      }
 217          
 218          /*外部中断0子函数*/
 219          void int0(void) interrupt 0 
 220          {
 221   1      Direction=~Direction;
 222   1       if(Direction==0)
 223   1       {
 224   2        Int0_num++;//中断次数加1
 225   2        switch(Key_num)
 226   2        {
 227   3        case 0:display1();break;
 228   3        case 1:display2();break;
 229   3        case 2:display3();break;
 230   3        case 3:display4();break;
 231   3        case 4:display5();break;
 232   3        case 5:display6();break;
 233   3        case 6:display7();break;
 234   3        default :display1();
 235   3        }
 236   2       }
 237   1      }
 238          void main(void)
 239          {
 240   1      EA=1;//开总中断
 241   1      IT0=1;//下降沿中断
C51 COMPILER V8.02   MAIN                                                                  07/06/2010 09:13:29 PAGE 5   

 242   1      EX0=1;//启动外部中断0你——怒目
 243   1      
 244   1      Key_num=0;//初始化按键次数为零
 245   1      
 246   1      while(1)
 247   1      {
 248   2       if(key==0)
 249   2       {
 250   3        delay(10000); // 去抖,可以跟自己的电路适当选择时间
 251   3        if(key==0)
 252   3        {
 253   4         Key_num++;
 254   4         if(Key_num>6)//如果超过切换页面的次数就清零
 255   4          Key_num=0;
 256   4        }
 257   3       }
 258   2      }
 259   1      }
 260          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    518    ----
   CONSTANT SIZE    =    936    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =      3    ----
   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 + -