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

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

?? lhj.c

?? AT89C52集主板所有功能源碼 附帶說明 下載即可使用
?? C
?? 第 1 頁 / 共 2 頁
字號:
#include <reg51.h>
#include <intrins.h>


#define 	W24C02		0xA0
#define     R24C02		0xA1
#define  MSB       0x80
#define  LSB       0x01


/********************/
sbit SDA=P3^6;
sbit SCL=P3^7;
sbit hwx=P3^3;
sbit SPK=P3^4;
sbit JDQ=P3^5;
sbit SCL2=P1^3;
sbit SDA2=P1^4;
sbit CS2=P1^6;
sbit RST = P1^5;// DS1302片選			5腳


void ReadKey(void);   //掃描鍵盤 返回鍵值
void leday(void);	//5個空指令
void delay(void);
void display(unsigned char *lp,unsigned char lc);
void displaystr(unsigned char *lp,unsigned char lc);
unsigned char l_key=0xFF;
unsigned char l_keytmp=0;
unsigned char l_cmenu=0;
void _24c02menu(void);

void _24c02wdate(unsigned char tmp);
void I2C_write(unsigned char tmp);
unsigned char I2C_read();
void I2C_ACK(bit tmp);
void I2C_start(void);
void I2C_stop(void);
unsigned char l_address=0;
void ad0831menu(void);
unsigned char ad0831read(void);
unsigned char l_cad8031menu=0;
void ds1302menu(void);
unsigned char l_cds1302menu=0;
void ds1302play(unsigned char tmp);
void hongwai(void);
void jdq(void);

void Write_Ds1302_byte(unsigned char temp); 
void Write_Ds1302( unsigned char address,unsigned char dat );
unsigned char Read_Ds1302 ( unsigned char address );

void Read_RTC(void);//read RTC 
void Set_RTC(void);//set RTC 

unsigned char l_tmpdisplay[8]={0x40,0x40,0x40,0x40,0x40,0x40,0x40,0};
unsigned char l_tmpdate[8]={0x00,0x06,0x03,0x18,0x0c,0x07,0x06,0};
unsigned char l_lhj[66];
unsigned char l_lhjc=0;
unsigned char l_timer=10;
code unsigned char write_rtc_address[7]={0x80,0x82,0x84,0x86,0x88,0x8a,0x8c}; 
code unsigned char read_rtc_address[7]={0x81,0x83,0x85,0x87,0x89,0x8b,0x8d};

code unsigned char LHJ[3]={0x38,0x76,0x0e};
code unsigned char _24C02[5]={0x5b,0x66,0x39,0x3f,0x5b};
code unsigned char AD0831[6]={0x77,0x5e,0x3f,0x7f,0x4f,0x06};
code unsigned char DS1302[6]={0x5e,0x6d,0x06,0x4f,0x3f,0x5b};
code unsigned char JDQSTR[3]={0x0e,0x5e,0x67};
code unsigned char ON[2]={0x3f,0x37};
code unsigned char OFF[3]={0x3f,0x71,0x71};
code unsigned char Wdate[5]={0x1c,0x5e,0x77,0x31,0x79};
code unsigned char Rdate[5]={0x77,0x5e,0x77,0x31,0x79};

code unsigned char table[]=
			{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40,0x00};
			//共陰數碼管 0-9 - 空 表
/********************/		

     
//==================================鍵盤程序
code unsigned char key_tab[17]={0xed,0x7e,0x7d,0x7b,
								0xbe,0xbd,0xbb,0xde,
								0xdd,0xdb,0x77,0xb7,
								0xee,0xd7,0xeb,0xe7,0XFF};



