C51 COMPILER V8.08   5                                                                     08/15/2015 12:48:48 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE 5
OBJECT MODULE PLACED IN 5.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 5.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*********************************************************************************
   2          * 【编写时间】： 2014年3月5日
   3          * 【作    者】： 清翔电子:03
   4          * 【版    本】： 1.0
   5          * 【网    站】： http://www.qxmcu.com/ 
   6          * 【淘宝店铺】： http://qxmcu.taobao.com/ 
   7          * 【实验平台】： QX-MCS51 单片机开发板
   8          * 【外部晶振】： 11.0592mhz     
   9          * 【主控芯片】： STC89C52
  10          * 【编译环境】： Keil μVisio3  
  11          * 【程序功能】： 让QX-MCS51 实验板的八位数码管同时显示数字0到7。                                                                                    
  12          * 【使用说明】： 
  13          *  说明：免费开源，不提供源代码分析.
  14          **********************************************************************************/
  15          
  16          #include <reg51.h>
  17          
  18          sbit dula=P2^6;         //段选信号的锁存器控制
  19          sbit wela=P2^7;         //位选信号的锁存器控制
  20          
  21          unsigned char code wei[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
  22                                                          //数码管各位的码表
  23          unsigned char code duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
  24                                  0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
  25                                                          //0-f的码表
  26          void delay(unsigned int i)
  27          {
  28   1              unsigned int m,n;
  29   1              for(m=i;m>0;m--)
  30   1                      for(n=90;n>0;n--);
  31   1      }
  32          
  33          void main()
  34          {
  35   1              unsigned char num;
  36   1              while(1)
  37   1              {
  38   2                      for(num=0;num<8;num++)
  39   2                      {
  40   3                              P0=wei[num];       
  41   3                              wela=1;
  42   3                              wela=0;
  43   3      
  44   3                              P0=duan[num];     
  45   3                              dula=1;
  46   3                              dula=0;
  47   3                              delay(2);        //时间间隔短，这是关键（所谓的同时显示，只是间隔较短而已，利用人眼的余辉效应，觉得每个数码管
             -都一直在亮）。
  48   3                       }
  49   2              }
  50   1      }
  51          


MODULE INFORMATION:   STATIC OVERLAYABLE
C51 COMPILER V8.08   5                                                                     08/15/2015 12:48:48 PAGE 2   

   CODE SIZE        =     67    ----
   CONSTANT SIZE    =     24    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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