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

📄 main.lst

📁 Proteus实例集锦(包括电路图.仿真程序,各种各样的电路
💻 LST
字号:
C51 COMPILER V8.05a   MAIN                                                                 08/11/2007 15:17:05 PAGE 1   


C51 COMPILER V8.05a, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.obj
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE sources\main.c BROWSE INCDIR(.\include;.\include) DEBUG OBJECTEXTEND PRINT(
                    -.\main.lst) OBJECT(main.obj)

line level    source

   1          //*************************************************************************************************
   2          //*************************************************************************************************
   3          //**<程序名>:LED动态扫描显示                                                                                                                                    **
   4          //**<功能>:LED动态显示1s计数。                                                                                                                                  **
   5          //**<作者>:LastRitter                                                                                                                                                   **
   6          //**<完成时间>:2007年7月28日                                                                                                                                    **
   7          //**<联系方式>:superyongzhe@163.com                                                                                                                     **
   8          //*************************************************************************************************
   9          //*************************************************************************************************
  10          
  11          
  12          //*************************************************************************************************
  13          //*                                                                                                                                                                                               *
  14          //*                      ******************************头文件及宏定义**************************                           *
  15          //*                                                                                                                                                                                               *
  16          //*************************************************************************************************
  17          #include "includes.h"
  18          
  19          #define TIME0H 0xFC
  20          #define TIME0L 0x18             //定时器0溢出时间:5ms,用于刷新LED。
  21          
  22          #define TIME1H 0x40
  23          #define TIME1L 0x98             //定时器1溢出时间:49ms,用于计时模式的计数增加。
  24          
  25          
  26          //*************************************************************************************************
  27          //*                                                                                                                                                                                               *
  28          //*                       ********************************全局变量******************************                          *
  29          //*                                                                                                                                                                                               *
  30          //*************************************************************************************************
  31          
  32          unsigned char uc_DisCount=1;            //定时器0定时刷新LED计数。
  33          
  34          unsigned char uc_TimeCount=0;           //定时器1定时计数。
  35          
  36          unsigned long ul_Number=0;                      //LED显示数字。
  37          
  38          
  39          //*************************************************************************************************
  40          //*                                                                                                                                                                                               *
  41          //*                       ********************************主函数******************************                            *
  42          //*                                                                                                                                                                                               *
  43          //*************************************************************************************************
  44          void main()
  45          {
  46   1              TMOD=0x11;                //定时器0:模式一;定时器0:模式一.
  47   1      
  48   1      
  49   1      //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<定时器0,用于LCD刷新>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  50   1              TH0=TIME0H;
  51   1              TL0=TIME0L;
  52   1              TR0=1;                   //开启定时器0
  53   1              ET0=1;                   //开定时器0中断
  54   1      
C51 COMPILER V8.05a   MAIN                                                                 08/11/2007 15:17:05 PAGE 2   

  55   1      
  56   1      //<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<定时器1,用于1s计时 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
  57   1              TH1=TIME1H;
  58   1              TL1=TIME1L;
  59   1              TR1=1;                   //开启定时器1
  60   1              ET1=1;                   //开定时器1中断
  61   1      
  62   1      
  63   1              EA=1;                    //开启总中断
  64   1      
  65   1              while(1);
  66   1      }
  67          
  68          
  69          //*************************************************************************************************
  70          //*                                                                                                                                                                                               *
  71          //*             *****************************定时器1中断,用于计时功能******************************      *
  72          //*                                                                                                                                                                                               *
  73          //*************************************************************************************************
  74          void vTimer1(void) interrupt 3
  75          {
  76   1      
  77   1                      if(uc_TimeCount==19)
  78   1                              {
  79   2                              uc_TimeCount=0;
  80   2                              ul_Number++;
  81   2                              }
  82   1                      else uc_TimeCount++;
  83   1      
  84   1              TH1=TIME1H;
  85   1              TL1=TIME1L;
  86   1      }
  87          
  88          
  89          //*************************************************************************************************
  90          //*                                                                                                                                                                                               *
  91          //*             ***************************定时器0,定时刷新LED*************************                                  *
  92          //*                                                                                                                                                                                               *
  93          //*************************************************************************************************
  94          void vTimer0(void) interrupt 1
  95          {
  96   1              vShowOneNum(*(pucLedNum(ul_Number)+uc_DisCount),uc_DisCount);      //在LED上显示1位数字。
  97   1      
  98   1              if(uc_DisCount<5)
  99   1                      uc_DisCount++;                                          //定时器0在每次被触发时,改变LED显示。
 100   1              else uc_DisCount=0;                                             //从第一位到第六位循环显示。
 101   1      
 102   1              TH0=TIME0H;                                                             //恢复定时器0初始值。
 103   1              TL0=TIME0L;
 104   1      }


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