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

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

?? 調年月日時分 ds1302.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 second1,minute1,hour1,week1,day1,month1,year1;
unsigned char t1,t2,i;
unsigned char time[]={0x08,0x06,0x19,0x04,0x09,0x30,0x00};	//初始時間數組

//P=8C

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=0x8c;
	delayms1(1);
			
	P2=0xfd;
    P0=tab[5];
	delayms1(1);

    P2=0xf7;
    P0=tab[hour1/10];
	delayms1(1);

//	P2=0xfd;
    P2=0xef;
	P0=tab[hour1%10];
	delayms1(1);
}

void displayminuite(void)
{

	P2=0xfe;
    P0=0x8c;
	delayms1(1);
			
	P2=0xfd;
    P0=tab[6];
	delayms1(1);

	P2=0xf7;
	P0=tab[minute1/10];
	delayms1(1);

	P2=0xef;
	P0=tab[minute1%10];
	delayms1(1);

}


void displayyear(void)
{


	P2=0xfe;
    P0=0x8c;
	delayms1(1);
			
	P2=0xfd;
    P0=tab[1];
	delayms1(1);

	P2=0xf7;
	P0=tab[year1/10];
	delayms1(1);

	P2=0xef;
	P0=tab[year1%10];
	delayms1(1);

}


void displaymonth(void)
{

	P2=0xfe;
    P0=0x8c;
	delayms1(1);
			
	P2=0xfd;
    P0=tab[2];
	delayms1(1);

	P2=0xf7;
	P0=tab[month1/10];
	delayms1(1);

	P2=0xef;
	P0=tab[month1%10];
	delayms1(1);

}

void displayday(void)
{


	P2=0xfe;
    P0=0x8c;
	delayms1(1);
			
	P2=0xfd;
    P0=tab[3];
	delayms1(1);

	P2=0xf7;
	P0=tab[day1/10];
	delayms1(1);

	P2=0xef;
	P0=tab[day1%10];
	delayms1(1);

}

void displayweek(void)
{

	P2=0xfe;
    P0=0x8c;
	delayms1(1);
			
	P2=0xfd;
    P0=tab[4];
	delayms1(1);

	P2=0xf7;
	P0=tab[week1/10];
	delayms1(1);

	P2=0xef;
	P0=tab[week1%10];
	delayms1(1);

}


void displaysecond(void)
{

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

	P2=0x7f;
	P0=tab[second%10];
	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按下second1,minute1,hour1,week1,day1,month1,year1;
	    	if (keysum==1) year1=year1+1;
            if (keysum==2) month1=month1+1;
            if (keysum==3) day1=day1+1;
            if (keysum==4) week1=week1+1;
          	if (keysum==5) hour1=hour1+1;//時
            if (keysum==6) minute1=minute1+1;//分
            

            if (year1>20) year1=0;
            if (month1>12) month1=0;
            if (week1>7) week1=0;
            if (day1>31) day1=0; 
		    if (minute1>59)  minute1=0;
			if (hour1>23) hour1=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();	聅econd1,minute1,hour1,week1,day1,month1,year1;	
        keysum++;
          if (keysum==1) 
		     {
		       year1=((int)year)/16;
		       year1=year1*10+((int)year)%16;		
			  }
          if (keysum==2) 
		     {
		       month1=((int)month)/16;
		       month1=month1*10+((int)month)%16;		
			  }

          if (keysum==3) 
		     {
		       day1=((int)day)/16;
		       day1=day1*10+((int)day)%16;		
			  }
          if (keysum==4) 
		     {
		       week1=week;
		       
			  }

          if (keysum==5) 
		     {
		       hour1=((int)hour)/16;
		       hour1=hour1*10+((int)hour)%16;		
			  }

          if (keysum==6)
		      {			    	
			    minute1=((int)minute)/16;
			    minute1=minute1*10+((int)minute)%16;
			   //  minute1=minute;
			  }

			 
	if (keysum>6) 
	   {  	      
     	  keysum=0;
//,minute1,hour1,week1,day1,month1,year1;	

		  year=(year1/10)*16+(year1%10);
		  month=(month1/10)*16+(month1%10);
		  day=(day1/10)*16+(day1%10);
		  week=(week1/10)*16+(week1%10);
		  hour=(hour1/10)*16+(hour1%10);
		  minute=(minute1/10)*16+(minute1%10);
          initial_ds13021();           
	   }
     
	}

}

