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

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

?? clock.c

?? c8051F330的一個電子鐘
?? C
字號:
	#include <c8051f330.h>
	#include <intrins.h>

	#define uchar unsigned char
	#define uint unsigned int

	sbit key_h=P1^6;	//小時加
	sbit key_m=P1^7;  //分鐘加
//	sbit key_s=P1^6;
	sbit key_alarm=P2^0;   //鬧鐘

	sbit BEEP=P2^0;      //蜂鳴器輸出

	uchar time0[3];    //time0[0]:秒  time0[1]:分 time0[2]:時
	uchar alarm0[3];   //保存鬧鐘時間
	uchar code  LEDData[ ] = {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,
                          0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,0xff }; //段碼
	uchar code  LEDData_pot[ ] = {0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78, 
                          0x00,0x10,0x08,0x03,0x46,0x21,0x06,0x0E,0xff }; //斷碼帶小數點

	uchar buf_s=0;    //TIMER2中斷計數
	uchar dis_buf[6]; //顯示緩存

	sfr16 TMR2RL = 0xCA;                   // Timer2 Reload Register
sfr16 TMR2 = 0xCC;                     // Timer2 Register
	
//*************************************************
//延時子程序
//*************************************************
	delay(int ms){                           // 延時子程序
	  int i;
	  while(ms--){
  	    for(i = 0; i<2000; i++){
   			_nop_();
   			_nop_();
   			_nop_();
   			_nop_();
  		}
	  }
	}
/*************************************************************/
/* 延時 x*0.14ms                                             */
/*************************************************************/

	void delay0(uchar x)    {
 	  unsigned char i;
  	  while(x--){
  		for (i = 0; i<13; i++) {}
 	  }
	}
 /*************************************************************/
/* 蜂鳴器響一聲                                              */
/*************************************************************/
	void beep(){
  	  unsigned char i;
  	  for (i=0;i<180;i++){
   		delay0(6);
   		BEEP=!BEEP;       //BEEP取反
      } 
     BEEP=1;           //關閉蜂鳴器
     delay(50);       //延時     
	}
//**************************************************************
//定時器2初始化
//**************************************************************
	void TIMER2_init(){
	  
   CKCON &= ~0x60;                     // Timer2 uses SYSCLK/12
   TMR2CN &= ~0x01;

   TMR2RL = 10000;             // Reload value to be used in Timer2
   TMR2 = TMR2RL;                      // Init the Timer2 register

   TMR2CN = 0x04;                      // Enable Timer2 in auto-reload mode
   ET2 = 1;                            // Timer2 interrupt enabled

/*	  CKCON &= ~0x60;                     // Timer2 uses SYSCLK/12
      TMR2CN &= ~0x01;

      TMR2H=0x00;
      TMR2L=0x00;   

      TMR2RLL = 0x00;             // Reload value to be used in Timer2
      TMR2RLH = 0x00;                      // Init the Timer2 register

   

      TMR2CN = 0x04;                      // Enable Timer2 in auto-reload mode
      ET2 = 1;                            // Timer2 interrupt enabled

    }        */
	}
 /*************************************************************/
 //定時器T2中斷
/*************************************************************/
	void Timer2( ) interrupt 5 {
	  buf_s++;
  	  if(buf_s==2){
	    time0[0]++;
		if(time0[0]==60){
		  time0[1]++;
		  time0[0]=0;
		}
		if(time0[1]==60){
		  time0[2]++;
		  time0[1]=0;
		}
		if(time0[2]==24)
		  time0[2]=0;
		buf_s=0;
	  }
	 TF2H=0;
	}
//*************************************************************
//led動態掃描 一次
//************************************************************
	void disp(uchar *p){
	 
	  uchar pos=0xfe;
	  uchar i=0;

	  dis_buf[0]=p[0]%10;
	  dis_buf[1]=p[0]/10;
	   
	  dis_buf[2]=p[1]%10;
	  dis_buf[3]=p[1]/10;

	  dis_buf[4]=p[2]%10;
	  dis_buf[5]=p[2]/10;   


	  for(i=0;i<6;i++){
	    P1=pos;
		if(i==2||i==4)
		  P0=LEDData_pot[dis_buf[i]];
		else
		  P0=LEDData[dis_buf[i]];
		pos=(pos<<1)|0x01;
		delay(1);   
	  }   
	}

//***********************************************************
// 設定小時h 和 分鐘m
//************************************************************
	void set_hm(uchar *s){
		uchar i=0;

	    key_h=1;                //掃描小時增加鍵
		if(key_h==0){
		  delay(1);
 		  if(key_h==0){
 		    s[2]+=1;
		    if(s[2]==24)
 			  s[2]=0;
		  }
		}
		for(i=0;i<8;i++)		//用disp 做延時!
		disp(s);	
		
		key_m=1;			    //掃描分增加鍵
		if(key_m==0){
		  delay(1);
		  if(key_m==0){
			s[1]+=1;
			if(s[1]==60)
			  s[1]=0;
		  }
		}    
     	for(i=0;i<8;i++)		//用disp 做延時!
		disp(s);	

	}  
