main.lst

来自「从零开始学51单片机源代码」· LST 代码 · 共 91 行

LST
91
字号
C51 COMPILER V8.08   MAIN                                                                  04/11/2012 10:26:27 PAGE 1   


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

line level    source

   1          //main.c
   2          #include <reg51.h>      //包含头文件
   3          
   4           //定义端口寄存器
   5          sfr P0M0 = 0X93;
   6          sfr P0M1 = 0X94;
   7          sfr P1M0 = 0X91;
   8          sfr P1M1 = 0X92;
   9          sfr P2M0 = 0X95;
  10          sfr P2M1 = 0X96;  
  11          sfr P3M0 = 0Xb1;
  12          sfr P3M1 = 0Xb2; 
  13          
  14          /*
  15          共阴极数码管0 - F的字形码 
  16          “0” 3FH “8” 7FH  
  17          “1” 06H “9” 6FH
  18          “2” 5BH “A” 77H
  19          “3” 4FH “b” 7CH
  20          “4” 66H “C” 39H
  21          “5” 6DH “d” 5EH
  22          “6” 7DH “E” 79H
  23          “7” 07H “F” 71H
  24          */
  25          const unsigned char seg7[16] = { 0x3f, 0x06, 0x5b, 0x4f,
  26                                                                  0x66, 0x6d, 0x7d, 0x07,
  27                                                                  0x7f, 0x6f, 0x77, 0x7c,
  28                                                                  0x39, 0x5e, 0x79, 0x71 };    
  29          
  30          sbit en = P2^3;
  31          
  32          //定义延时函数
  33          void ms_delay(unsigned int t)
  34          {
  35   1              unsigned  int  i;
  36   1              for (t; t > 0; t--)     //外层循环t次    
  37   1                      for (i = 110;i > 0; i--)        //内层循环110次            
  38   1                      ;
  39   1      }  
  40          
  41          main()
  42          {
  43   1              int i ;
  44   1          char dat[8]={1,2,3,4,5,6,7,8};      //保存8个数码管显示的数字 
  45   1      
  46   1              //配置端口模式为开漏输出 
  47   1              P0M1 = 0xff;
  48   1              P0M0 = 0xff; 
  49   1              P2M1 = 0x0f;  //p2.3 p2.2 p2.1 p2.0输出 
  50   1              P2M0 = 0x0f;
  51   1      
  52   1              en = 0; //关闭所有输出 
  53   1      
  54   1              while(1)
  55   1              {
C51 COMPILER V8.08   MAIN                                                                  04/11/2012 10:26:27 PAGE 2   

  56   2                      for (i=0;i<8;i++)
  57   2                      {
  58   3                              P0 = seg7[dat[i]];      //送入第i路的段码
  59   3                              P2=i; //显示第i路
  60   3                              en = 1; //打开总输出
  61   3                              ms_delay(5);
  62   3                              en = 0; //关闭总输出     
  63   3                      }
  64   2              }
  65   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    103    ----
   CONSTANT SIZE    =      8    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     16       8
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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