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

📄 main.lst

📁 单片机C51的定时器程序
💻 LST
字号:
C51 COMPILER V9.00   MAIN                                                                  06/14/2012 09:58:46 PAGE 1   


C51 COMPILER V9.00, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN .\output\main.obj
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE str\main.c BROWSE DEBUG OBJECTEXTEND PRINT(.\list\main.lst) OBJECT(.\output
                    -\main.obj)

line level    source

   1                    /********************************************************************
   2          * 文件名  : main.c
   3          * 描述    :  定时器0工作方式1,在外部晶振11.0592MHZ下,精确定时5ms,
   4                       每隔一秒数码管上的数值加1。
   5          * 创建人  : 符芳壮,2012年6月13日
   6          * 版本号  : 1.0
   7          ***********************************************************************/
   8          #include<reg52.h>
   9          #include<intrins.h>
  10          #define uint unsigned int 
  11          #define uchar unsigned char
  12          
  13          //数码管的段码编码
  14          uchar code table[16] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
  15          //下一行的数组可以显示数值外,还可以显示数码管的点
  16          uchar code table_d[16] = {0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef,0xf7,0xfc,0xb9,0xde,0xf9,0xf1}
             -;
  17          
  18          //定义全局变量
  19          uint count;
  20          /**********************************************************
  21          *函数名称:void time0_init(void)
  22          *函数功能:定时器0初始化
  23          *输入    :无
  24          *输出    :无
  25          **********************************************************/
  26          void time0_init(void)
  27          {
  28   1          TMOD = 0x01; //定时器0工作方式1
  29   1              TH0  = 0xEE;
  30   1              TL0  = 0x00; //定时5ms
  31   1              EA   =1;     //开启总中断
  32   1              ET0  =1;    //开启定时器0中断
  33   1              TR0  =1;   //启动定时器0
  34   1      }
  35          
  36          
  37          
  38          /**********************************************************
  39          *函数名称:void time0_int(void)
  40          *函数功能:定时器0中断实现count自加
  41          *输入    :无
  42          *输出    :无
  43          **********************************************************/
  44          void time0_int(void) interrupt 1 using 0
  45          {
  46   1              TH0  = 0xEE;  //重新装载初值
  47   1              TL0  = 0x00; //定时5ms
  48   1              count++;
  49   1      }
  50          
  51          
  52          void main(void)
  53          {
C51 COMPILER V9.00   MAIN                                                                  06/14/2012 09:58:46 PAGE 2   

  54   1         uint i = 0;
  55   1         time0_init();
  56   1         P2 = 0x00;
  57   1         while(1){
  58   2         P0 = table[i%16];
  59   2         if(count==200){
  60   3         i++;
  61   3         count=0;
  62   3         }
  63   2      
  64   2         
  65   2         }
  66   1      }


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