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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? hclcd.c.bak

?? 單片機(jī)開發(fā)板源程序適合初學(xué)者 第二部分DA轉(zhuǎn)換輸出
?? BAK
?? 第 1 頁 / 共 2 頁
字號(hào):
//aa 00 47 13 25 63 00 04 04
//	 秒 分 時(shí)  日 星期和月(最高3位0-6,代表1-7) 
#include <intrins.h>
#include<AT89x52.h>
#include "hclcddot.h"			//點(diǎn)陣庫
#define Uchar unsigned char
#define Uint  unsigned int
#define SomeNOP(); _nop_();_nop_();_nop_(); 
/*LCD驅(qū)動(dòng)要用到的一些口線定意*/
#define LCDPORT P0
sbit D_I = P3^7;
sbit R_W = P3^6;
sbit E = P3^5;
sbit CS2 = P3^4;
sbit CS1 = P3^2;
sbit RST = P3^3;
/*I2C要用到的口線定意*/
sbit SDA = P2^7;
sbit SCL = P2^6;

////////////以下為函數(shù)聲明///////////////////////////////
//LCD驅(qū)動(dòng)要用到的一些函數(shù)
void lcdwrite_cmd(Uchar cmd_dat);
void lcdwrite_dat(Uchar dot_dat);
void lcd_busy();
Uchar  lcdread_dat(void);
void lcddispon(void);
void lcddispoff(void);
void lcdclrall(void);
void lcdini(void);
void HZ12disp(Uchar Nowrow,Uchar Nowcol,Uchar CHplace);
void ASC12disp(Uchar Nowrow,Uchar Nowcol,Uchar ASCplace);
void flashlogo(Uchar Bmpcol);
void Disp128_64(Uchar BMPplace);
void delay(void);
//I2C驅(qū)動(dòng)要用到的一些函數(shù)
void Delay_1ms(Uchar time);
void I2CStart(void);	
void I2CStop(void);
void ACK(void);			//Acknowledge信號(hào)
void NACK(void);			//沒有Acknowledge信號(hào)
void AutoACK(void);		//在一定的時(shí)間內(nèi)自動(dòng)確定ACK的信號(hào)//
void Writex(Uchar j);
Uchar Readx(void);
void X24_Write(Uchar Addresshigh,Uchar Addresslow,Uchar Write_date);
Uchar X24_Read(Uchar Addresshigh,Uchar Addresslow);
void X24_WritePage(Uchar Addresshigh,Uchar Addresslow,Uchar idata *Writeip);
void X24_ReadPage(Uchar Addresshigh,Uchar Addresslow,Uchar idata *Readip);
void GetPCF8563(Uchar idata *Getip);
void SetPCF8563(Uchar idata *Setip);
Uchar ReadPCF8563(Uchar AddrePCF);
void WritePCF8563(Uchar AddrePCF,Uchar PCFdata);
void SetWaring (Uchar Wyear,Uchar Wmonth,Uchar Wday);
bit CheckTime(void);
void rs232(void);
void time0(void);
/*定義一個(gè)接收的數(shù)組*/
Uchar data recdata[8];			//
Uchar idata L24cxxdata[64];		//用于讀出或?qū)懭?4C16的數(shù)據(jù)
Uchar idata clockdata[7];		//系統(tǒng)時(shí)鐘
Uchar pcpointer,timecount,timecount2,*gettimeip;				//用于設(shè)定從PC接收和發(fā)的指針
/*定義二個(gè)地址編碼寄存器,設(shè)定地址線穩(wěn)定時(shí)間,定時(shí)器2的延時(shí)時(shí)間參數(shù),動(dòng)畫的時(shí)位置參數(shù),發(fā)碼結(jié)束后取消靜音的時(shí)間*/
Uchar data MCaddreh,MCaddrel,MCaddtime,time0_1s,led1_8;led18count,logocol;
Uint data nomutetime;	
Uchar newbmpcount;
/*定義標(biāo)志位存放的寄存器*/
Uchar bdata myflag,myflag2,bmpflag;				//定義一個(gè)用于標(biāo)志寄存器存放的
sbit nomutebit = myflag^0;		//用于開始取消靜音標(biāo)志
sbit recpcokbit = myflag^1;		//用于設(shè)定接收到一個(gè)完整的控制指令碼
sbit returnbit = myflag^2;		//用于向PC回傳數(shù)據(jù)標(biāo)志
sbit findokbit = myflag^3;		//尋找到明碼地址
sbit sendbit = myflag^4;		//開始發(fā)碼
sbit timenewbit = myflag^5;		//時(shí)鐘更新標(biāo)志
sbit callnewbit = myflag^6;		//有新的呼叫
sbit endnewbit=myflag^7;		//呼叫結(jié)束

