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

📄 watch.lst

📁 一个始终的设计。。大家看看择那么杨水电开发聚少离多看
💻 LST
字号:
C51 COMPILER V6.12  WATCH                                                                  08/20/2006 22:22:27 PAGE 1   


C51 COMPILER V6.12, COMPILATION OF MODULE WATCH
OBJECT MODULE PLACED IN .\watch.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE .\watch.c DEBUG OBJECTEXTEND

stmt level    source

   1          #include <AT89X51.H>
   2          
   3          //全局变量
   4          unsigned int s_l;		//s
   5          unsigned int s_h;
   6          unsigned int m_l;		//min
   7          unsigned int m_h;
   8          unsigned int h_l;		//hour
   9          unsigned int h_h;
  10          
  11          unsigned int a;
  12          unsigned int i;
  13          //////////////////////////////////////////
  14          
  15          //时间设置
  16          
  17          
  18          
  19          /*
  20          struct SYSTEMTIME
  21          {
  22           int wYear; 
  23           int wMonth; 
  24           int wDayOfWeek; 
  25           int wDay; 
  26           int wHour; 
  27           int wMinute; 
  28           int wSecond; 
  29           int wMilliseconds; 
  30          }nowtime={0,0,0,0,0,0,0,0}; 
  31          
  32          */
  33          
  34          //延时子程序
  35          
  36          void delay(unsigned int times)
  37          {
  38   1      unsigned int i;
  39   1      unsigned int j;
  40   1      for (i=0;i<times;i++)
  41   1      for (j=0;j<10;j++);
  42   1      }
  43          //显示子程序
  44          void display (unsigned int t)
  45          {
  46   1      P1=0x80;
  47   1      P2=s_l;
  48   1      delay(t);
  49   1      P1=0x40;
  50   1      P2=s_h;
  51   1      delay(t);
  52   1      ////////////////////////////////
  53   1      P1=0x10;
  54   1      P2=m_l;
  55   1      delay(t);
C51 COMPILER V6.12  WATCH                                                                  08/20/2006 22:22:27 PAGE 2   

  56   1      P1=0x08;
  57   1      P2=m_h;
  58   1      delay(t);
  59   1      //////////////////////////////////
  60   1      P1=0x02;
  61   1      P2=h_l;
  62   1      delay(t);
  63   1      P1=0x01;
  64   1      P2=h_h;
  65   1      delay(t);
  66   1      }
  67          //中断程序
  68          void timer1 (void) interrupt 3 using 1
  69          {
  70   1      a=a-1;
  71   1      do {} while (i-->0);
  72   1      i=18;
  73   1      if (a==0)
  74   1       {
  75   2       s_l=s_l+1;
  76   2       	if (s_l==10)
  77   2       	{
  78   3      	s_l=0;s_h=s_h+1;
  79   3      		if(s_h==6)
  80   3      		{s_h=0;m_l=m_l+1;
  81   4      			if (m_l==10)
  82   4      			{
  83   5      			m_l=0;m_h=m_h+1;
  84   5      			  	if (m_h==6)
  85   5      				{
  86   6      				m_h=0;h_l=h_l+1;
  87   6      					if (h_l==10)
  88   6      					{
  89   7      					h_l=0;h_h=h_h+1;	
  90   7      					}
  91   6      					else if (h_h==2&h_l==4)
  92   6      						{h_h=0;h_l=0;}
  93   6      				}
  94   5      			}
  95   4      		}	
  96   3       	}
  97   2       a=20;
  98   2      
  99   2       }
 100   1       TH1=-50000/256;
 101   1       TL1=-50000%256;
 102   1      }
 103          //////////////////////////////////////////////
 104          ///////////调定时间
 105          
 106          void set (void) interrupt 2 using 3
 107          {
 108   1      //set second
 109   1       if (P3_0==0)
 110   1       {
 111   2       s_l=s_l+1;
 112   2       	if(s_l==10)
 113   2       	{s_l=0;
 114   3      	s_h=s_h+1;
 115   3      	if(s_h==6)
 116   3      	s_h=0;
 117   3       	}
C51 COMPILER V6.12  WATCH                                                                  08/20/2006 22:22:27 PAGE 3   

 118   2       }
 119   1       //set minute
 120   1       else if (P3_1==0)
 121   1       {
 122   2       m_l=m_l+1;
 123   2       	if(m_l==10)
 124   2       	{
 125   3      	m_l=0;
 126   3      	m_h=m_h+1;
 127   3      	if(m_h==6)
 128   3      	m_h=0;
 129   3       	}
 130   2       }
 131   1       //set hour
 132   1       else if (P3_2==0)
 133   1       {
 134   2       h_l=h_l+1;
 135   2       	if(h_l==10)
 136   2       	{
 137   3      	h_l=0;
 138   3      	h_h=h_h+1;
 139   3       	}
 140   2      	 else if (h_h==2&h_l==4)
 141   2      	 {h_h=0;h_l=0;}
 142   2       }
 143   1      
 144   1      }
 145          
 146          
 147          
 148          ///////////////////////////////////////////////////////////////
 149          void main(void)
 150          {
 151   1       TMOD=0X10;
 152   1       TH1=-50000/256;
 153   1       TL1=-50000%256;
 154   1       EA=1;
 155   1       ET1=1;
 156   1       TR1=1;
 157   1       EX1=1;
 158   1       IT1=1;
 159   1      //struct SYSTEMTIME [nowtime];
 160   1      //GetLocalTime(&nowtime);
 161   1      
 162   1       //s_l=nowTime.wSecond%10;
 163   1       s_l=0;
 164   1       s_h=5;
 165   1       m_l=1;
 166   1       m_h=4;
 167   1       h_l=9;
 168   1       h_h=0;
 169   1       a=20;
 170   1       i=18;
 171   1      
 172   1      do{ display(50);} while(1);
 173   1       
 174   1      }


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    545    ----
   CONSTANT SIZE    =   ----    ----
C51 COMPILER V6.12  WATCH                                                                  08/20/2006 22:22:27 PAGE 4   

   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =     16       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 + -