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

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

?? ds1302old.c

?? 能用串口修改時間的時鐘程序
?? C
字號:
/************************************/
/*杭州電子&計算機工作室				*/
/*http://www.hificat.com			*/
/*DS1302測試程序					*/
/*目標器件:AT89S51					*/
/*晶振:11.0592MHZ					*/
/*編譯環境:Keil 7.50A				*/
/************************************/

/*********************************包含頭文件********************************/
#include "reg51.h"
#include <intrins.h>

/*********************************端口定義**********************************/
sbit DS1302_CLK = P1^0;
sbit DS1302_IO  = P1^1;
sbit DS1302_RST = P1^2;

/*******************************共陽LED段碼表*******************************/
unsigned char code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

/******************************定義全局變量*********************************/
unsigned char second,minute,hour,week,day,month,year;		//秒、分、時、星期、日、月、年
unsigned char minute1,hour1;

unsigned char t1,t2,i;
unsigned char time[]={0x08,0x06,0x19,0x04,0x09,0x30,0x00};	//初始時間數組



unsigned  char secondchar,minutechar,hourchar,weekchar,daychar,monthchar,yearchar;

unsigned char keysum ;

sbit	K1 = P3^2;
sbit	K2 = P3^3;

unsigned char key_s, key_v, tmp;
unsigned char key_s1, key_v1;
//int kk;





/****************************************************************************
函數功能:數碼管掃描延時子程序
入口參數:
出口參數:
****************************************************************************/
void delay1(void)
{
	int k;
	for(k=0;k<400;k++);
}

void delayms(unsigned char ms)	
// 延時子程序
{						
	unsigned char i;
	while(ms--)
	{
		for(i = 0; i < 120; i++);
	}
}


void delayms1(unsigned char ms)	
// 延時子程序
{						
	unsigned char i;
	while(ms--)
	{
		for(i = 0; i < 120; i++);
	}
}


void displayhour(void)
{
	P2=0xfe;			
	P0=tab[hour/16];
	delayms1(1);

	P2=0xfd;
	P0=tab[hour%16];
	delayms1(1);
}

void displayminuite(void)
{


	P2=0xf7;
	P0=tab[minute/16];
	delayms1(1);

	P2=0xef;
	P0=tab[minute%16];
	delayms1(1);

}

void displaysecond(void)
{

	P2=0xbf;
	P0=tab[second/16];
	delayms1();

	P2=0x7f;
	P0=tab[second%16];
	delayms1();

}
/****************************************************************************
函數功能:數碼管顯示子程序
入口參數:k
出口參數:
****************************************************************************/
void display(void)
{
	P2=0xfe;			
	P0=tab[hour/16];
	delay1();

	P2=0xfd;
	P0=tab[hour%16];
	delay1();

	P2=0xfb;
	P0=0xbf;			//顯示"-"
	delay1();

	P2=0xf7;
	P0=tab[minute/16];
	delay1();

	P2=0xef;
	P0=tab[minute%16];
	delay1();

	P2=0xdf;
	P0=0xbf;			//顯示"-"
	delay1();

	P2=0xbf;
	P0=tab[second/16];
	delay1();

	P2=0x7f;
	P0=tab[second%16];
	delay1();
}

/*****************************************************************************
函數功能:向DS1302送一字節數據子程序
入口參數:
出口參數:
*****************************************************************************/
void InputByte(unsigned char byte1)
{
	char i;
	for(i=8;i>0;i--)
	{
		DS1302_IO=(bit)(byte1&0x01);
		DS1302_CLK=1;
		_nop_();
		DS1302_CLK=0;
		byte1>>=1;
	}
	return;
}

/*****************************************************************************
函數功能:讀DS1302一個字節子程序
入口參數:
出口參數:
*****************************************************************************/
unsigned char outputbyte(void)  
{
	unsigned char i;
	unsigned ucdat=0;
	for(i=8;i>0;i--)
	{
		DS1302_IO=1;
		ucdat>>=1;
		if(DS1302_IO)ucdat|=0x80;
		DS1302_CLK=1;
		_nop_();
		DS1302_CLK=0;
	 }
	 return(ucdat);
}