sbit w24cxxbit = myflag2^0;		//設(shè)定明碼表
sbit timeoutbit =myflag2^1;
sbit newtimebit = myflag2^2;	//設(shè)定新的系統(tǒng)時(shí)間
sbit r_lbit	= bmpflag^0;
sbit b_wbit = bmpflag^1;		//圖和文字標(biāo)志
sbit newbmpbit = bmpflag^2;		//更新圖片
void main(void)
{	
	TH0 = 0xf8;					//2ms
	TL0 = 0xce;
	TH1 = 0xfd;					//以9600Baud的速率和PC機(jī)通信
	TL1 = 0xfd;	
	TH2 = 0x4c;					//50ms
	TL2 = 0x00;
	T2CON = 0x00;
	TMOD = 0x21;				//Time0為16位,Time1為8位常數(shù)自裝
	SCON = 0x50;
	IP = 0x10;
	TR0 = 1;
	TR1 = 1;
	TR2 = 1;
	IE = 0x92;					//Time0,Time2,RS232中斷
	led1_8=0xfe;
	led18count=0x01;
	timecount = 0x64;
	time0_1s=0x05;
	timecount2 = 0x32;
	newbmpcount = 0x01;
	logocol =0;
	r_lbit =0;
	timeoutbit =0;
	b_wbit=1;
//	setadd(80);

	lcdini();
	lcdclrall();
	while(1)
	{

		HZ12disp(0x00,0x04,0x01);			//承
		HZ12disp(0x00,0x10,0x02);			//接
		HZ12disp(0x00,0x1C,0x03);			//單
		HZ12disp(0x00,0x28,0x04);			//片
		HZ12disp(0x00,0x34,0x05);			//機(jī)
		HZ12disp(0x00,0x40,0x06);			//開
		HZ12disp(0x00,0x4C,0x07);			//發(fā)
		HZ12disp(0x00,0x58,0x08);			//及	
		HZ12disp(0x00,0x64,0x09);			//解
		HZ12disp(0x00,0x70,0x0A);			//密

		HZ12disp(0x01,0x0A,0x0B);			//各
		HZ12disp(0x01,0x16,0x0C);			//類
		ASC12disp(0x01,0x22,0x0B);			//I
		ASC12disp(0x01,0x28,0x0C);			//C
		HZ12disp(0x01,0x2E,0x0D);			//卡
		ASC12disp(0x01,0x3A,0x0D);			//;
		ASC12disp(0x01,0x40,0x0A);			//P
		ASC12disp(0x01,0x46,0x0B);			//I
		ASC12disp(0x01,0x4C,0x0C);			//C
		HZ12disp(0x01,0x52,0x03);			//單
		HZ12disp(0x01,0x5E,0x04);			//片
		HZ12disp(0x01,0x6A,0x05);			//機(jī)
	
		ASC12disp(0x02,0x0A,0x05);			//5
		ASC12disp(0x02,0x10,0x01);			//1
		HZ12disp(0x02,0x16,0x0E);			//編
		HZ12disp(0x02,0x22,0x0F);			//程
		HZ12disp(0x02,0x2E,0x10);			//器
		ASC12disp(0x02,0x3A,0x0D);			//;
		ASC12disp(0x02,0x40,0x0A);			//P
		ASC12disp(0x02,0x46,0x0B);			//I
		ASC12disp(0x02,0x4C,0x0C);			//C
		HZ12disp(0x02,0x52,0x0E);			//編
		HZ12disp(0x02,0x5E,0x0F);			//程
		HZ12disp(0x02,0x6A,0x10);			//器
	
		HZ12disp(0x03,0x00,0x14);			//亮
		HZ12disp(0x03,0x0c,0x15);			//燈
	
		ASC12disp(0x03,0x2c,0x02);			//2
		ASC12disp(0x03,0x32,0x00);			//0
	
		HZ12disp(0x03,0x44,0x11);			//年

		HZ12disp(0x03,0x5c,0x12);			//月

		HZ12disp(0x03,0x74,0x13);			//日


		ASC12disp(0x04,0x5c,0x0e);			//:		

		ASC12disp(0x04,0x6e,0x0e);	

		while(1)							//b_wbit==1)
		{
			if(timenewbit==1)
			{
				Uchar newtime0;
				timenewbit=0;

				newtime0=(clockdata[6]>>4)&0x0f;
				ASC12disp(0x03,0x38,newtime0);
				newtime0=clockdata[6]&0x0f;
				ASC12disp(0x03,0x3e,newtime0);
			
				newtime0=(clockdata[4]>>4)&0x01;
				ASC12disp(0x03,0x50,newtime0);
				newtime0=clockdata[4]&0x0f;
				ASC12disp(0x03,0x56,newtime0);
			
				HZ12disp(0x03,0x1B,(led18count+0x15));			//幾號(hào)
			
				newtime0=(clockdata[3]>>4)&0x03;
				ASC12disp(0x03,0x68,newtime0);
				newtime0=clockdata[3]&0x0f;
				ASC12disp(0x03,0x6e,newtime0);
			
				newtime0=(clockdata[2]>>4)&0x03;
				ASC12disp(0x04,0x50,newtime0);
				newtime0=clockdata[2]&0x0f;
				ASC12disp(0x04,0x56,newtime0);
				
				newtime0=(clockdata[1]>>4)&0x07;
				ASC12disp(0x04,0x62,newtime0);
				newtime0=clockdata[1]&0x0f;
				ASC12disp(0x04,0x68,newtime0);
			
				newtime0=(clockdata[0]>>4)&0x07;
				ASC12disp(0x04,0x74,newtime0);
				newtime0=clockdata[0]&0x0f;
				ASC12disp(0x04,0x7a,newtime0);
			}

			if(r_lbit==0)
			{
				flashlogo(logocol++);
				if (logocol==32)
				{r_lbit=1;}
				lcddispon();
				delay();
			}
			else
			{
				flashlogo(logocol--);
				if(logocol==0)
				{r_lbit =0;}
				lcddispon();
				delay();
			}	
		}
/*
		while(b_wbit==0)
		{
			if(newbmpbit==1)
			{
				newbmpbit=0;
				Disp128_64(newbmpcount);
			
			}
		}
*/		
	}
}

	
//以下為定時(shí)器TIME0中斷程序
void time0(void) interrupt 1
{
	TH0 = 0xf8;
	TL0 = 0xce;
	timecount--;
	if(timecount==0)
	{	
		timecount = 0x64;
		gettimeip=&clockdata[0];
		GetPCF8563(gettimeip);
		time0_1s--;
		if(time0_1s==0)
		{
			time0_1s=0x05;
			led1_8=_crol_(led1_8,1);
			led18count++;
			if(led18count==0x09){led1_8=0xfe;led18count=0x01;}
			P1=led1_8;
			
		}		
		timenewbit=1;
		timecount2--;
		if(timecount2==0)
		{
			timecount2=0x32;
			b_wbit = !b_wbit;
			if(b_wbit==0)
			{
				newbmpbit=1;
				newbmpcount++;
				if(newbmpcount==0x03)
				{newbmpcount=0x01;}
			}
		}
	}

	if(newtimebit==1&&recpcokbit==1)
	{
//設(shè)定新的系統(tǒng)時(shí)間
		Uchar *pcfsetip;
		newtimebit=0;
		recpcokbit=0;
		pcfsetip=&recdata[1];
		SetPCF8563(pcfsetip);
		WritePCF8563(0x00,0x00);
		WritePCF8563(0x01,0x00);
		WritePCF8563(0x0d,0x83);
	}		
}