void main(void)
{   
    
    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);			// 延時去抖動
			if(scan_key1())			// 再次掃描
			{
				key_v1 = key_s1;		// 保存鍵值
				proc_key1();			// 鍵處理
			}
		}

      if (keysum==1)displayyear();	     
      if (keysum==2)displaymonth();	     
      if (keysum==3)displayday();	     
      if (keysum==4)displayweek();	     
//,week1,day1,month1,year1;
      if (keysum==5)displayhour();	     
      if (keysum==6)displayminuite();  


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





?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
视频在线在亚洲| 日韩欧美二区三区| 91精品国产综合久久久久久久| 欧美福利视频一区| 国产日韩欧美综合一区| 夜夜爽夜夜爽精品视频| 图片区小说区区亚洲影院| 精品中文字幕一区二区| 99精品国产91久久久久久| 这里只有精品电影| 日韩一区欧美一区| 日本一道高清亚洲日美韩| 成人av免费在线观看| 欧美日韩国产成人在线91| 欧美经典一区二区三区| 亚洲一卡二卡三卡四卡| 国产成人精品亚洲午夜麻豆| 欧美网站一区二区| 国产女主播视频一区二区| 亚洲第一福利视频在线| 国产91精品一区二区| 欧美日韩精品欧美日韩精品| 中文在线资源观看网站视频免费不卡 | 精品理论电影在线观看| 亚洲三级小视频| 九色porny丨国产精品| 97久久超碰国产精品电影| 精品久久久久久无| 亚洲一区二区三区在线看| 国产风韵犹存在线视精品| 宅男在线国产精品| 一区二区在线观看视频| 国产高清一区日本| 日韩三级中文字幕| 亚洲一区国产视频| 99精品视频在线观看免费| 欧美精品一区二区三区高清aⅴ| 亚洲愉拍自拍另类高清精品| jlzzjlzz国产精品久久| 精品第一国产综合精品aⅴ| 丝袜美腿亚洲综合| 在线观看国产一区二区| 国产精品每日更新| 国产在线一区观看| 日韩午夜小视频| 久久精品99国产精品| 欧美精品日韩综合在线| 一本一本久久a久久精品综合麻豆| 成人激情校园春色| wwwwxxxxx欧美| 日韩av电影免费观看高清完整版| 色狠狠综合天天综合综合| 日本一区二区不卡视频| 国产毛片精品国产一区二区三区| 欧美一区二区网站| 水野朝阳av一区二区三区| 欧美在线看片a免费观看| 国产精品成人免费| 国产成人在线看| 久久久国际精品| 国产专区综合网| 日韩女优视频免费观看| 日韩成人午夜电影| 欧美卡1卡2卡| 日韩激情一区二区| 欧美麻豆精品久久久久久| 亚洲国产毛片aaaaa无费看| 91久久人澡人人添人人爽欧美| 亚洲欧洲精品成人久久奇米网| 99久久久免费精品国产一区二区| 国产欧美日韩亚州综合 | 欧美日韩在线亚洲一区蜜芽| 亚洲精品中文字幕在线观看| 色久综合一二码| 亚洲一区中文日韩| 欧美日韩免费观看一区二区三区| 一区二区三区丝袜| 欧美伊人精品成人久久综合97| 亚洲黄色在线视频| 欧美怡红院视频| 首页国产丝袜综合| 日韩视频在线一区二区| 麻豆91精品91久久久的内涵| 精品理论电影在线观看 | 国产精品视频在线看| 成人免费电影视频| 国产精品久久久爽爽爽麻豆色哟哟 | 91蝌蚪porny| 亚洲综合色婷婷| 欧美精品丝袜中出| 久久国内精品自在自线400部| 久久伊人中文字幕| 国产激情91久久精品导航 | 色屁屁一区二区| 亚洲午夜在线观看视频在线| 欧美日韩国产成人在线免费| 美腿丝袜亚洲三区| 国产网站一区二区| 91伊人久久大香线蕉| 亚洲国产cao| 日韩欧美中文字幕精品| 国产一区二区美女诱惑| 中文字幕在线免费不卡| 91福利视频在线| 久久精品99国产精品| 国产日韩欧美激情| 色屁屁一区二区| 久久成人免费网| 国产精品久久久久9999吃药| 色琪琪一区二区三区亚洲区| 麻豆成人综合网| 国产精品久久精品日日| 欧美日韩中字一区| 国产一区二区三区黄视频| 最新成人av在线| 91精品国产综合久久婷婷香蕉| 国产福利电影一区二区三区| 亚洲精品国产成人久久av盗摄| 欧美一区永久视频免费观看| 国产黄色精品网站| 午夜日韩在线电影| 国产欧美精品一区| 欧美精品aⅴ在线视频| 国产一区二区在线观看视频| 亚洲无线码一区二区三区| 精品国偷自产国产一区| 91麻豆福利精品推荐| 国模少妇一区二区三区| 亚洲一区在线免费观看| 久久久精品国产免费观看同学| 欧美制服丝袜第一页| 国产在线精品一区二区三区不卡| 一区二区三区中文字幕精品精品| 久久久久久影视| 欧美日韩免费不卡视频一区二区三区| 国产很黄免费观看久久| 日韩高清不卡一区二区| 亚洲精品国产第一综合99久久| 久久这里都是精品| 制服丝袜亚洲网站| 日本道在线观看一区二区| 国产精品99精品久久免费| 男人的天堂久久精品| 亚洲精品成人天堂一二三| 久久久国产精品麻豆| 5月丁香婷婷综合| 欧美综合一区二区| www.成人在线| 国内欧美视频一区二区| 五月激情综合色| 亚洲永久免费av| 日韩美女视频一区二区| 国产日韩欧美一区二区三区综合| 在线电影欧美成精品| 91福利国产成人精品照片| 成人午夜在线播放| 国产伦精品一区二区三区视频青涩| 日韩激情视频在线观看| 亚洲大尺度视频在线观看| 一区二区三区在线视频观看| 国产精品家庭影院| 国产精品素人视频| 久久精品视频在线看| 精品国产区一区| 日韩欧美一级二级三级| 欧美一区二区啪啪| 欧美理论片在线| 欧美日韩国产精选| 欧美色网一区二区| 色天天综合色天天久久| 99精品1区2区| 99久久99久久精品免费观看| 懂色av一区二区在线播放| 国产精一品亚洲二区在线视频| 韩国三级电影一区二区| 久久99精品国产麻豆不卡| 精品一区二区三区久久久| 蜜桃av一区二区三区电影| 久久99国产精品麻豆| 激情文学综合网| 美国精品在线观看| 久久精品999| 国产精品伊人色| 国产 日韩 欧美大片| 成人午夜av影视| k8久久久一区二区三区| 95精品视频在线| 欧美性猛交xxxx黑人交| 欧美日韩一区二区欧美激情| 欧美日韩国产a| 日韩精品中文字幕在线一区| 日韩精品一区二区三区视频播放 | 国产不卡视频在线观看| 粉嫩一区二区三区在线看| 成人aaaa免费全部观看| 色综合久久综合网| 欧美精品精品一区| 精品国产a毛片| 国产亚洲欧美日韩在线一区| 国产精品伦一区|