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

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

?? t6963.h

?? 含t6963c驅動器LCD與AT89C51的原程序
?? H
?? 第 1 頁 / 共 2 頁
字號:
/*************************************************************
FUNCTION:              LCD driver 8080
AUTHOR:                
DESCRIPTION:           T6963 
E-mail:                
CREAT DATE:            2005-1-8
MODIFICATION DATE:     2005-1-10
                       2005-1-17 
***************************************************************/
#include <AT89X52.H>
#include <intrins.h>

unsigned char display_mode=0x90;//關文本,圖形,光標
unsigned char mode_set=0x80;//  or模式

#define TEXT_HOME_ADDRESS_LOW      0x00
#define TEXT_HOME_ADDRESS_HIGH     0x00
#define TEXT_AREA                  0x10
#define GRAPHIC_HOME_ADDRESS_LOW   0x00
#define GRAPHIC_HOME_ADDRESS_HIGH  0x08
#define GRAPHIC_AREA               0x10
#define OFFSET_REGISTER            0x03
#define CGRAM_ADDRESS              0x18
#define DB                         P1
#define CD                         P3_4
#define WR_E                       P3_1
#define RD_E                       P3_0
#define CE                         P3_3
#define FS                         P3_5
#define CURSOR_ON()                display_mode|=0x01;Command(display_mode)  //開光標顯示
#define CURSOR_OFF()               display_mode&=0xfe;Command(display_mode)  //關光標顯示
#define CURSOR_BLINK_ON()          display_mode&=0xfe;Command(display_mode)  //開光標閃爍
#define CURSOR_BLINK_OFF()         display_mode&=0xfd;Command(display_mode)  //關光標閃爍
#define GRAPHIC_ON()               display_mode|=0x08;Command(display_mode)  //開圖形顯示
#define GRAPHIC_OFF()              display_mode&=0xf7;Command(display_mode)  //開圖形顯示
#define TEXT_ON()                  display_mode|=0x04;Command(display_mode)  //開文本顯示
#define TEXT_OFF()                 display_mode&=0xfb;Command(display_mode)  //關文本顯示
#define OR_MODE()                  Command(mode_set)                         //或模式
#define AND_MODE()                 Command(mode_set|0x03)                    //與模式
#define XOR_MODE()                 Command(mode_set|0x01)                    //異或模式
#define AUTO_WRITE_ON()            Command(0xb0)                             //on auto write
#define AUTO_WRITE_OFF()           Command(0xb2)
#define INTERNAL_CGROM()           mode_set=mode_set&0xf7;Command(mode_set);//內部CGROM模式
#define EXTERNAL_CGRAM()           mode_set=mode_set|0x08;Command(mode_set);//外部CGRAM模式

/***********************************
** 函數名稱: Delay
** 功能描述: 延時時間=(n*9+17)*12/F
** 輸 入: n
** 輸 出 : 無
** 全局變量:無
** 調用模塊: 無
** 
** 作 者: 
** 日 期: 2006-1-24
******************************************/
void Delay(unsigned int n)
{
    while(n--);
	return;
}

/***********************************
** 函數名稱: Busy
** 功能描述: 從液晶顯示控制器中讀忙標志,并作為返回值返回
**           busy flag
** 輸 入: 無
** 輸 出 : 忙標志
** 全局變量:無
** 調用模塊: 無
** 
** 作 者: 
** 日 期: 2006-1-10
******************************************/
#pragma disable
unsigned char Busy(void) 
{ 
    unsigned char datum;
	CE=0;CD=1;RD_E=1;WR_E=1;
	DB=0xff;
	RD_E=0;
	_nop_();
	datum=DB;
	RD_E=1;
	CE=1;
	return(datum);
}

/***********************************
** 函數名稱: St01
** 功能描述: 循環檢查命令運行和讀/寫能力,命令和讀寫允許退出循環
**           Check command execution and data read/write capability
** 輸 入: 無
** 輸 出 : 無
** 全局變量:無
** 調用模塊: Busy
** 
** 作 者: 
** 日 期: 2006-1-10
******************************************/
void St01(void) 
{				
	while ((Busy()&3)!=3) {}
    return;
}