//以下為串行口中斷程序,用于接收串行數(shù)據(jù)
void rs232(void) interrupt 4
{
	if(RI==1)
	{	
		
//原輸入格式為AA 秒,分,時(shí) 日,星期,月年
		if (SBUF==0xaa)
		{
			newtimebit=1;
			pcpointer=0;
		}
		RI = 0;
		recdata[pcpointer++]=SBUF;
		if(pcpointer==8)
		{
			pcpointer =0;
			recpcokbit =1;		//指針還原,置收到完整的控制碼			
		}
	}
	else
	{
		TI = 0;
	}			
}

void time2(void) interrupt 5
{
	TF2 = 0;
	TH2 = 0x4c;					//50ms
	TL2 = 0x00;
}

		

/*---------------LCD驅(qū)動(dòng)要用到的一些子程序--------------------*/
/*向LCD寫指令*/
void lcdwrite_cmd(Uchar cmd_dat)
{
	D_I = 0;
	R_W = 0;
	E = 0;
	LCDPORT = cmd_dat;
	SomeNOP();
	E = 1;
	SomeNOP();
	E = 0;
}
/*向LCD寫數(shù)據(jù)*/
void lcdwrite_dat(Uchar dot_dat)
{
	D_I = 1;
	R_W = 0;
	E = 0;
	LCDPORT = dot_dat;
	SomeNOP();
	E = 1;
	SomeNOP();
	E = 0;
}
/*判斷LCD是否處于*/
void lcd_busy()
{
	Uchar i;
	D_I = 0;
	R_W = 1;
	while(1)
	{
		E = 0;
		LCDPORT = 0xff;
		SomeNOP();
		E = 1;
		SomeNOP();
		i = LCDPORT;
		E = 0;
		if(i<0x80) break;
	}
}

