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

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

?? lcd12864.c

?? 用proteus模擬仿真實現俄羅期方塊游戲
?? C
字號:
//*************************************************************************************************
//*																								  *
//*			 ******************************LCD12864驅動程序**************************			  *
//*																								  *
//*************************************************************************************************

//*************************************************************************************************
//*																								  *
//*			 ******************************頭文件及宏定義**************************				  *
//*																								  *
//*************************************************************************************************
#include <at89x51.h>
#include "LCDShowMap.h"

#define	RST P2_0
#define	E P2_1
#define	RW P2_2
#define	DI P2_3
#define	CS1 P2_5
#define	CS2	P2_4
#define	LCDPORT P0

#define BUSYSTATUS P0_7				  //忙狀態位。

#define LCDSTARTROW 0xC0			  //設置起始行指令。
#define LCDPAGE 0xB8				  //設置頁指令。
#define LCDLINE 0x40				  //設置列指令。


//*************************************************************************************************
//*																								  *
//*			 ********************************讀忙標志位*********************************		  *
//*																								  *
//*************************************************************************************************
bit bCheckBusy()
{
	LCDPORT=0xFF;
	RW=1;
	DI=0;
	E=1;
	E=0;
	return BUSYSTATUS; 
}

//*************************************************************************************************
//*																								  *
//*			 ********************************寫數據*********************************			  *
//*																								  *
//*************************************************************************************************
void vWriteData(unsigned char ucData)
{
	while(bCheckBusy());
	LCDPORT=0xFF;

	RW=0;
	DI=1;
	LCDPORT=ucData;
	E=1;
	E=0;
}

//*************************************************************************************************
//*																								  *
//*			 ********************************寫指令*********************************			  *
//*																								  *
//*************************************************************************************************
void vWriteCMD(unsigned char ucCMD)
{
	while(bCheckBusy());
	LCDPORT=0xFF;

	RW=0;
	DI=0;
	LCDPORT=ucCMD;
	E=1;
	E=0;
}

//*************************************************************************************************
//*																								  *
//*			 ********************************LCD初始化函數*******************************		  *
//*																								  *
//*************************************************************************************************
void vLCDInitialize()
{
	CS1=1;
	CS2=1;
	vWriteCMD(0x38);		//8位形式,兩行字符。
	vWriteCMD(0x0F);		//開顯示。
	vWriteCMD(0x01);		//清屏。
	vWriteCMD(0x06);		//畫面不動,光標右移。
	vWriteCMD(LCDSTARTROW);	//設置起始行。
}

//*************************************************************************************************
//*																								  *
//*			 ******************************顯示自定義行*********************************		  *
//*																								  *
//*************************************************************************************************
//在8×128的格子里顯示自定義長度的一行
void vShowCustomRow(unsigned char ucPage,unsigned char ucLine,unsigned char ucWidth,unsigned char *ucaRow)
{
	unsigned char ucCount;				   //取值范圍:ucPage:0~7;ucLine:0~127;
	if(ucLine<64)						   //ucWidth:0~127;ucLine+ucWidth<128。
		{
		CS1=1;
		CS2=0;
		vWriteCMD(LCDPAGE+ucPage);
		vWriteCMD(LCDLINE+ucLine);
		if((ucLine+ucWidth)<64)
			{
			for(ucCount=0;ucCount<ucWidth;ucCount++)
				vWriteData(*(ucaRow+ucCount));
			}
		else
			{
			for(ucCount=0;ucCount<64-ucLine;ucCount++)
				vWriteData(*(ucaRow+ucCount));

			CS1=0;
			CS2=1;
			vWriteCMD(LCDPAGE+ucPage);
			vWriteCMD(LCDLINE);
			for(ucCount=64-ucLine;ucCount<ucWidth;ucCount++)
				vWriteData(*(ucaRow+ucCount));
			}
		}
	else
		{
		CS1=0;
		CS2=1;
		vWriteCMD(LCDPAGE+ucPage);
		vWriteCMD(LCDLINE+ucLine-64);
		for(ucCount=0;ucCount<ucWidth;ucCount++)
			vWriteData(*(ucaRow+ucCount));
		}
}
//*************************************************************************************************
//*																								  *
//*			 *****************************漢字顯示函數***********************************		  *
//*																								  *
//*************************************************************************************************
//此函數將16×16漢字顯示在8×128的格子里。
void vShowOneChin(unsigned char ucPage,unsigned char ucLine,unsigned char *ucaChinMap)
{
	vShowCustomRow(ucPage,ucLine,16,ucaChinMap);
	vShowCustomRow(ucPage+1,ucLine,16,ucaChinMap+16);

}
//*************************************************************************************************
//*																								  *
//*			 *****************************字符顯示函數***********************************		  *
//*																								  *
//*************************************************************************************************
//此函數將8×16字符顯示在8×128的格子里。
void vShowOneChar(unsigned char ucPage,unsigned char ucLine,unsigned char *ucaCharMap)
{
	vShowCustomRow(ucPage,ucLine,8,ucaCharMap);
	vShowCustomRow(ucPage+1,ucLine,8,ucaCharMap+8);

}
/*
//*************************************************************************************************
//*																								  *
//*			 **********************************顯示圖片***********************************		  *
//*																								  *
//*************************************************************************************************
void vShowGraph(unsigned char ucPage,unsigned char ucLine,unsigned char ucWidth,unsigned char ucHigh,unsigned char * ucaGraph)
{
	unsigned char ucCount;
	for(ucCount=0;ucCount<ucHigh;ucCount++)
		vShowCustomRow(ucPage+ucCount,ucLine,ucWidth,ucaGraph+ucCount*ucWidth);
}
*/