/*****************************************************************************
函數功能:向DS1302某地址寫一字節數據子程序
入口參數:addr,TDat
出口參數:
*****************************************************************************/
void write_ds1302(unsigned char addr,unsigned char TDat)
{
	DS1302_RST=0;
	_nop_();
	DS1302_CLK=0;
	_nop_();
	DS1302_RST=1;
 	InputByte(addr);
	_nop_();
	InputByte(TDat);
	DS1302_CLK=1;
	_nop_();
	DS1302_RST=0;
}

/*****************************************************************************
函數功能:讀DS1302地址子程序
入口參數:add
出口參數:timedata
*****************************************************************************/
unsigned char read_ds1302(unsigned char addr)
{
	unsigned char timedata;
	DS1302_RST=0;
	_nop_();
	DS1302_CLK=0;
	_nop_();
	DS1302_RST=1;
	InputByte(addr);
	timedata=OutputByte();
	DS1302_CLK=1;
	_nop_();
	DS1302_RST=0;
	return(timedata);
}

/*****************************************************************************
函數功能:初始化DS1302子程序
入口參數:time[](全局變量)
出口參數:
*****************************************************************************/
void initial_ds1302()
{
	write_ds1302(0x8e,0x00);		//寫保護寄存器,在對時鐘或RAM寫前WP一定要為0
	write_ds1302(0x8c,time[0]);		//年
	write_ds1302(0x88,time[1]);		//月
	write_ds1302(0x86,time[2]);		//日
	write_ds1302(0x8A,time[3]);		//星期
	write_ds1302(0x84,time[4]);		//時
	write_ds1302(0x82,time[5]);		//分
	write_ds1302(0x80,time[6]);		//秒
	write_ds1302(0x8e,0x80);		//寫保護寄存器
}

void initial_ds13021()
{
	write_ds1302(0x8e,0x00);		//寫保護寄存器,在對時鐘或RAM寫前WP一定要為0
	write_ds1302(0x8c,year);		//年
	write_ds1302(0x88,month);		//月
	write_ds1302(0x86,day);		//日
	write_ds1302(0x8A,week);		//星期
	write_ds1302(0x84,hour);		//時
	write_ds1302(0x82,minute);		//分
	write_ds1302(0x80,second);		//秒
	write_ds1302(0x8e,0x80);		//寫保護寄存器
}

/*****************************************************************************
函數功能:讀DS1302時間子程序
入口參數:
出口參數:全局變量(second,minute,hour,week,day,month,year)
*****************************************************************************/
void read_time()
{
	second=read_ds1302(0x81);		//秒寄存器
	minute=read_ds1302(0x83);		//分
	hour=read_ds1302(0x85);			//時
	week=read_ds1302(0x8B);			//星期
	day=read_ds1302(0x87);			//日
	month=read_ds1302(0x89);		//月
	year=read_ds1302(0x8d);			//年
}

/*****************************************************************************
函數功能:主程序
入口參數:
出口參數:
*****************************************************************************/






bit scan_key1()	
// 掃描按鍵
{
	key_s1 = 0x00;
	key_s1 |= K2;  /////////////////////////////////////////////////
	
	return(key_s1 ^ key_v1);	
}



void proc_key1()
// 鍵處理
{ //  hour=12;
   // displayhour();
	if((key_v1 & 0x01) == 0  )
	{			// K2按下
	    	  
          	if (keysum==1) hour=hour+1;	
			//if(hour==0x10) hour=hour+6;
			//if(hour==0x20) hour=32;
            if (keysum==2) minute=minute+1;
		    if (minute>0x59)  minute=0;
			if (hour>0x23) hour=0;
     

	}

}




bit scan_key()	
// 掃描按鍵
{
	key_s = 0x00;
	key_s |= K1;  /////////////////////////////////////////////////

	return(key_s ^ key_v);	
}