//***********************************************************
// 設定秒s  清零
//************************************************************
/*	void set_s(){
	    uchar i=8;
	  	key_s=1;			    //掃描分增加鍵
		if(key_s==0){
		  delay(1);
		  if(key_s==0)
		    time0[0]=0;
		}
		while(i--)		//用disp 做延時!
		disp(time0);
	}       */

//***********************************************************
//設定鬧鐘
//************************************************************
 	void set_alarm(){
	  key_alarm=1;
	  if(key_alarm==0){
	    delay(1);
		if(key_alarm==0){
		 while(1){
		    set_hm(alarm0);        //調用設定分鐘 小時
			key_alarm=1;
			if(key_alarm==0){      
			  delay(1);
			  if(key_alarm==0)      
			  break;                 //再次按下key_alarm退出設定鬧鐘
			}
         }
		}
	  }
	}
//***********************************************************
//鬧鐘檢測
//************************************************************
	void check_alarm(){
	uchar i=10;
	if(!(alarm0[1]==0&&alarm0[2]==0)){            //0時0分將被認為鬧鐘關閉
	  if(alarm0[2]==time0[2]){
	    if(alarm0[1]==time0[1]){
		  if(time0[0]==0){
		    while(1){
			  i=10;
     	      beep();
//		      delay(20);
		      while(i--)
              disp(alarm0);    //顯示鬧鐘時間
			  key_alarm=1;
			  if(key_alarm==0||(alarm0[1]!=time0[1])){    
			    delay(1);
				if(key_alarm==0||(alarm0[1]!=time0[1]))
				  break;               //按下key_alarm或者時間超過1分鐘退出
			  }
		    }
		  }
		}
	  }
	}
  }
//***********************************************************
//I/O口初始化
//***********************************************************
	void PORT_init (void){
   	  P0MDIN |= 0xff;                     
   	  P1MDIN |= 0xff;                    

   	  P0MDOUT = 0xff;
   	  P1MDOUT = 0xff;                   

   	  XBR1    = 0xc0;
	                                      
	}
//***********************************************************
//系統時鐘頻率初始化
//***********************************************************
	void SYSCLK_init(){
	  OSCICL=0x3d;  //20MHZ
      OSCICN=0xc2; // sysclk為內部振蕩器得2分頻  10mhz
      CLKSEL=0x00;  //chose internal sysclk
	}