//*************************************************************************************************
//*																								  *
//*			 **********************************顯示數字***********************************		  *
//*																								  *
//*************************************************************************************************
void vShowNumber(unsigned char ucRow,unsigned char ucLine,unsigned long ulNumber)
{
	unsigned char ucaNumber[4];
	unsigned char ucCount;
	unsigned char ucNumFront;
	if(ulNumber>9999)
		return;				  

	ucaNumber[0]=ulNumber/1000;
	ucaNumber[1]=(ulNumber-1000*(long)ucaNumber[0])/100;
	ucaNumber[2]=(ulNumber-1000*(long)ucaNumber[0]-100*(long)ucaNumber[1])/10;
	ucaNumber[3]=(ulNumber-1000*(long)ucaNumber[0]-100*(long)ucaNumber[1]-10*(long)ucaNumber[2]);

	for(ucNumFront=0;ucNumFront<3;ucNumFront++)
		if(ucaNumber[ucNumFront]!=0)
			break;

	for(ucCount=0;ucCount<4;ucCount++)
		{
		if(ucCount<ucNumFront)
			vShowOneChar(ucRow,ucLine+ucCount*8,uca_BLANK);
		else
			switch(ucaNumber[ucCount])
				{
				case 0:vShowOneChar(ucRow,ucLine+ucCount*8,uca_0);break;
				case 1:vShowOneChar(ucRow,ucLine+ucCount*8,uca_1);break;
				case 2:vShowOneChar(ucRow,ucLine+ucCount*8,uca_2);break;
				case 3:vShowOneChar(ucRow,ucLine+ucCount*8,uca_3);break;
				case 4:vShowOneChar(ucRow,ucLine+ucCount*8,uca_4);break;
				case 5:vShowOneChar(ucRow,ucLine+ucCount*8,uca_5);break;
				case 6:vShowOneChar(ucRow,ucLine+ucCount*8,uca_6);break;
				case 7:vShowOneChar(ucRow,ucLine+ucCount*8,uca_7);break;
				case 8:vShowOneChar(ucRow,ucLine+ucCount*8,uca_8);break;
				case 9:vShowOneChar(ucRow,ucLine+ucCount*8,uca_9);break;
				default:break;
				}
		}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久一区二区三区 | 亚洲情趣在线观看| 91精品国产色综合久久| 欧美三级韩国三级日本三斤| 色美美综合视频| 欧美性大战久久久久久久| 色综合网站在线| 一本久道中文字幕精品亚洲嫩| 99国产精品国产精品毛片| 国产盗摄精品一区二区三区在线| 国产成人av资源| 北条麻妃国产九九精品视频| 91在线丨porny丨国产| 色综合久久久久综合99| 欧美视频在线一区| 日韩一区二区免费在线电影| 精品国产成人系列| 欧美精品一区二区三区蜜桃视频| 精品国产91洋老外米糕| 欧美日韩精品电影| 极品瑜伽女神91| 欧美大片一区二区| 国产欧美在线观看一区| 亚洲伦在线观看| 五月激情六月综合| 2019国产精品| 2023国产一二三区日本精品2022| 91麻豆福利精品推荐| a亚洲天堂av| 5858s免费视频成人| 精品99999| 欧美猛男男办公室激情| 免费人成在线不卡| 一区二区三区视频在线看| 黄页视频在线91| 91网页版在线| 精品少妇一区二区三区视频免付费 | www.久久精品| 在线观看视频一区二区| 99r国产精品| 337p粉嫩大胆色噜噜噜噜亚洲| 国产精品不卡视频| 1000精品久久久久久久久| 亚洲电影一级黄| 成人免费毛片a| 欧美久久久久久久久久| www.亚洲国产| 在线播放中文字幕一区| 国产精品亚洲综合一区在线观看| 欧美艳星brazzers| 日韩黄色小视频| 日韩精品免费视频人成| 国产精品久久久久9999吃药| 国产精品久久久久久久午夜片| 欧美激情一区二区三区四区| 国产精品女上位| 青青草国产成人av片免费| 精品国产一区二区三区四区四| 美日韩黄色大片| 成人高清av在线| 日本精品免费观看高清观看| 欧美夫妻性生活| 日本色综合中文字幕| 91精品国产高清一区二区三区| 日韩一区二区在线看片| 日本高清无吗v一区| 国产日韩精品一区二区三区在线| 一二三四社区欧美黄| www.66久久| 在线免费观看不卡av| 国产黑丝在线一区二区三区| 老司机精品视频在线| 国产欧美一区二区三区沐欲| 蜜臀久久久99精品久久久久久| 开心九九激情九九欧美日韩精美视频电影| 1000精品久久久久久久久| 成人h精品动漫一区二区三区| 国产成人自拍网| 精品粉嫩超白一线天av| 亚洲国产日产av| 欧美亚洲高清一区| 亚洲专区一二三| 色综合久久99| 亚洲二区视频在线| 欧美一区二区三区四区视频| 蜜臀精品一区二区三区在线观看 | 日韩欧美一二三| 狂野欧美性猛交blacked| 欧美成人精品1314www| 日本视频中文字幕一区二区三区| 在线观看成人小视频| 亚洲欧美日韩国产综合在线| 91国偷自产一区二区三区成为亚洲经典 | 欧美精品一区视频| 精彩视频一区二区| 欧美激情艳妇裸体舞| www.色精品| 日韩av中文字幕一区二区 | 色哟哟亚洲精品| 香蕉成人啪国产精品视频综合网| 日韩三级免费观看| 国产精品1区2区3区| 亚洲人成亚洲人成在线观看图片| 欧美日韩黄色一区二区| 国产精品一二三四区| 亚洲男人都懂的| 精品国产凹凸成av人网站| 波多野结衣中文一区| 亚洲国产精品一区二区尤物区| 欧美大片在线观看一区| 成年人网站91| 日本aⅴ免费视频一区二区三区| 精品国产精品网麻豆系列 | 欧美亚洲国产一区二区三区 | 欧美国产精品专区| 欧美日韩国产欧美日美国产精品| 黄页网站大全一区二区| 亚洲国产精品综合小说图片区| 久久综合久久综合亚洲| 欧美日韩一区中文字幕| 成人高清免费观看| 看片网站欧美日韩| 亚洲成人在线免费| 国产精品国产三级国产| 精品福利一区二区三区免费视频| 在线日韩一区二区| 岛国av在线一区| 精品写真视频在线观看| 天堂一区二区在线| 17c精品麻豆一区二区免费| 欧美精品一区二区久久婷婷| 欧美在线你懂的| 97se亚洲国产综合自在线观| 国产成人亚洲综合a∨婷婷| 日韩精品久久理论片| 亚洲在线视频网站| 国产精品久久免费看| 国产亚洲午夜高清国产拍精品| 欧美一区二区三区影视| 精品视频免费看| 91美女片黄在线观看91美女| 国产69精品久久久久毛片 | 中文字幕综合网| 国产精品免费免费| 亚洲国产经典视频| 欧美韩国日本综合| 国产欧美日韩在线看| 久久久噜噜噜久久中文字幕色伊伊 | 亚洲三级在线看| 日韩伦理电影网| 亚洲欧美激情在线| 亚洲裸体xxx| 亚洲成人免费在线观看| 五月婷婷色综合| 免费成人小视频| 国产精品影视网| 国产99久久精品| www.综合网.com| 成人国产精品免费观看视频| 天使萌一区二区三区免费观看| 亚洲一区二区高清| 日韩精品高清不卡| 国模娜娜一区二区三区| 成人的网站免费观看| 一本一本大道香蕉久在线精品 | 精品成人佐山爱一区二区| 欧美大肚乱孕交hd孕妇| 久久网站最新地址| 国产精品久久久爽爽爽麻豆色哟哟| 国产精品色哟哟网站| 玉足女爽爽91| 青娱乐精品视频| 国产91精品露脸国语对白| 91片在线免费观看| 欧美日韩黄色影视| 久久免费偷拍视频| 亚洲欧美日韩国产综合| 免费黄网站欧美| 成人精品视频一区二区三区尤物| 在线看不卡av| 久久久三级国产网站| 亚洲乱码国产乱码精品精小说 | 成人av资源在线观看| 精品视频资源站| 久久伊99综合婷婷久久伊| 中文字幕视频一区| 免费成人结看片| 色偷偷成人一区二区三区91| 日韩欧美另类在线| 中文字幕一区二区三区四区不卡| 亚洲成av人片在线观看无码| 国产麻豆视频一区二区| 欧美在线你懂得| 亚洲国产精品传媒在线观看| 午夜免费久久看| 99精品视频在线观看免费| 欧美一二三四在线| 亚洲图片一区二区| 成人av在线电影| 久久人人爽爽爽人久久久|