//=============       
void main(void)  
{
	 Set_RTC();
	RST=0;
	EA=1;			//開啟總中斷
 	  EX0=1;  		//開啟外部中斷 0
	EX1=1;
	IT1=1;
 	  IT0=1;        // 設置成 下降沿觸發方式
	RI=1;
	
	TL2C=0XD8;
	TH2C=0XFF;
	TL2=0XD8;
	TH2=0XFF;
	T2CON=0X34;	
	SCON=0X50;
	ES=1;
	P0=0xf0;
	  while(1)
	  {	  
		displaystr(LHJ,3);			//主菜單顯示LHJ,等待按鍵
		if (l_key==0x0E){
			P2=0;
			l_key=0xff;
			l_cmenu=0;
			while (1){	
				if(l_key==0x0c){
					l_key=0xff;
					break;
				}			
				switch(l_cmenu){
					case 0:displaystr(_24C02,5);break;
					case 1:displaystr(AD0831,6);break;
					case 2:displaystr(DS1302,6);break;
					case 3:displaystr(JDQSTR,3);break;
				}
				
				switch(l_key){
				case 0x0a:				//按A或B鍵,顯示不同采單內容
					l_key=0xff;
					if(l_cmenu>0)
						l_cmenu--;
				break;
				case 0x0b:
					l_key=0xff;
					if (l_cmenu<3)
						l_cmenu++;
				break;				
				case 0x0e:
					l_key=0xff;					
					switch(l_cmenu){
					case 0: l_address=0;_24c02menu();break;		//相應的內容調用相應函數
					case 1: ad0831menu();break;					
					case 2: ds1302menu();break;
					case 3: jdq();break;
					}
				break;
				}	
			
			}
		}
	   }
} 
void ReadKey(void)						//讀鍵盤值
{
	unsigned char i,j,key;
	j=0xfe;
	key=0xff;
	for (i=0;i<4;i++){
		P0=j;
		//leday();
		if ((P0&0xf0)!=0xf0){
			key=P0;
			break;
		}
		j=_crol_(j,1);
	}
	if (key==0xff){
		l_keytmp=0xff;
		//l_key=0xff;
		P0=0xf0;
		EX0=1;
		SPK=1;
		return;
	}
	SPK=0;	
	if(l_keytmp==key){
		TH0=0X2E;			
		TL0=0;
		TR0=1;		
	   	return;
	}
	TH0=0X2E;			
	TL0=0;
	TR0=1;					
	l_keytmp=key;
	for(i=0;i<17;i++){
		if (key==key_tab[i]){
			l_key=i;
			break;
		}
	}
			
}  
void key_scan()   interrupt 0    //外部中斷 0  的優先級最高 							
{	
	EX0=0;

	TMOD&=0XF1;
	TH0=0X00;
	TL0=0X00;
	ET0=1;	
	TR0=1;
	
	
} 
void hongwai(void)   interrupt 2     //外部中斷 1  做為紅外線接收
{
	unsigned char i,j,tmp;
	//EX1=0;
	hwx=1;
	j=33;
	i=0;
	tmp=100;
	while(tmp){
	tmp--;
	}
	if(hwx){
		EX1=1;
		return;
	}	
	while(j){
		tmp=0;
		l_lhj[i]=1;
		while(!hwx){
			l_lhj[i]++;
			delay();
			tmp++;
			if(tmp==250)
				break;
		}
		i++;
		tmp=0;
		l_lhj[i]=1;
		while(hwx){
			l_lhj[i]++;
			delay();
			tmp++;
			if(tmp==250)
				break;
		}
		i++;		
		j--;
	}
	i=255;
	while(i){
	tmp=255;
	while(tmp){
	P2=0XF0;
	tmp--;
	}
	i--;
	}
	
	i=255;
	while(i){
	tmp=255;
	while(tmp){
	P2=0XF0;
	tmp--;
	}
	i--;
	}
	//IE1=0;	
	//EX1=1;	
}
void timer0_isr(void) interrupt 1
{
	TR0=0;	
	ReadKey();
	
}
void timer0_isr1(void) interrupt 3	//定時器2,我們用來輸出二極管發光,不同的數據輸出各種花樣
{									//本程序針對24C02讀出的數據進行64個數據循規蹈矩環輸出
	//TL1=0x01;
	//TH1=0x01;
	//TR1=1;
	TF1=0;
	if(l_tmpdate[2]>4){
		l_tmpdate[2]=0;
	if(l_tmpdate[0]==0){
		P2=~l_lhj[l_tmpdate[1]];
		l_tmpdate[1]++;
		if(l_tmpdate[1]==64)
			l_tmpdate[1]=0;
	}	
	
		l_tmpdate[0]++;
	if(l_tmpdate[0]>=l_timer)
		l_tmpdate[0]=0;
	}
	l_tmpdate[2]++;
	//ET1=0;
	//display(l_lhj,8);
}
void com_isr(void) interrupt 4      //串口中斷,與電腦連接,處理相應指令
{
	unsigned char i,j,tmp;
	if(RI!=1)
	return;
	RI=0;
	tmp=SBUF;
	if(tmp==0X01){//LED8
		Read_RTC();
		SBUF=0X01;
		while(!TI){}
		TI=0;   //	
		for(i=0;i<7;i++){
			SBUF=l_tmpdate[i];
			while(!TI){}
			TI=0;
		}
	return;
	}
	if((tmp&0xf0)==0x10){//讀端口
		switch(tmp&0x0f){
		case 0:i=P0;break; 	//P0
		case 1:i=P1;break;	//P1
		case 2:i=P2;break;	//P2
		case 3:i=P3;break;	//P3
		}
		SBUF=0X10;
		while(!TI){}
		TI=0;   //	
		SBUF=i;
		while(!TI){}
		TI=0;
		return;
	}
	if((tmp&0xf0)==0x20){//寫端口
		ES=0;
		SBUF=0X20;
		while(!TI){}
		TI=0;   //	
		while(!RI){}
		RI=0;
		i=SBUF;	
		switch(tmp&0x07){
		case 0:P0=i;break;		//P0
		case 1:P1=i;break; 	//P1
		case 2:P2=i;break;		//P2
		case 3:P3=i;break;		//P3
		}
		SBUF=0Xff;
		while(!TI){}
		TI=0;   //	
		ES=1;
		return;
	}
	if((tmp&0xf0)==0x30){//讀24CX
		switch(tmp&0x0f){
		case 0:break;//24c01
		case 1:		//24c02
			SBUF=0X30;
			while(!TI){}
			TI=0;   //	
			I2C_start();
			I2C_write(W24C02);
			I2C_ACK(0);
			I2C_write(0);
			I2C_ACK(1);
			I2C_stop();

			I2C_start();
			I2C_write(R24C02);					
			for(i=0;i<32;i++){
			for(tmp=0;tmp<8;tmp++){
				I2C_ACK(0);
				SBUF=I2C_read();
				while(!TI){}
				TI=0;
				}
			}		
			I2C_ACK(1);
			I2C_stop();			
			break;
		}
	return;
	}
	if((tmp&0xf0)==0x40){//寫24CX
		ES=0;
		switch(tmp&0x0f){
		case 0:break;
		case 1:			
		for(i=0;i<32;i++){
			SBUF=0X40;
			while(!TI){}
			TI=0;			
			for(j=0;j<8;j++){
				while(!RI){}			
				RI=0;	
				l_tmpdate[j]=SBUF;

			}
			I2C_start();
			I2C_write(W24C02);
			I2C_ACK(0);
			I2C_write(i*8);	
			for(j=0;j<8;j++){			
				I2C_ACK(0);
				I2C_write(l_tmpdate[j]);						
			}
			I2C_ACK(1);
			I2C_stop();
			leday();
			leday();
			leday();
			leday();
			leday();
		}
		SBUF=0X41;
			while(!TI){}
			TI=0;
		break;
		}
		ES=1;
	return;
	}
	if((tmp&0xf0)==0x50){//讀AD0831
		SBUF=0X50;
		while(!TI){}
		TI=0;   //	
		SBUF=ad0831read();
		while(!TI){}
		TI=0;
		return;
	}
	if((tmp&0xf0)==0x60){//紅外線		
		SBUF=0x60;
		while(!TI){}
		TI=0;
		if(l_lhj[0]==0){
		SBUF=0X01;
		while(!TI){}
		TI=0;
		return;
		}
		for (i=0;i<66;i++){
			SBUF=l_lhj[i];
			while(!TI){}
			TI=0;
		}
		l_lhj[0]=0;
		return;
	}
		
}
void leday(void)								//空5個指令
{
	_nop_();_nop_();_nop_();_nop_();_nop_();
}
void delay(void)								
{
	unsigned char i=13;
	while(i)
		i--;
}
void display(unsigned char *lp,unsigned char lc)//顯示
{
	unsigned char i;
	P2=0;
	P1=P1&0xF8;
	for(i=0;i<lc;i++){
	P2=table[lp[i]];
	delay();
	P2=0;
	if(i==7)
		break;
	P1++;
	}
}
void displaystr(unsigned char *lp,unsigned char lc)//顯示
{
	unsigned char i;
	P2=0;
	P1=P1&0xF8;
	for(i=0;i<lc;i++){
	P2=lp[i];
	delay();
	P2=0;
	if(i==7)
		break;
	P1++;
	}
}