//***********************************************************
//主函數
//************************************************************
	main(){
	  PCA0MD&=~0x40;	  

	  PORT_init();
	  SYSCLK_init();
//	  TIMER2_init();
      while(1){	  
        set_hm(time0);
//		set_s();
		set_alarm();
	    check_alarm();
      }
	} 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品一区在线观看| 国产一区二区影院| 麻豆一区二区三区| 高清国产一区二区| 91高清在线观看| 日韩女优电影在线观看| 蜜桃av一区二区| 国产精品夜夜嗨| 欧美怡红院视频| 精品美女在线观看| 亚洲激情图片qvod| 老司机精品视频线观看86| 成人激情小说乱人伦| 欧美人牲a欧美精品| 中文字幕免费一区| 五月天激情小说综合| 成人听书哪个软件好| 欧美日韩国产乱码电影| 国产欧美日韩精品一区| 五月天精品一区二区三区| 国产成人综合精品三级| 欧美日韩国产天堂| 中文av一区二区| 奇米影视一区二区三区小说| 99久久久久久99| 2024国产精品视频| 亚洲一区精品在线| 粉嫩久久99精品久久久久久夜| 欧美日韩国产高清一区二区三区| 国产欧美一区二区精品仙草咪| 亚洲国产视频a| 国产成人综合在线| 日韩三级免费观看| 亚洲一区二区高清| 成人黄色在线看| 欧美xxxxx裸体时装秀| 亚洲午夜激情网页| 99久久免费精品高清特色大片| 欧美本精品男人aⅴ天堂| 亚洲国产中文字幕在线视频综合| 国产成a人亚洲精| 91精品国产全国免费观看| 一区二区在线观看av| 成人激情小说乱人伦| 精品欧美一区二区三区精品久久 | 免费观看30秒视频久久| 色综合久久久久综合体桃花网| 久久精子c满五个校花| 美女视频黄 久久| 欧美日韩一区二区在线观看视频| 综合在线观看色| 国产精品一品二品| 精品福利av导航| 老汉av免费一区二区三区| 欧美性xxxxxxxx| 亚洲欧美一区二区三区孕妇| 国产成人h网站| 久久中文娱乐网| 黄色成人免费在线| 精品日韩成人av| 日本不卡123| 欧美二区在线观看| 亚洲成av人影院在线观看网| 色94色欧美sute亚洲13| 亚洲视频在线一区| 99精品热视频| 亚洲你懂的在线视频| 成人性生交大片免费看中文网站| 欧美mv和日韩mv国产网站| 卡一卡二国产精品| 日韩欧美国产电影| 六月丁香综合在线视频| 制服丝袜av成人在线看| 日本不卡免费在线视频| 日韩午夜av电影| 蜜桃视频第一区免费观看| 精品日本一线二线三线不卡| 黄网站免费久久| 国产午夜精品久久久久久久| 国产99久久久精品| 成人免费小视频| 一本一本久久a久久精品综合麻豆| 亚洲丝袜自拍清纯另类| 日本精品裸体写真集在线观看| 一区二区高清在线| 欧美精品久久天天躁| 麻豆精品在线观看| 国产亚洲成av人在线观看导航| 国产suv精品一区二区6| 亚洲欧洲日韩av| 欧美视频在线观看一区二区| 日韩**一区毛片| 久久久综合视频| 99re66热这里只有精品3直播 | 91色porny蝌蚪| 亚洲一二三四在线| 欧美一区二区三区人| 激情六月婷婷久久| 国产精品嫩草影院com| 色综合天天综合网国产成人综合天| 一区二区三区四区精品在线视频 | 日韩专区中文字幕一区二区| 日韩一区二区在线观看视频播放| 狠狠狠色丁香婷婷综合久久五月| 国产精品情趣视频| 欧洲视频一区二区| 精品中文字幕一区二区小辣椒| 国产日产欧美一区二区视频| 91精品91久久久中77777| 日本中文一区二区三区| 久久久久国产精品麻豆| 99久久99久久精品免费看蜜桃| 亚洲综合视频网| 精品盗摄一区二区三区| 99国产精品久久久久久久久久久| 亚洲国产精品麻豆| 精品av久久707| 色老汉一区二区三区| 美日韩一级片在线观看| 国产精品成人网| 欧美一区二区在线免费观看| 国产成人aaa| 日韩精品成人一区二区三区| 国产亲近乱来精品视频| 欧美美女网站色| 不卡的av中国片| 蜜臀va亚洲va欧美va天堂| 亚洲欧美中日韩| 精品国产一区二区三区忘忧草| 色综合久久中文综合久久97 | 国产亚洲欧美一区在线观看| 欧美性生活久久| 成人午夜短视频| 蜜桃av一区二区三区| 亚洲精品成a人| 久久久精品欧美丰满| 正在播放一区二区| 色综合久久中文综合久久牛| 国产精品资源在线| 婷婷国产v国产偷v亚洲高清| 日韩一区在线看| 精品国产123| 5566中文字幕一区二区电影| 91视频免费观看| 国产伦精品一区二区三区免费迷| 亚洲国产一区视频| 最新国产成人在线观看| 久久女同互慰一区二区三区| 91精品婷婷国产综合久久性色| 99久久免费精品| 国产成人午夜片在线观看高清观看 | 老司机精品视频线观看86| 亚洲宅男天堂在线观看无病毒| 欧美激情在线看| 久久综合九色综合97_久久久| 欧美狂野另类xxxxoooo| 91精品1区2区| 91天堂素人约啪| 粉嫩av一区二区三区在线播放 | 欧美另类videos死尸| 色综合久久中文综合久久97| www.日韩大片| 国产99久久久精品| 国产福利一区在线| 久久不见久久见免费视频1| 天天色综合成人网| 午夜精品久久久久久久| 一区二区三区中文字幕| 亚洲色图在线看| 亚洲品质自拍视频网站| 国产精品第五页| 国产精品久久久久久久第一福利| 欧美国产一区在线| 国产欧美日韩精品在线| 亚洲国产精品黑人久久久| 国产亚洲一区二区在线观看| 久久亚洲捆绑美女| 国产亚洲制服色| 日本一区二区免费在线观看视频| 国产欧美一区二区精品婷婷| 久久伊99综合婷婷久久伊| 精品久久久久久久人人人人传媒| 日韩久久久久久| 日韩美女一区二区三区四区| 91精品国产综合久久蜜臀| 日韩一区二区三区视频在线观看| 日韩一区二区三区在线观看| 日韩欧美亚洲国产另类| 精品免费国产一区二区三区四区| 精品免费日韩av| 国产亚洲短视频| 国产精品伦理在线| 亚洲同性同志一二三专区| 亚洲男帅同性gay1069| 亚洲视频1区2区| 亚洲成av人综合在线观看| 秋霞成人午夜伦在线观看| 精品一区二区三区视频| 国产呦萝稀缺另类资源| 成人三级伦理片|