void proc_key()
// 鍵處理
{
	if((key_v & 0x01) == 0)
	{			// K1按下
	//	send_str();		
        keysum++;
/*
          if (keysum==1) 
		      {
			     hour1=hour
			  }

          if (keysum==2)
		      {
			     minute1=minute;
			  }

			  */
	if (keysum>2) 
	   {  	      
     	   keysum=0;
          initial_ds13021();           
	   }
     
	}

}

void main(void)
{   
    /*secondchar=0;
	minutechar=0;
	hourchar=0;
	weekchar=0;
	daychar=0;
	monthchar=0;
	yearchar=0;
*/  
    keysum=0;
	initial_ds1302();				//初始化DS1302
	while(1)
	{    
	  
        if(scan_key())		// 掃描按鍵
		{
			delayms(10);			// 延時去抖動
		
			if(scan_key())			// 再次掃描
			{
				key_v = key_s;		// 保存鍵值
				proc_key();			// 鍵處理
			}
		}
      

		if(scan_key1())		// 掃描按鍵
		{
			delayms(10);			// 延時去抖動
		//	kk=kk+1;
			if(scan_key1())			// 再次掃描
			{
				key_v1 = key_s1;		// 保存鍵值
				proc_key1();			// 鍵處理
			//	kk=0;
			}
		}


      if (keysum==1)displayhour();		 
	     
      if (keysum==2)		  displayminuite();  
      if (keysum==0  )
	    {
		read_time();				//讀取時間
		display();					//顯示時間
		}
	}
}