void _24c02menu(void)		//進入24C02菜單的操作,256字節分四段讀取每段64字節(因89S52的RAM有限,
							//所以我們只能用到64個RAM空間),按A鍵或B鍵來選擇哪一段
{							//讀取某一段的數據后,我們啟動定時器2做相應處理
	unsigned char i,j,tmp=0;
	P2=0;
	l_key=0xfe;
	while (1){		
		if(l_key==0x0c){
			l_key=0xff;
			TR1=0;
			ET1=0;
			break;
		}
		switch(l_key){
		case 0x0a:
			l_key=0xff;
			if(tmp>0){
				tmp--;
				l_key=0xfe;
			}
		break;
		case 0x0b:

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人黄色av网站在线| 欧美一区二区视频网站| 精品视频在线免费| 久久影视一区二区| 亚洲第一福利一区| 成人app软件下载大全免费| 日韩一区二区在线观看视频播放| 国产精品卡一卡二| 国产伦精品一区二区三区在线观看| 欧美性猛交一区二区三区精品| 国产欧美一区二区精品性| 日日摸夜夜添夜夜添亚洲女人| 色婷婷综合久久久中文一区二区| 国产亚洲综合av| 六月婷婷色综合| 777xxx欧美| 五月天欧美精品| 欧美色图第一页| 亚洲精品自拍动漫在线| www.视频一区| 一色屋精品亚洲香蕉网站| 国产精品亚洲午夜一区二区三区| 日韩欧美国产综合一区 | 在线视频一区二区三| 国产三级精品在线| 国产精品亚洲成人| 久久综合狠狠综合久久综合88 | 亚洲图片欧美激情| 成人av免费观看| 亚洲国产激情av| 国产mv日韩mv欧美| 中文无字幕一区二区三区| 国产激情91久久精品导航| 久久久91精品国产一区二区精品| 国内外精品视频| 中文字幕成人在线观看| 成人性色生活片| 国产精品女同互慰在线看| 白白色 亚洲乱淫| 一区二区在线观看免费视频播放| 日本少妇一区二区| 精品国产一区二区三区av性色 | 日本一区二区免费在线| 成人性生交大片免费| 亚洲视频免费在线观看| 91国产精品成人| 日韩电影在线观看网站| 2021中文字幕一区亚洲| av在线不卡观看免费观看| 亚洲精品中文在线影院| 51久久夜色精品国产麻豆| 狠狠色综合日日| 国产精品久久久久久久久久免费看 | 一道本成人在线| 日韩激情一区二区| 国产视频一区二区在线| 91视频91自| 轻轻草成人在线| 国产欧美一二三区| 欧美日韩高清一区| 国产激情一区二区三区四区 | 国产麻豆精品一区二区| 亚洲欧美在线视频| 在线播放91灌醉迷j高跟美女| 美女视频黄频大全不卡视频在线播放| 久久久午夜精品理论片中文字幕| 91日韩在线专区| 欧美aaa在线| 亚洲欧美日韩久久| 欧美刺激脚交jootjob| 97久久人人超碰| 久久精品国产亚洲aⅴ| 亚洲欧洲成人av每日更新| 欧美一区二区在线免费观看| 成人高清免费观看| 热久久免费视频| 亚洲综合一区二区精品导航| 久久综合色天天久久综合图片| 在线免费观看日韩欧美| 国产精品18久久久| 蜜桃一区二区三区在线| 亚洲男人的天堂在线观看| 亚洲精品一区二区三区影院| 欧美吻胸吃奶大尺度电影| 粉嫩高潮美女一区二区三区| 奇米精品一区二区三区在线观看| 亚洲精品成人在线| 国产精品视频麻豆| 精品精品国产高清一毛片一天堂| 日本韩国精品一区二区在线观看| 国产成人aaa| 国产真实乱子伦精品视频| 五月天精品一区二区三区| 亚洲欧美另类小说| 国产精品麻豆网站| 国产三级精品视频| 精品国产91久久久久久久妲己| 欧美日韩精品一区二区三区| 91尤物视频在线观看| 国产a精品视频| 国产一区欧美二区| 久久成人免费网| 日本aⅴ免费视频一区二区三区| 亚洲成人一区在线| 亚洲一线二线三线久久久| 亚洲女同一区二区| 中文字幕一区日韩精品欧美| 日本一区二区三级电影在线观看| 久久综合狠狠综合久久激情 | 欧美一个色资源| 欧美日韩国产三级| 欧美日韩国产一级二级| 欧亚一区二区三区| 欧美亚洲禁片免费| 欧美午夜理伦三级在线观看| 在线精品视频免费播放| 欧美综合亚洲图片综合区| 在线区一区二视频| 538在线一区二区精品国产| 日韩视频免费观看高清完整版 | 一区二区三区久久| 一区二区三区免费网站| 亚洲一区二区欧美日韩| 亚洲一二三级电影| 视频一区欧美日韩| 精品一区二区三区香蕉蜜桃| 国产一区二区主播在线| 东方欧美亚洲色图在线| 99精品热视频| 在线精品观看国产| 日韩一区二区三区电影在线观看 | 91在线精品一区二区三区| 日本韩国欧美一区| 日韩精品综合一本久道在线视频| 26uuu亚洲综合色| 亚洲欧美综合色| 日本成人在线网站| 国产一区二区三区免费观看| 99视频精品全部免费在线| 欧美日本一区二区| 国产日韩亚洲欧美综合| 一区二区欧美视频| 久久电影国产免费久久电影 | 亚洲美女视频在线| 日韩精品视频网| av一区二区三区| 在线不卡中文字幕播放| 国产日韩欧美在线一区| 亚洲成人av电影在线| 国产乱一区二区| 欧美老肥妇做.爰bbww视频| 日韩午夜电影av| 亚洲欧美日韩国产综合在线| 久久超碰97中文字幕| 91久久精品一区二区二区| 精品国产第一区二区三区观看体验| 中文字幕一区二区三区色视频| 亚洲国产va精品久久久不卡综合| 狠狠色综合日日| 欧美剧在线免费观看网站| 欧美经典一区二区| 日韩高清在线不卡| 91色婷婷久久久久合中文| www亚洲一区| 日韩国产精品久久久久久亚洲| av在线不卡电影| 久久久国际精品| 日本美女一区二区| 欧美性欧美巨大黑白大战| 中文字幕在线不卡一区 | 国产女同互慰高潮91漫画| 日本成人超碰在线观看| 成人av动漫在线| 久久免费电影网| 日韩中文字幕区一区有砖一区| 91在线观看下载| 国产精品视频九色porn| 激情欧美日韩一区二区| 7777精品伊人久久久大香线蕉超级流畅 | 午夜视频一区二区| 在线精品视频一区二区三四| 亚洲同性gay激情无套| 国产乱子轮精品视频| 精品免费一区二区三区| 日本少妇一区二区| 7777精品伊人久久久大香线蕉| 一区二区三区在线视频观看 | 91精品国产综合久久久久| 一二三区精品福利视频| 91在线你懂得| 亚洲人妖av一区二区| 风流少妇一区二区| 久久久久久久久岛国免费| 久久电影网站中文字幕| 欧美成人欧美edvon| 韩国一区二区视频| 久久久91精品国产一区二区精品| 国产精品综合一区二区| 久久伊99综合婷婷久久伊| 国产在线一区观看|