Uchar  lcdread_dat(void)
{	Uchar i;
	D_I = 1;
	R_W = 1;
	E = 0;
	LCDPORT = 0xff;
	SomeNOP();
	E =1;
	SomeNOP();
	i = LCDPORT;
	E = 0;
	LCDPORT =0xff;
	SomeNOP();
	E = 1;
	SomeNOP();
	i =LCDPORT;
	E =0;
	return(i);
}

//開LCD顯示
void lcddispon(void)
{
	CS1=0;CS2=1;
	lcdwrite_cmd(0x3f);
	CS1=1;CS2=0;
	lcdwrite_cmd(0x3f);
}
//關(guān)LCD顯示
void lcddispoff(void)
{
	CS1=0;CS2=1;
	lcdwrite_cmd(0x3e);
	CS1=1;CS2=0;
	lcdwrite_cmd(0x3e);
}
//對(duì)整屏清除,就是寫空的數(shù)據(jù)
void lcdclrall(void)
{
	Uchar i,j;
	for(i=0;i<8;i++)
	{
		CS1=0;CS2=1;
		lcdwrite_cmd(i|0xb8);
		lcdwrite_cmd(0x40);
		for(j=64;j>0;j--)
		{
			lcdwrite_dat(0x00);
			lcd_busy();
//			P3_1=!P3_1;
		}
			
		CS1=1;CS2=0;
		lcdwrite_cmd(i|0xb8);
		lcdwrite_cmd(0x40);
		for(j=64;j>0;j--)
		{
			lcdwrite_dat(0x00);
			lcd_busy();
		}
	}
}

//LCD初始化
void lcdini(void)
{
	CS1=0;CS2=1;
	lcdwrite_cmd(0xc0);				//從第0行開始顯示
	CS1=1;CS2=0;
	lcdwrite_cmd(0xc0);
	lcddispon();
}

		
/*在指定的行列上顯示12點(diǎn)陣的漢字*/		