?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产a级毛片一区| 久久精品国产99国产精品| 欧美变态tickle挠乳网站| 欧美在线看片a免费观看| 91丝袜国产在线播放| 不卡的av在线播放| 色综合天天综合网天天狠天天| 99视频精品免费视频| 一本色道a无线码一区v| 在线观看免费成人| 在线成人免费观看| 精品乱人伦一区二区三区| 久久久青草青青国产亚洲免观| 久久婷婷久久一区二区三区| 国产片一区二区| 一区在线观看视频| 亚洲成a人片综合在线| 日本美女一区二区三区视频| 麻豆国产一区二区| 成人深夜视频在线观看| 不卡av免费在线观看| 色就色 综合激情| 日韩一区二区三区在线观看| 国产亚洲精品精华液| 国产精品久久久久aaaa| 午夜精品成人在线视频| 国产一区二区不卡在线| 91婷婷韩国欧美一区二区| 欧美日韩第一区日日骚| 久久久久久综合| 一区二区高清视频在线观看| 蜜桃av一区二区| 大美女一区二区三区| 色偷偷成人一区二区三区91| 欧美日韩久久一区| 亚洲精品一区二区在线观看| 亚洲日本va在线观看| 美女性感视频久久| av福利精品导航| 精品精品欲导航| 成人国产视频在线观看| 亚洲老妇xxxxxx| 亚洲制服丝袜一区| 国产成人午夜精品5599| 欧美亚洲一区三区| 国产精品久久久久久久久晋中| 亚洲国产va精品久久久不卡综合 | 成人丝袜18视频在线观看| 欧美日韩亚州综合| 中文字幕乱码亚洲精品一区| 美国十次了思思久久精品导航| www.欧美.com| 国产午夜精品一区二区三区视频 | 欧美喷潮久久久xxxxx| 国产色产综合色产在线视频| 日本少妇一区二区| 91国偷自产一区二区开放时间| 国产午夜精品理论片a级大结局| 夜夜精品浪潮av一区二区三区| 国产精品伊人色| 欧美α欧美αv大片| 日日嗨av一区二区三区四区| 91九色02白丝porn| 亚洲另类春色校园小说| 成人av在线网站| 欧美极品少妇xxxxⅹ高跟鞋| 精品一二三四区| 欧美大片国产精品| 蜜臀91精品一区二区三区 | 国产电影精品久久禁18| 精品国一区二区三区| 日韩精品免费视频人成| 精品视频一区三区九区| 亚洲精选在线视频| 91国偷自产一区二区三区观看 | 美女视频黄免费的久久 | 精品伦理精品一区| 久88久久88久久久| 2020国产精品| 成人高清视频在线| 国产精品久久久久一区| 成人在线一区二区三区| 国产精品久久久久影院| 91视频精品在这里| 亚洲一卡二卡三卡四卡五卡| 欧美日韩精品一区视频| 久久精品国产久精国产| 久久综合色鬼综合色| 国产91精品精华液一区二区三区| 国产欧美精品区一区二区三区| 成人美女在线视频| 亚洲精品免费播放| 91.xcao| 国产大陆亚洲精品国产| 成人免费在线播放视频| 欧美曰成人黄网| 久久国产福利国产秒拍| 日本一区二区三区视频视频| 色天使色偷偷av一区二区| 亚洲成av人影院在线观看网| 精品sm在线观看| 97久久精品人人做人人爽| 亚洲成a人v欧美综合天堂下载| 精品av综合导航| 色av综合在线| 久久99国产精品久久99果冻传媒| 中文字幕第一区第二区| 欧美日韩另类一区| 国产九色sp调教91| 亚洲国产裸拍裸体视频在线观看乱了 | 国产一区二区中文字幕| 亚洲色图在线看| 日韩精品一区二区三区在线播放 | 精品福利在线导航| 色偷偷一区二区三区| 国产精品一区二区久久精品爱涩| 亚洲激情男女视频| 久久久精品日韩欧美| 欧美精品乱码久久久久久按摩| 国产剧情在线观看一区二区| 婷婷综合五月天| 亚洲视频电影在线| 久久久亚洲精品一区二区三区| 欧美日韩精品欧美日韩精品一| 国产**成人网毛片九色| 精品一区二区三区欧美| 亚洲一区二区三区四区的| 欧美经典三级视频一区二区三区| 欧美一区二区三区四区五区 | 日本一区二区免费在线| 欧美日产在线观看| 在线看国产一区二区| 成人性生交大片免费看在线播放 | 国产麻豆9l精品三级站| 日本伊人色综合网| 亚洲国产另类av| 亚洲美女淫视频| 亚洲天堂久久久久久久| 中文字幕免费在线观看视频一区| 欧美大片一区二区| 欧美一级黄色录像| 日韩午夜激情电影| 337p亚洲精品色噜噜| 欧美日韩免费一区二区三区视频| 色综合天天综合网天天看片| 成年人网站91| 91婷婷韩国欧美一区二区| 成人av网站在线观看免费| 国产一区二区三区综合| 久久66热re国产| 韩国欧美一区二区| 黑人巨大精品欧美黑白配亚洲| 美女脱光内衣内裤视频久久影院| 亚洲电影中文字幕在线观看| 伊人婷婷欧美激情| 亚洲国产精品人人做人人爽| 亚洲在线视频网站| 亚洲成人动漫在线观看| 婷婷成人激情在线网| 精品一区二区三区久久| 国产精品亚洲第一| 99久久精品一区二区| 在线一区二区三区| 欧美挠脚心视频网站| 日韩一卡二卡三卡四卡| 精品国产区一区| 中文字幕 久热精品 视频在线| 久久久国产一区二区三区四区小说 | 91丝袜美腿高跟国产极品老师| 91网址在线看| 欧美福利一区二区| 日韩精品一区二区三区中文精品| 久久精品人人爽人人爽| 国产精品色婷婷久久58| 亚洲一区二区三区中文字幕| 日韩高清不卡一区二区| 久久se精品一区精品二区| 国产999精品久久久久久| 日本精品视频一区二区| 5858s免费视频成人| 精品粉嫩aⅴ一区二区三区四区 | 一区二区不卡在线播放 | 国产 日韩 欧美大片| 91网站黄www| 日韩欧美在线1卡| 国产精品日日摸夜夜摸av| 亚洲午夜免费电影| 精品亚洲欧美一区| 欧美性videosxxxxx| 国产亚洲欧美日韩在线一区| 同产精品九九九| 99精品久久99久久久久| 日韩欧美在线观看一区二区三区| 国产精品午夜春色av| 日日摸夜夜添夜夜添精品视频| 岛国一区二区在线观看| 日韩免费电影网站| 亚洲午夜视频在线观看| 成人激情黄色小说| 亚洲精品一区二区三区在线观看 |