亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? timer.lst

?? 一用1602顯示的單片機時鐘程序
?? LST
?? 第 1 頁 / 共 2 頁
字號:
C51 COMPILER V8.08   TIMER                                                                 11/10/2008 22:44:44 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE TIMER
OBJECT MODULE PLACED IN timer.OBJ
COMPILER INVOKED BY: D:\keil\C51\BIN\C51.EXE timer.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          /*
   2           timer.c file
   3           Created by Computer-lov. Date: 2005.5.31
   4           Last edited date:2005.5.31
   5           Copyright (c) 2005 Computer-lov
   6           version 1.0
   7           All rigths reserved
   8           歡迎訪問我的blog:  http://computer00.21ic.org
   9          */
  10          
  11          #include "timer.h"
  12          #include "main.h"
  13          #include "keyboard.h"
  14          #include "led.h"
  15          #include "LCD1602.h"
  16          
  17          unsigned char display_buffer[6];        //顯示緩沖區
  18          
  19          unsigned char second,minute,hour,day,month,year;  //分別保存秒、分、時、天、月、年的變量
  20          unsigned char n_50m_second;             //保存多少個50毫秒的變量
  21          unsigned char days_of_month;            //保存該月多少天的變量
  22          
  23          void timer0_isr(void) interrupt 1 using 1      //定時器0中斷處理函數
  24          {
  25   1       TL0=0xB9;
  26   1       TH0=0x3C;                              //定時器重裝。定時50mS中斷一次
  27   1       n_50m_second++;
  28   1       if(n_50m_second>=20)                  //1秒到
  29   1        {
  30   2         n_50m_second=0;                     //清50毫秒計數
  31   2         second++;                           //秒加1
  32   2         if(second==60)                      //如果秒到60
  33   2          {
  34   3           second=0;                         //秒清0
  35   3           minute++;                         //分加1
  36   3           if(minute==60)                    //如果分到60
  37   3            {
  38   4             minute=0;                       //分清0
  39   4             hour++;                         //小時加1
  40   4             if(hour==24)                    //如果小時到24
  41   4              {
  42   5               hour=0;                       //小時清零
  43   5               day++;                        //天加1
  44   5               if(day>days_of_month)         //如果天大于本月最后一天
  45   5                {
  46   6                 day=1;                      //天置1
  47   6                 month++;                    //月加1
  48   6                 if(month>12)                //如果月大于12
  49   6                  {
  50   7                   month=1;                  //月置1
  51   7                   year++;                   //年加1
  52   7                   if(year>=100)             //如果年大于100
  53   7                    {
  54   8                     year=0;                 //年清零
  55   8                    }
C51 COMPILER V8.08   TIMER                                                                 11/10/2008 22:44:44 PAGE 2   

  56   7                  }
  57   6                }
  58   5              }
  59   4            }
  60   3          }
  61   2        } 
  62   1      }
  63          
  64          #define NORMAL       0
  65          #define SECOND_ADJ   1
  66          #define MINUTE_ADJ   2
  67          #define HOUR_ADJ     3
  68          #define DAY_ADJ      4
  69          #define MONTH_ADJ    5
  70          #define YEAR_ADJ     6
  71          
  72          #define STATUS_MIN   0
  73          #define STATUS_MAX   6
  74          
  75          unsigned char calculate_days(void)       //計算本月有多少天
  76          {
  77   1       unsigned int temp;
  78   1       switch (month)
  79   1        {
  80   2         case 1:
  81   2         case 3:
  82   2         case 5:
  83   2         case 7:
  84   2         case 8:
  85   2         case 10:
  86   2         case 12:
  87   2                 return 31;  //1、3、5、7、8、10、12月為31天
  88   2                 break;
  89   2         case 4:
  90   2         case 6:
  91   2         case 9:
  92   2         case 11:            //4、6、9、11月為30天
  93   2                 return 30;
  94   2                 break;
  95   2         case 2:
  96   2                 temp=2000+year; //因為year中保存的是年的最后兩位,所以要加上2000
  97   2                 if((((temp%4)==0)&&((temp%100)!=0))||((temp%400)==0))
  98   2                  {
  99   3                   return 29;    //閏年2月為29天
 100   3                  }
 101   2                 else
 102   2                  {
 103   3                   return 28;    //平年2月為28天
 104   3                  }
 105   2        }
 106   1      }
 107          
 108          unsigned char flicker_time;     //閃爍頻率
 109          unsigned char display_on;       //顯示開關標志。用來產生閃爍效果
 110          unsigned char status;           //狀態值
 111          unsigned char display_date;     //是否是顯示日期
 112          
 113          void timer(void)
 114          {
 115   1       if(key==KEY_FUNCTION)          //如果功能鍵按下
 116   1        {
 117   2         if(status<STATUS_MAX)status++;   //如果狀態值小于對大狀態,則狀態值加1
C51 COMPILER V8.08   TIMER                                                                 11/10/2008 22:44:44 PAGE 3   

 118   2         else status=STATUS_MIN;          //否則,狀態值置最小狀態值
 119   2         key=0;                           //清鍵值
 120   2        }
 121   1      
 122   1      
 123   1      /*****************************************************/
 124   1      // 我加入的代碼
 125   1      if(key==KEY_ENTER)          //如果確定鍵按下
 126   1      {
 127   2          status=NORMAL;          
 128   2         key=0;                         
 129   2      }
 130   1      /*****************************************************/
 131   1      
 132   1       days_of_month=calculate_days();    //計算本月天數
 133   1       switch (status)
 134   1        {
 135   2         case NORMAL:                     //平常狀態
 136   2          {
 137   3           if(key==KEY_UP)                //如果上翻鍵按下,則顯示日期
 138   3            {
 139   4             display_date=100;            //設置顯示日期的時間
 140   4             key=0;
 141   4            }
 142   3           if(key==KEY_DOWN)             //如果下翻鍵按下,則顯示時間
 143   3            {
 144   4             display_date=0;
 145   4             key=0;
 146   4            }
 147   3           if(display_date)              //如果是顯示日期,則計算日期每位
 148   3            {
 149   4             display_buffer[5]=16+day%10;
 150   4             display_buffer[4]=day/10;
 151   4             display_buffer[3]=16+month%10;
 152   4             display_buffer[2]=month/10;
 153   4             display_buffer[1]=16+year%10;
 154   4             display_buffer[0]=year/10;
 155   4             display_date--;               //經過一定時間后,自動顯示時間
 156   4            }
 157   3           else                            //如果是顯示時間,則計算時間每位                     
 158   3            {
 159   4             display_buffer[5]=second%10;
 160   4             display_buffer[4]=second/10;
 161   4             display_buffer[3]=16+minute%10;
 162   4             display_buffer[2]=minute/10;
 163   4             display_buffer[1]=16+hour%10;
 164   4             display_buffer[0]=hour/10;
 165   4            }
 166   3             display(display_buffer);        //顯示結果
 167   3             break;
 168   3          }
 169   2         case SECOND_ADJ:                  //秒調整狀態
 170   2          {
 171   3           if(key==KEY_UP)               //上翻鍵按下,秒增加1
 172   3            {
 173   4             display_on=1;               //開顯示,調整時能看清楚
 174   4             second++;
 175   4             if(second>=60)second=0;     //如果秒到60,則清0
 176   4             key=0;
 177   4            }
 178   3           if(key==KEY_DOWN)             //下翻鍵按下,秒減1
 179   3            {
C51 COMPILER V8.08   TIMER                                                                 11/10/2008 22:44:44 PAGE 4   

 180   4             display_on=1;
 181   4             second--;
 182   4             if(second>=60)second=59;
 183   4             key=0;
 184   4            }
 185   3           display_buffer[5]=second%10;   //計算每位值
 186   3           display_buffer[4]=second/10;
 187   3           display_buffer[3]=16+minute%10;
 188   3           display_buffer[2]=minute/10;
 189   3           display_buffer[1]=16+hour%10;
 190   3           display_buffer[0]=hour/10;
 191   3           if(!display_on)             //如果關顯示
 192   3            {
 193   4             flicker_time++;           //閃爍計時加1
 194   4             if(flicker_time>20){flicker_time=0;display_on=1;}   //如果閃爍計時到20,開顯示
 195   4             display_buffer[5]=DISPLAY_OFF;
 196   4             //display_buffer[4]=DISPLAY_OFF;
 197   4            }
 198   3           else                       //如果開顯示
 199   3            {
 200   4             flicker_time++;           //閃爍計時加1
 201   4             if(flicker_time>30){flicker_time=0;display_on=0;}   //如果閃爍計時到20,關顯示
 202   4            }
 203   3           display(display_buffer);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久亚洲免费视频| 国产米奇在线777精品观看| 欧美精品黑人性xxxx| 日本怡春院一区二区| 69av一区二区三区| 韩国视频一区二区| 国产精品天天看| 91在线视频播放| 久久91精品久久久久久秒播| 欧美va亚洲va国产综合| av不卡在线播放| 日本网站在线观看一区二区三区 | 亚洲摸摸操操av| 精品黑人一区二区三区久久| 97精品久久久午夜一区二区三区| 精品福利一区二区三区免费视频| 91日韩精品一区| 黄色资源网久久资源365| 亚洲影院在线观看| 国产日韩欧美综合在线| 在线播放日韩导航| 国产精品系列在线观看| 亚洲自拍偷拍av| 国产精品私房写真福利视频| 欧美va天堂va视频va在线| 欧美性生活一区| 伦理电影国产精品| 亚洲一区二区欧美激情| 久久色视频免费观看| 欧美日韩国产在线播放网站| 99在线热播精品免费| 国产精品羞羞答答xxdd| 国产一区二区三区久久久 | 欧洲国产伦久久久久久久| 国产成人三级在线观看| 裸体一区二区三区| 日韩综合小视频| 日韩国产一区二| 亚洲一区二区免费视频| 亚洲国产精品一区二区www在线| 亚洲三级免费电影| 一区二区三区四区视频精品免费| 国产欧美精品一区二区三区四区| 日韩午夜中文字幕| 国产日韩欧美制服另类| 国产精品久久久一本精品| 亚洲一二三区不卡| 蜜桃视频在线观看一区二区| 亚洲成人av一区二区三区| 亚洲黄色av一区| 亚洲成人精品一区| 久久国产精品一区二区| zzijzzij亚洲日本少妇熟睡| 一本大道久久精品懂色aⅴ | www.视频一区| 精品福利视频一区二区三区| 一区二区三区免费在线观看| 亚洲网友自拍偷拍| 久久综合久久鬼色| 综合久久给合久久狠狠狠97色 | 欧美色精品在线视频| 久久伊人蜜桃av一区二区| 亚洲精品久久嫩草网站秘色| 激情五月激情综合网| 4438成人网| 香港成人在线视频| 欧美亚洲日本一区| 亚洲精品精品亚洲| 99视频一区二区三区| 久久这里都是精品| 国产传媒欧美日韩成人| 日韩三级免费观看| 老司机精品视频一区二区三区| 在线免费视频一区二区| 亚洲免费观看高清完整版在线 | 日韩一区二区高清| 美女视频黄 久久| 久久亚洲精品国产精品紫薇| 日本欧美久久久久免费播放网| 欧美日韩精品高清| 久久精品国产亚洲aⅴ| 国产亚洲精品超碰| 成人av集中营| 国产精品九色蝌蚪自拍| 91福利国产精品| 日本成人在线一区| 国产拍揄自揄精品视频麻豆| 99精品久久只有精品| 亚洲成在线观看| 久久久久久久综合日本| 色视频成人在线观看免| 亚洲国产精品一区二区尤物区| 久久色在线观看| 久久精品这里都是精品| 久久婷婷国产综合精品青草| 精品久久久久久久人人人人传媒 | 欧美日韩一级二级| 91欧美一区二区| 亚洲欧美日韩在线播放| 日韩美一区二区三区| 色先锋久久av资源部| 国产精品一区二区视频| 蜜桃av一区二区在线观看| 亚洲免费观看视频| 国产精品无人区| 精品第一国产综合精品aⅴ| 欧美日韩国产乱码电影| 欧美在线观看你懂的| 96av麻豆蜜桃一区二区| 国产xxx精品视频大全| 国产一区二区在线影院| 国内一区二区在线| 国产乱码精品一区二区三区av| 日韩国产精品大片| 卡一卡二国产精品 | 麻豆91免费看| 激情综合网av| 成人网页在线观看| 91婷婷韩国欧美一区二区| 99国产精品国产精品毛片| 91视频在线观看免费| 91久久精品一区二区三区| 欧美在线|欧美| 欧美成人国产一区二区| 国产色产综合产在线视频| 亚洲美女屁股眼交| 亚洲一卡二卡三卡四卡无卡久久| 99久久精品国产一区二区三区| 日产精品久久久久久久性色| 亚洲精品成人在线| 在线精品视频小说1| 国产精品一线二线三线| 国产成人免费av在线| 视频一区二区三区中文字幕| 国产精品每日更新| 亚洲日本在线观看| 亚洲一区影音先锋| 日韩在线观看一区二区| 精品制服美女久久| 97久久精品人人澡人人爽| 欧美日韩综合在线| 国产网站一区二区| 免费日本视频一区| 欧美午夜不卡在线观看免费| 欧美sm美女调教| 视频一区在线播放| 色哟哟在线观看一区二区三区| 2017欧美狠狠色| 久久精品国产免费| 欧美精品日日鲁夜夜添| 欧美国产成人在线| 国产成人在线观看| 久久精品一区四区| 国产精品自拍三区| 欧美人体做爰大胆视频| 亚洲国产视频网站| 在线视频欧美精品| 丝袜诱惑制服诱惑色一区在线观看 | 国产清纯在线一区二区www| 日本特黄久久久高潮| 日韩欧美一区中文| 久久99国产精品久久99果冻传媒| 精品国产不卡一区二区三区| 国产一区在线不卡| 亚洲欧洲性图库| 色先锋aa成人| 三级亚洲高清视频| 久久久精品天堂| 91污片在线观看| 日韩精品乱码av一区二区| 精品乱人伦小说| 99久久婷婷国产综合精品电影| 亚洲色欲色欲www| 69久久夜色精品国产69蝌蚪网| 美女视频黄 久久| 日本一区二区电影| 67194成人在线观看| 国产精品自拍毛片| 一区二区三区四区亚洲| 精品捆绑美女sm三区| 色偷偷一区二区三区| 成人国产精品免费观看动漫| 亚洲高清久久久| 日本一区二区成人在线| 日韩欧美一级二级| 色天天综合久久久久综合片| 国产一区二区美女诱惑| 亚洲与欧洲av电影| 亚洲日本韩国一区| 国产欧美久久久精品影院| 欧美大片国产精品| 欧美日韩国产综合一区二区三区 | 一区二区三区美女| 亚洲四区在线观看| 中文字幕中文在线不卡住| 久久综合久久综合亚洲| 欧美精品一区在线观看| 日韩精品最新网址| 欧美一区二区在线观看| 欧美日韩国产一区二区三区地区|