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

📄 10-++٦

📁 10内秒表程序
💻
字号:
C51 COMPILER V8.02   10S的秒表                                                             07/29/2012 09:40:19 PAGE 1   


C51 COMPILER V8.02, COMPILATION OF MODULE 10S的秒表
OBJECT MODULE PLACED IN 10S的秒表.OBJ
COMPILER INVOKED BY: F:\keil\C51\BIN\C51.EXE 10S的秒表.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          #include<reg51.h>
   2          #define uchar unsigned char
   3          #define uint unsigned int
   4          uchar count=0;  
   5          uchar code tab[]={
   6          0x3f,0x06,0x5b,0x4f,0x66,
   7          0x6d,0x7d,0x07,0x7f,0x6f};//共阴数码管0123456789
   8          sbit key1=P3^6;
   9          sbit key2=P3^7;
  10          uchar sec,flag,temp,i;
  11          uchar state;
  12          void delay(uchar z)
  13          {
  14   1              uchar x;
  15   1              while(z--)
  16   1                      for(x=120;x>0;x--);
  17   1      }
  18          void init()
  19          {
  20   1              P0=0x3f;P2=0x3f;
  21   1              flag=0;
  22   1              state=1;
  23   1              sec=0;
  24   1              i=0;
  25   1              TMOD=0x01;
  26   1              TH0=(65536-50000)/256;
  27   1              TL0=(65536-50000)%256;
  28   1              PX0=1;
  29   1              EA=1;
  30   1              EX0=1;
  31   1      }
  32          void main()
  33          {
  34   1              init();
  35   1              while(1)
  36   1              {
  37   2                      if(state!=key2)
  38   2                      {
  39   3                              delay(10);
  40   3                              state=key2;
  41   3                              //while(key2==0);
  42   3                              if(state==0)
  43   3                               {
  44   4                                      delay(10);
  45   4                                      flag=(flag+1)%2;
  46   4                                      switch(flag)
  47   4                                      {
  48   5                                              case 0:
  49   5                                              EA=0;ET0=0;TR0=0;break;
  50   5                                              case 1:
  51   5                                              EA=1;ET0=1;TR0=1;break;
  52   5                                      }
  53   4                                }
  54   3                      }
  55   2              }
C51 COMPILER V8.02   10S的秒表                                                             07/29/2012 09:40:19 PAGE 2   

  56   1      }
  57          void timer0() interrupt 1
  58          {
  59   1              TH0=(65536-50000)/256;
  60   1              TL0=(65536-50000)%256;
  61   1              if(++i==2)
  62   1              {
  63   2                      i=0;
  64   2                      ++sec;
  65   2                      P0=tab[sec/10];
  66   2                      P2=tab[sec%10];
  67   2                      if(sec==100)
  68   2                              sec=0;
  69   2              }
  70   1      }
  71          void exter0() interrupt 0
  72          {
  73   1              P0=0x3f;P2=0x3f;i=0;sec=0;
  74   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    191    ----
   CONSTANT SIZE    =     10    ----
   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 + -