/***********************************
** 函數名稱: St2
** 功能描述: 循環檢查自動讀能力,自動讀允許退出循環
**           Check auto mode data read capability 
** 輸 入: 無
** 輸 出 : 無
** 全局變量:無
** 調用模塊: Busy
** 
** 作 者: 
** 日 期: 2006-1-10
******************************************/
/*
void St2(void)
{				
	while ((Busy()&4)!=4) {}
    return;
} 
*/

/****************************************
** 函數名稱: St3
** 功能描述: 循環檢查自動寫能力,自動寫允許退出循環
**           Check auto mode data write capability
** 輸 入: 無
** 輸 出 : 無
** 全局變量:無
** 調用模塊: Busy
** 
** 作 者: 
** 日 期: 2006-1-10
******************************************/
void St3(void) 
{				
	while ((Busy()&8)!=8) {}
    return;
}


/****************************************
** 函數名稱: Command
** 功能描述: 向控制器傳送命令
** 輸 入: instruction : 命令代碼
** 輸 出 : 無
** 全局變量:無
** 調用模塊: st01
** 
** 作 者: 
** 日 期: 2006-1-10
******************************************/
#pragma disable
void Command(unsigned char instruction)
{
	St01();
	CE=0;
	DB=instruction;
	WR_E=0;
	_nop_();
	WR_E=1;
	CE=1;
    return;
}

/****************************************
** 函數名稱: Write
** 功能描述: 向控制器傳送數據
** 輸 入: datum : 輸入數據
** 輸 出 : 無
** 全局變量:無
** 調用模塊: St01
** 
** 作 者: 
** 日 期: 2006-1-10
******************************************/
#pragma disable
void Write(unsigned char datum) 
{
	St01();
	CE=0;
	CD=0;
	DB=datum;
	WR_E=0;
	_nop_();
	WR_E=1;
	CE=1;
    return;
}

/****************************************
** 函數名稱: Read
** 功能描述: 從控制器讀數據
** 輸 入: 無
** 輸 出 : 讀出的數據
** 全局變量:無
** 調用模塊: St01
** 
** 作 者: 
** 日 期: 2006-1-10
******************************************/
/*
#pragma disable
unsigned char Read(void) 
{
    unsigned char datum;
	St01();
	CD=0;
	DB=0xff;
	RD_E=0;
	datum=DB;
	RD_E=1;
	CD=1;
	return(datum);
}
*/

/****************************************
** 函數名稱: Autowrite
** 功能描述: 向控制器自動寫數據
** 輸 入: datum: 數據
** 輸 出 : 無
** 全局變量:無
** 調用模塊: St3
** 
** 作 者: 
** 日 期: 2006-1-10
******************************************/
#pragma disable
void Autowrite(unsigned char datum)
{
	St3();
	CE=0;
	CD=0;
	DB=datum;
	WR_E=0;
	Delay(1);
	WR_E=1;
	CE=1;
    return;
}


/****************************************
** 函數名稱: Autoread
** 功能描述: 從控制器自動讀數據
** 輸 入: 無
** 輸 出 : 讀出的數據
** 全局變量:無
** 調用模塊: St2
** 
** 作 者: 
** 日 期: 2006-1-10
******************************************/
/*
#pragma disable
unsigned char Autoread(void)
{
	unsigned char datum;
	St2();
	CD=0;
	DB=0xff;
	RD_E=0;
	datum=DB;
	RD_E=1;
	CD=1;
	return(datum);
} 
/*

/****************************************
** 函數名稱: Write_Data
** 功能描述: 向控制器顯示RAM寫數據
** 輸 入 : datum : 要寫入的數據
** 輸 出 : 無
** 全局變量:無
** 調用模塊: Write,Command
** 
** 作 者: 
** 日 期: 2006-1-10
******************************************/
#pragma disable
void Write_Data(unsigned char datum)
{
    Write(datum);
	Command(0x0c0);
	return;
}


