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

📄 text1.lst

📁 单片机快速入门原程序
💻 LST
字号:
C51 COMPILER V7.50   TEXT1                                                                 05/27/2006 20:45:22 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE TEXT1
OBJECT MODULE PLACED IN Text1.OBJ
COMPILER INVOKED BY: e:\Keil\C51\BIN\C51.EXE Text1.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include <reg51.h>
   2          #include<stdio.h>
   3          Uart_Init();
   4          sbit P20=0xA0;
   5          sbit P21=0xA1;
   6          sbit P22=0xA2;
   7          sbit P23=0xA3;
   8          bit Change_Flag;
   9          void Update_LED();
  10          xdata int nCounter=0;
  11          xdata int nIndex=0;
  12          xdata int nDataToDisplay=0;
  13          char Table[10]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90};
  14          main()
  15          {       Uart_Init();
  16   1              TH0=0x3C;       /* 计数初值写入TH0 */
  17   1              TL0=0xAF;       /* 写入计数初值到TL0 */
  18   1              ET0=1;          /* 定时器0中断允许*/
  19   1              EA=1;           /* 全局中断允许 */
  20   1              TF0=0;          /* 定时器0中断标志位清0 */
  21   1              TR0=1;          /* 定时器0准备开始 */
  22   1              P2=0xFF;        /* 端口初始化 */
  23   1              Change_Flag=0;/* 变量初始化 */
  24   1              nCounter=0;
  25   1              while(1)
  26   1              {       if(Change_Flag==1)
  27   2                      {Update_LED();
  28   3                              if(nDataToDisplay>9999) nDataToDisplay=0;
  29   3                              printf("counter refreshed  %d \n",nDataToDisplay);                         
  30   3                      }
  31   2              }
  32   1      }
  33          void Timer0_Overflow() interrupt 1 using 0
  34          {       TH0=0x3C;       /* 计数初值写入TH0 */
  35   1              TL0=0xAF;       /* 写入计数初值到TL0 */
  36   1      if(nCounter==20)
  37   1                      {nCounter=0;
  38   2                              nDataToDisplay++;
  39   2                              Change_Flag=1;
  40   2                              /* 计数时间到1s计数值加1 */
  41   2                      }
  42   1              nCounter++;
  43   1      }
  44          Uart_Init()
  45                  {SCON = 0x52;    /* 设置串行口控制寄存器SCON*/
  46   1               TMOD = 0x21;    /* 12M时钟时波特率为2400  */
  47   1               TCON = 0x69;    /* TCON */
  48   1               TH1 =  0xf3;    /* TH1 */
  49   1              }
  50          void Update_LED()
  51          {       int nTemp;
  52   1              nTemp=nDataToDisplay;
  53   1              P20=1;
  54   1              nIndex=nTemp%10;
  55   1              P1=Table[nIndex];
C51 COMPILER V7.50   TEXT1                                                                 05/27/2006 20:45:22 PAGE 2   

  56   1              P20=0;
  57   1      
  58   1              nTemp/=10;
  59   1              P21=1;
  60   1              nIndex=nTemp%10;
  61   1              P1=Table[nIndex];
  62   1              P21=0;
  63   1      
  64   1              nTemp/=10;
  65   1              P22=1;
  66   1              nIndex=nTemp%10;
  67   1              P1=Table[nIndex];
  68   1              P22=0;
  69   1      
  70   1              nTemp/=10;
  71   1              P23=1;
  72   1              nIndex=nTemp%10;
  73   1              P1=Table[nIndex];
  74   1              P23=0;
  75   1              Change_Flag=0;
  76   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    312    ----
   CONSTANT SIZE    =     24    ----
   XDATA SIZE       =      6    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     10    ----
   IDATA SIZE       =   ----    ----
   BIT SIZE         =      1    ----
END OF MODULE INFORMATION.


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

⌨️ 快捷键说明

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