void HZ12disp(Uchar Nowrow,Uchar Nowcol,Uchar CHplace)
{
	Uchar i,tmp1,tmp2,k=12;
	Uint j;
	j = (CHplace-1)*24;
	if((Nowrow%2)==0)			//
	{
		switch(Nowrow)
		{
			case 0: i=0;break;
			case 2: i=3;break;
			default: i=6;
		}
		while(k!=0)
		{
			if(Nowcol<0x40)
				{CS1=0;CS2=1;}
			else
			{	if(Nowcol<0x80)
				{CS1=1;CS2=0;}
				else
				{break;}
			}
			lcdwrite_cmd(i|0xb8);
			lcdwrite_cmd(Nowcol|0x40);
			lcdwrite_dat(Hzk12[j]);
			lcd_busy();
			lcdwrite_cmd((i+1)|0xb8);	//到下一頁
			lcdwrite_cmd(Nowcol|0x40);
			tmp1 = lcdread_dat();
			lcdwrite_cmd(Nowcol|0x40);
			lcdwrite_dat((Hzk12[j+12]&0x0f)|(tmp1&0xf0));
			j++;
			Nowcol++;
			k--;
		}
	}
	else
	{
		switch(Nowrow)
		{
			case 1: i=1;break;
			default: i=4;
		}
		while(k!=0)
		{
			if(Nowcol<0x40)
			{CS1=0;CS2=1;}
			else
			{
				if(Nowcol<0x80)
				{CS1=1;CS2=0;}
				else
				{break;}
			}
			lcdwrite_cmd(i|0xb8);
			lcdwrite_cmd(Nowcol|0x40);
			tmp1=lcdread_dat();
			tmp1=tmp1&0x0f;
			tmp1=(Hzk12[j]<<4)|tmp1;
			tmp2=(Hzk12[j+12]<<4)|(Hzk12[j]>>4);
			lcdwrite_cmd(Nowcol|0x40);
			lcdwrite_dat(tmp1);
			lcd_busy();
			lcdwrite_cmd((i+1)|0xb8);
			lcdwrite_cmd(Nowcol|0x40);
			lcdwrite_dat(tmp2);

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久国产综合精品女国产盗摄| 国产精品二三区| 另类调教123区| 亚洲另类在线一区| 亚洲视频你懂的| 中文字幕一区二区三区在线不卡 | 国产精品久久三| 亚洲午夜一二三区视频| 亚洲国产激情av| 国产欧美一区二区三区鸳鸯浴| 久久亚洲精精品中文字幕早川悠里| 日韩午夜激情免费电影| 精品卡一卡二卡三卡四在线| 日韩欧美123| 久久综合丝袜日本网| 青青草国产成人av片免费| 日本不卡的三区四区五区| eeuss国产一区二区三区| 成人a级免费电影| 色婷婷精品大视频在线蜜桃视频| 色婷婷综合久色| 中文字幕中文字幕一区| 盗摄精品av一区二区三区| www.一区二区| 国产精品进线69影院| 成人丝袜高跟foot| 久久久久久久网| 国产a区久久久| 欧美日韩国产首页| 国产喷白浆一区二区三区| 国产成人免费视频精品含羞草妖精 | 日本韩国欧美一区二区三区| 欧美精品一区二区在线观看| 爽好久久久欧美精品| 欧美色窝79yyyycom| 91精品欧美一区二区三区综合在| 亚洲一线二线三线久久久| 亚洲制服丝袜av| 日韩一区二区三区在线| 日本人妖一区二区| 精品一区二区免费| 成人永久看片免费视频天堂| 中文字幕在线一区免费| 777xxx欧美| 韩国三级在线一区| 成人国产精品视频| 亚洲人成在线观看一区二区| 亚洲自拍偷拍欧美| 久久久精品人体av艺术| 欧美日韩精品福利| 成人涩涩免费视频| 亚洲成人tv网| 欧美亚洲国产bt| 精品无人码麻豆乱码1区2区 | 精品久久久影院| 欧美色窝79yyyycom| 国产精品影视在线观看| 久久久久久久久蜜桃| 国产91色综合久久免费分享| 日韩欧美三级在线| 成人精品小蝌蚪| 丝袜亚洲另类丝袜在线| 青青草伊人久久| a4yy欧美一区二区三区| 国产成人在线视频播放| 日精品一区二区三区| 日本亚洲最大的色成网站www| 麻豆精品久久精品色综合| 日本一区二区视频在线| 欧美三级中文字| 日产精品久久久久久久性色| 蜜桃精品视频在线| 亚洲视频在线观看一区| 久久久久久夜精品精品免费| 国产精品久久久久影院老司| 精品理论电影在线观看| 欧美丝袜自拍制服另类| 欧美福利视频一区| 韩国精品一区二区| 久久精品免费观看| 国产自产高清不卡| 日本欧美一区二区| 蜜桃在线一区二区三区| 精品一区二区国语对白| 日韩中文字幕亚洲一区二区va在线| 国产片一区二区三区| 国产午夜亚洲精品理论片色戒| 狠狠色丁香婷综合久久| 欧美性欧美巨大黑白大战| 欧美大片一区二区三区| 欧美丝袜丝交足nylons图片| 制服丝袜国产精品| 久久亚区不卡日本| 国产精品麻豆欧美日韩ww| 色婷婷久久久综合中文字幕| 欧美综合在线视频| 韩国av一区二区| 懂色av噜噜一区二区三区av| 欧美日韩国产片| 日韩一区欧美一区| 亚洲第一福利一区| 国产最新精品免费| 欧美另类久久久品| 日本一区二区免费在线| 亚洲免费视频成人| 精品一区二区三区久久| av资源网一区| 日韩一级在线观看| 精品一区二区三区在线观看| 国产精品一色哟哟哟| 欧美一二三区在线观看| 亚洲男同1069视频| 狠狠网亚洲精品| 欧美α欧美αv大片| 久久国产剧场电影| 大陆成人av片| 久久综合九色欧美综合狠狠| 亚洲免费观看高清完整版在线观看 | 久久久99精品久久| 午夜精品久久久久久久| 日韩中文字幕91| 91欧美一区二区| 丰满白嫩尤物一区二区| 国产精品伦理在线| 成人黄色电影在线| 亚洲国产精品成人综合色在线婷婷 | 精品无人区卡一卡二卡三乱码免费卡| 欧美一级淫片007| 99re亚洲国产精品| 欧美天天综合网| 亚洲一级二级三级| 欧美中文字幕亚洲一区二区va在线| 精品免费日韩av| 韩国三级中文字幕hd久久精品| 精品盗摄一区二区三区| 国产电影一区在线| 综合久久综合久久| 91精品国产综合久久精品app| 国产成人av福利| 久久精品一区八戒影视| 亚洲国产成人av| 欧美日韩大陆一区二区| 奇米精品一区二区三区四区 | 香蕉成人啪国产精品视频综合网| 欧美在线观看视频一区二区三区| 亚洲一区二区三区不卡国产欧美| 欧美精选在线播放| 一区二区三区小说| 精品亚洲porn| 精品国产亚洲在线| 国产精品资源在线看| 夜色激情一区二区| 26uuu另类欧美亚洲曰本| 精品一区二区影视| 久久久久一区二区三区四区| 91豆麻精品91久久久久久| 日韩一区在线看| 精品国产精品一区二区夜夜嗨| 免费观看一级特黄欧美大片| 精品久久久久久久一区二区蜜臀| 成人三级伦理片| 久久国产尿小便嘘嘘尿| 久久欧美中文字幕| 色综合天天综合网天天看片| 91麻豆国产精品久久| 日韩精品视频网| 日韩一区二区在线观看视频播放| 粉嫩av一区二区三区在线播放 | 亚洲一线二线三线视频| 国产亚洲欧美色| 91精品在线麻豆| 91福利区一区二区三区| 丁香亚洲综合激情啪啪综合| 午夜视频一区在线观看| 欧美成人一区二区三区在线观看| 欧美影院午夜播放| 在线视频亚洲一区| 欧美日韩国产一级| 99在线精品免费| 国产一区二区三区黄视频| 亚洲精品一区二区三区在线观看 | 亚洲欧美色一区| 国产欧美久久久精品影院| 精品国产百合女同互慰| 欧美羞羞免费网站| aa级大片欧美| 在线观看亚洲成人| 成人激情电影免费在线观看| 成人黄色网址在线观看| 国产在线精品视频| 精品一区二区三区在线观看国产| 国内国产精品久久| 韩国欧美国产1区| 成人av片在线观看| 99国产欧美久久久精品| 欧美性猛片xxxx免费看久爱| 欧美高清一级片在线| 精品处破学生在线二十三| 精品国产免费久久| 精品久久久久久久一区二区蜜臀|