/****************************************
** 函數名稱: Set_Text_Address
** 功能描述: 設置文本區位置
** 輸 入 : home_address_low : 文本區首地址的低8位
**          home_address_high: 文本區首地址的高8位
**          area:              文本區一行字節數          
** 輸 出 : 無
** 全局變量:無
** 調用模塊: Write,Command
** 
** 作 者: 
** 日 期: 2006-1-10
******************************************/
#pragma disable
void Set_Text_Address(unsigned char home_address_low,unsigned char home_address_high,unsigned char area)
{
    Write(home_address_low);
    Write(home_address_high);
    Command(0x40); //Text home address
    Write(area);
	Write(0x00);
	Command(0x41); //Text area
	return;
}


/****************************************
** 函數名稱: Set_Graphic_Address
** 功能描述: 設置圖形區位置
** 輸 入 : home_address_low : 圖形區首地址的低8位
**          home_address_high: 圖形區首地址的高8位
**          area:              圖形區一行字節數          
** 輸 出 : 無
** 全局變量:無
** 調用模塊: Write,Command
** 
** 作 者: 
** 日 期: 2006-1-10
******************************************/
#pragma disable
void Set_Graphic_Address(unsigned char home_address_low,unsigned char home_address_high,unsigned char area)
{
    Write(home_address_low);
    Write(home_address_high);
    Command(0x42); //Graphic home address
    Write(area);
	Write(0x00);
	Command(0x43); //Graphic area

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本丰满少妇一区二区三区| 婷婷国产v国产偷v亚洲高清| 国产在线麻豆精品观看| 91精品福利在线一区二区三区| 亚洲一区二区偷拍精品| 欧美色倩网站大全免费| 亚洲午夜私人影院| 欧美日韩www| 首页国产丝袜综合| 日韩女优av电影| 久久99精品国产麻豆不卡| 精品国产一区二区精华| 国产在线精品免费| 中文字幕乱码一区二区免费| 成人夜色视频网站在线观看| 国产精品福利影院| 在线观看免费一区| 日韩激情视频网站| 久久五月婷婷丁香社区| 成人avav影音| 亚洲一二三四在线| 欧美一级xxx| 国产福利精品导航| 一区二区三区免费| 欧美一级欧美一级在线播放| 国产美女在线精品| 一区二区三区国产精品| 欧美一区二区国产| 粉嫩av一区二区三区| 一区二区三区中文字幕电影 | 国产精品一区专区| 国产精品护士白丝一区av| 色拍拍在线精品视频8848| 日韩电影一二三区| 日本一区免费视频| 欧美日韩一区二区三区四区五区 | 日日噜噜夜夜狠狠视频欧美人 | 亚洲综合区在线| 欧美不卡一区二区三区四区| 成人黄色国产精品网站大全在线免费观看| 樱花草国产18久久久久| 日韩一级大片在线观看| 成人av午夜电影| 视频一区视频二区在线观看| 国产三级一区二区三区| 欧美日韩久久久| 久久国产精品一区二区| 亚洲欧美日韩中文字幕一区二区三区| 欧美一级高清片| 91啪亚洲精品| 国产精品自在欧美一区| 亚洲18色成人| 亚洲欧洲精品一区二区三区| 欧美一区二区三区视频免费播放| 成人黄色小视频在线观看| 日韩国产精品大片| 亚洲精品自拍动漫在线| 久久久99精品久久| 欧美一区二区三区性视频| 91小视频免费观看| 国产黄色精品网站| 日本强好片久久久久久aaa| 亚洲免费av网站| 国产亚洲一本大道中文在线| 欧美一区二区在线看| 色综合天天综合色综合av| 国产精品12区| 久久99国产精品久久| 亚洲成精国产精品女| 亚洲激情在线播放| 国产精品久久久久久久久动漫 | 亚洲成av人片| 中文字幕日本不卡| 久久免费视频一区| 日韩午夜电影av| 欧美卡1卡2卡| 精品视频999| 91官网在线观看| 色综合天天综合网天天狠天天| 国产成人午夜视频| 国产自产高清不卡| 麻豆免费精品视频| 免费在线欧美视频| 亚洲成人黄色影院| 午夜在线成人av| 无码av免费一区二区三区试看 | 亚洲地区一二三色| 亚洲激情在线激情| 依依成人精品视频| 有坂深雪av一区二区精品| 亚洲日本免费电影| 亚洲天堂免费看| 亚洲狼人国产精品| 亚洲免费电影在线| 亚洲一级片在线观看| 亚洲超碰97人人做人人爱| 午夜电影网亚洲视频| 日韩国产精品久久久| 久久国产麻豆精品| 国产麻豆精品久久一二三| 国产精品综合二区| 不卡av在线网| 日本高清不卡一区| 制服.丝袜.亚洲.中文.综合| 在线不卡一区二区| 欧美成人aa大片| 国产亚洲精久久久久久| 国产免费成人在线视频| 综合久久给合久久狠狠狠97色| 亚洲久草在线视频| 日韩极品在线观看| 国产精品夜夜嗨| 99国产一区二区三精品乱码| 91免费看视频| 3751色影院一区二区三区| 欧美一级在线免费| 日本一区二区三区高清不卡| 欧美激情一区三区| 亚洲国产毛片aaaaa无费看| 热久久久久久久| 国产乱码精品1区2区3区| 99久久精品一区二区| 欧美色男人天堂| 久久女同性恋中文字幕| 亚洲美女淫视频| 麻豆精品在线视频| 99久久婷婷国产综合精品电影| 欧洲av一区二区嗯嗯嗯啊| 欧美一区二区三区免费在线看| 久久综合久久鬼色| 国产精品福利在线播放| 五月天激情综合| 成人中文字幕合集| 欧美久久久久中文字幕| 久久亚洲精品小早川怜子| 亚洲人成精品久久久久| 毛片不卡一区二区| 色偷偷一区二区三区| 精品国产一区二区三区不卡| 亚洲最大的成人av| 国产精品99久久久久久久女警| 色94色欧美sute亚洲线路一久| 欧美tk丨vk视频| 一区二区三区四区在线免费观看| 久久国产精品99精品国产| 色妞www精品视频| 精品国产一区二区亚洲人成毛片 | 午夜精品福利在线| 成人一级黄色片| 日韩三级视频在线看| 亚洲男人天堂av| 国产伦精品一区二区三区免费| 色哟哟精品一区| 久久久久久久久久美女| 性欧美大战久久久久久久久| 成人三级伦理片| 欧美成人a在线| 午夜伦欧美伦电影理论片| av午夜一区麻豆| 日韩欧美国产1| 亚洲国产精品影院| 成人精品国产免费网站| 日韩片之四级片| 亚洲制服丝袜一区| 99国产精品久久久久| www国产精品av| 日本欧美加勒比视频| 在线影院国内精品| 国产精品理伦片| 国产成人精品亚洲777人妖| 日韩欧美色电影| 亚洲aⅴ怡春院| 欧美日韩一区二区三区在线看| 亚洲桃色在线一区| 成人av在线一区二区| 欧美精品一级二级| 日韩欧美电影在线| 日韩高清在线不卡| 欧美欧美午夜aⅴ在线观看| 亚洲另类色综合网站| 91丨九色丨蝌蚪富婆spa| 亚洲国产精品高清| 国产高清无密码一区二区三区| 日韩精品中文字幕一区二区三区 | 色综合欧美在线视频区| 中文字幕精品—区二区四季| 国内精品久久久久影院薰衣草| 欧美大片一区二区| 国模大尺度一区二区三区| 欧美成人女星排行榜| 激情综合五月天| 久久免费国产精品| 岛国av在线一区| 国产精品国产精品国产专区不蜜| 高清国产午夜精品久久久久久| 久久一留热品黄| 国产二区国产一区在线观看| 国产日韩欧美综合在线| 成人性生交大片免费看中文| 国产亚洲成av人在线观看导航|