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

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

?? lcd_control.c

?? 駕駛員考試電樁考試系統的車載程序
?? C
?? 第 1 頁 / 共 2 頁
字號:
* 入口參數:無
* 出口參數:無
****************************************************************************/
void CommandChanelOpen()
{
	//#define 	_RS			0x00000001	//A0	P3.0	//1:指令寄存器	0:數據寄存器
	//#define 	_CS1 		0x02000000	//CS1	P3.25	//片選1; 1=被選中
	IO3SET = _RS;//0x08000000; // RS	1:指令寄存器
	IO3CLR = _CS1;//0x00000100; // CS1	1=被選中
}
/****************************************************************************
* 名稱:ChanelClose() 內部函數
* 功能:使LCD模塊處于讀寫通道關閉狀態
* 入口參數:無
* 出口參數:無
****************************************************************************/
void ChanelClose()
{
	//#define 	_CS1 		0x02000000	//CS1	P3.25	//片選1; 1=被選中
	IO3SET = _CS1;//0x00000100; // CS1	1=被選中
}

//---------------------------------------------------
//==========================================================
/*------------------寫控制寄存器參數------------------------------*/
/****************************************************************************
* 名稱:write_com() 內部函數
* 功能:寫控制寄存器參數
* 入口參數:unsigned char reg  	寄存器地址
			unsigned char ptr	寄存器內容
* 出口參數:無
****************************************************************************/
void write_com(unsigned char reg,unsigned char ptr)
{
//while(BUSY){}
	LcdBusDelay(100);

//E=0;
	IO1CLR = _EN;
	OutPutData(reg);
	LcdBusDelay(50);
//CS1=0;	//cs
	IO3SET = _CS1;
//RS=1;	//讀寫指令 寄存器
	IO3SET = _RS;
//RW=0;	//PIN wirte is 0
	IO3CLR = _RW;
//E=1;	//PIN is 1 
	IO1SET = _EN;

	LcdBusDelay(50);
	IO1CLR = _EN;
//RW=1;	//PIN wirte is 1
	LcdBusDelay(10);
	IO3SET = _RW;
	
//while(BUSY){}
//P1=ptr;
	LcdBusDelay(100);
	OutPutData(ptr);
//E=0;
	LcdBusDelay(10);
	IO1CLR = _EN;
//CS1=0;
//	LcdBusDelay(100);
	IO3SET = _CS1;
//CS2=1;
//RS=1;
//	LcdBusDelay(100);
	IO3SET = _RS;
//RW=0;
//	LcdBusDelay(100);
	IO3CLR = _RW;
//INT=0;
//E=1;
//	LcdBusDelay(100);
	IO1SET = _EN;
//E=0;
	LcdBusDelay(50);
	IO1CLR = _EN;
//RW=1;
//	LcdBusDelay(100);
	IO3SET = _RW;
}
	
//==========================================================
/*------------------寫控制寄存器參數------------------------------*/
/****************************************************************************
* 名稱:write_com() 內部函數
* 功能:寫控制寄存器參數
* 入口參數:unsigned char reg  	寄存器地址
			unsigned char ptr	寄存器內容
* 出口參數:無
****************************************************************************/
unsigned char read_com(unsigned char reg)
{
	uint8 u8Return;
	//while(BUSY){}
	//P1=cmd;
	LcdBusDelay(100);
	OutPutData(reg);
	//E=0;
	LcdBusDelay(50);
	IO1CLR = _EN;
	//CS1=0;
	IO3SET = _CS1;
	//RS=1;
	IO3SET = _RS;
	//RW=0;
	IO3CLR = _RW;
	//E=1;
	IO1SET = _EN;
	//E=0;
	LcdBusDelay(50);
	IO1CLR = _EN;
	//RW=1;
	IO3SET = _RW;

	//while(BUSY){}
	//P1=0xFF;
	LcdBusDelay(100);
	OutPutData(0xFF);
	//E=0;
	LcdBusDelay(50);
	IO1CLR = _EN;
//CS1=0;
	IO3SET = _CS1;
//RS=1;
	IO3SET = _RS;
//RW=1;
	IO3SET = _RW;
//INT=0;
//E=1;
	IO1SET = _EN;
//res=P1;
	LcdBusDelay(50);
	u8Return = InputData();
//E=0;
	LcdBusDelay(50);
	IO1CLR = _EN;
//RW=1;
	IO3SET = _RW;
	
	return u8Return;
}
/*-------------------寫數據到LCD----------------------------*/
/****************************************************************************
* 名稱:write_data() 內部函數
* 功能:寫數據存儲區
* 入口參數:unsigned char Dispdata  	要寫的數據
* 出口參數:無
****************************************************************************/
void write_data(unsigned char Dispdata)
{
//while(BUSY){}
//P1=Dispdata;
	LcdBusDelay(100);
	OutPutData(Dispdata);
//E=0;
	LcdBusDelay(50);
	IO1CLR = _EN;
//CS1=0;
	IO3SET = _CS1;
//RS=0;
	IO3CLR = _RS;
//RW=0;
	IO3CLR = _RW;
//E=1;
	IO1SET = _EN;
	LcdBusDelay(50);
	IO1CLR = _EN;
}
/*************清除屏幕漢字*********/
/****************************************************************************
* 名稱:clearhz() 外部函數
* 功能:清除屏幕漢
* 入口參數:unsigned char Dispdata  	要寫的數據
* 出口參數:無
****************************************************************************/
void clearhz(void)
{
	unsigned char i;
	write_com(0x60,0x00);
	write_com(0x70,0x00);
	for(i=0;i<120;i++)
	{
	//	write_data(0xBC);
		write_data(0x0A0);
	//	write_data(0xAA);
		write_data(0x0A1);
	}
}
/********************光標顯示*************************/
/****************************************************************************
* 名稱:CursorDisplayOn() 外部函數
* 功能:光標顯示打開
* 入口參數:無
* 出口參數:無
****************************************************************************/
void CursorDisplayOn(void)
{
	write_com(0x10,0x2f);
}
/****************************************************************************
* 名稱:CursorDisplayOff() 外部函數
* 功能:光標顯示關閉
* 入口參數:無
* 出口參數:無
****************************************************************************/
void CursorDisplayOff(void)
{
	write_com(0x10,0x28);
}
/*********************設定光標位置*********************/
/****************************************************************************
* 名稱:Position_Cursor() 外部函數
* 功能:光標顯示
* 入口參數:unsigned char x   光標的X位置  數值范圍 0 ~ 29
			unsigned char y   光標的Y位置  數值范圍 0 ~ 127
* 出口參數:無
****************************************************************************/
void Position_Cursor(unsigned char x,unsigned char y)
{
	write_com(0x60,x);
	write_com(0x70,y);
}
/****************************************************************************
* 名稱:puthz() 外部函數
* 功能:在光標(X,Y)處顯示漢字hzcode(字型碼)
* 入口參數:unsigned char x      光標的X位置 數值范圍 0 ~ 29
			unsigned char y      光標的Y位置 數值范圍 0 ~ 127
			unsigned int hzcode  漢字編碼
* 出口參數:無
****************************************************************************/
void puthz(unsigned char x,unsigned char y,unsigned int hzcode)
{
	unsigned char ph,pl;
	ph=(unsigned char)(hzcode>>8);
	pl=(unsigned char)hzcode;
	write_com(0x60,x);
	write_com(0x70,y);
	write_data(ph);
	write_data(pl);
}
/****************************************************************************
* 名稱:Bright_Set() 外部函數
* 功能:液晶屏亮度控制
* 入口參數:unsigned char p      亮度值 數值范圍 0~31
* 出口參數:無
****************************************************************************/
void Bright_Set(unsigned char p)
{
	unsigned char ptr;
	ptr=p|0x20;
	write_com(0xD0,ptr);
}
/****************************************************************************
* 名稱:init_lcd() 外部函數
* 功能:初始化LCD屏
* 入口參數:無
* 出口參數:無
****************************************************************************/
	uint8 u8Test;

void init_lcd(void)
{
	Lcd_PinSet_PINSEL2();
	Lcd_PinSet_Dir();
//	testLCD_interface();
//	testLCD_interface();
//		testLCD_interface();
//			testLCD_interface();
				
	LcdBusDelay(100);
	ResetLCD();
	LcdBusDelay(500);
	write_com(0x00,0xCD);	// CD=1100 1101 (11:正常電源模式,D3=1:顯示模式為交字模式,寫入資料被視為GB/BIG/ASCII
							// D2=1:屏幕打開  D1=0:正常顯示 D0=1:正常顯示
							//D7-D6:電源模式(Power Mode)
							//		11:正常模式(Normal Mode),控制器的所有功能都可以使用(Available) 。
							//		10:等待模式(Standby Mode),只有DRAM與ROM的存取功能被禁止,其他功能都可以使用,LCD亦照常工作。
							//		01:睡眠模式(Sleep Mode),除了允許寄存器的讀寫外,其他LCD顯示與DDRAM、ROM的存取將被禁止。
							//		00:關閉模式(Off Mode),除了喚醒(Wake-Up)電路工作處,其他功能都被禁止.當Wake-Up電路被觸發,控制器將進入正常模式。
							//D5:軟體重置,所有寄存器回到初始值,但是RAM的內容不會被清除。1:重置所有寄存器,0:無作用
							//D4:設定自動重置功能,當此位元處于致能(設為1)時,若控制器無法在2毫秒內得到一完整指令或資料時,則控制器會忽視這個指令或資料。
							//		1:致能自動重置功能,0:禁能自動重置功能
							//D3:選擇顯示工作模式
							//		1:交字模式,寫入的資料被視為是GB/BIG/ASCII等字碼。
							//		0:繪圖模式,寫入的資料被視為是Bit-Map的模式。
							//D2:設定熒幕顯示為開啟或關閉,此位元用來控制連接到LCD驅動器界面的”DISP_OFF”信號
							//		1:DISP_OFF” 信號輸出High(熒幕顯示開啟)
							//		0:DISP_OFF” 信號輸出Low(熒幕顯示關閉)
							//D1:閃爍模式選擇
							//		1:整個熒幕閃爍,閃爍時間由寄存器[80h]BTR來設定
							//		0:正常顯示
							//D0:熒幕反白顯示選擇
							//		1:正常顯示
							//		0:全熒幕反白顯示,DDRAM內的資料會被全部反相。
	write_com(0x08,0x73);	// 0X73=0111 0011 D6=1:CLK OUT 使能控制 D5=1:工作視窗 D4=1:INT 和BUSY 高電平
							// D1D0=11:8MHz
	write_com(0x10,0x2f);	//光標顯示 0x2F=0010 1111 D5=1:直接存儲資料于DDRAM中,D4=0:非粗體
							//D3=1:光標自動移位。D2=1:設置光標ON。D1=1:光標閃爍。D0=1:光標寬度
							//D7:光標自動移位設定,此位元用來設定當資料讀出DDRAM時,光標是否自動移位,1:致能,0:禁能
							//D6:中/英文字對齊,1:致能,0:禁能,此功能能僅在文字模式時有效,可以將全形與半形混合顯示時作對齊調整。
							//D5:儲存當前資料(正相/反相)于 DDRAM
							//		1:直接儲存資料于DDRAM中
							//		0:存入相反的資料于DDRAM中
							//D4:設定粗體字型(僅文字模式適用),1:粗體字型,0:正常字型
							//D3:光標自動移位設定,此位元用來設定當資料寫入DDRAM時,光標是否自動移位,
							//		如果此位元被Enable,則不論在文字或是繪圖模式,光標都會自動移位。,1:致能,0:禁能
							//D2:光標顯示On/Off設定,1:設定光標 On,0:設定光標 Off
							//D1:光標閃爍控制,1:光標閃爍,閃爍時間由寄存器[80h]BTR來決定,0:光標不閃爍
							//D0:設定光標寬度
							//		1:會隨著輸入的資料而變動光標寬度,當資料為半型時,光標為一個位元組寬度(8個Pixel),當資料為全型時,光標為二個位元組寬度(16個Pixel)。
							//		0:光標固定為一個位元組的寬度(8個Pixel)
							
	write_com(0x18,0x20);	//D7-D4:設定光標高度。D3-D0:設定行距。
	write_com(0x10,0x2b);//光標隱藏

	write_com(0x20,0x1D);	//D5-D0:設定工作視窗的右邊界:29
	write_com(0x30,0x7f);	//D7-D0:設定工作視窗的下邊界:127
	write_com(0x40,0x00);	//D5-D0:設定工作視窗的左邊界:0
	write_com(0x50,0x00);	//D7-D0:設定工作視窗的上邊界:0

	write_com(0x28,0x1D);	//D5-D0:設定顯示視窗的右邊界:(240/8)-1 = 29
	write_com(0x38,0x80);	//D7-D0:設定顯示是窗的下邊界: 128-1 = 127
	write_com(0x48,0x00);	//D5-D0:設定顯示視窗的左邊界:00
	write_com(0x58,0x00);	//D7-D0:設定顯示視窗的上邊界:00

	write_com(0x60,0x00);	//D5-D0:設定光標Segment位址
	write_com(0x70,0x00);	//D7-D0:設置光標Common位址
	write_com(0x90,0x1D);	//D7-D0:Shift Clock Control Register
	write_com(0xB0,0x27);	//D5-D0:設定行 (Column)位址中斷,假如光標位置X寄存器(CPXR)=INTX,中斷發生

	write_com(0xB8,0xEF);	//D7-D0:設定列 (Row)位址中斷,假如光標位置Y寄存器(CPXR)=INTY,中斷發生
	write_com(0xA0,0x08);	//D7:忙碌狀況指示
							//		1:控制器為忙碌狀態,MCU需暫時等候到忙碌狀態終止。
							//		0:控制器為關置狀態,隨時可接受MCU存取。
							//D6:觸摸屏中斷標志位
							//		1:觸觸摸屏有偵測到接觸(Touch)
							//		0:觸摸屏未偵測到接觸
							//D5:光標行(Column)狀態
							//		1:光標的Column等于寄存器[B0h]INTX
							//		0:光標的Column不等于寄存器[B0h]INTX
							//D4:光標列(Column)狀態
							//		1:光標的列等于寄存器[B8h]INTY
							//		0:光標的列不等于寄存器[B8h]INTY
							//D3:忙碌中斷屏蔽
							//		1:使能BUSY去產生中斷輸出
							//		0:禁能BUSY去產生中斷輸出
							//D2:觸摸屏中斷屏蔽
							//		1:如果觸摸屏被偵測到,則產生中斷輸出。
							//		0:如果觸摸屏被偵測到,則不產生中斷輸出。
							//D1:寄存器[B0h]INTX是否發生中斷
							//		1:使能INTX中斷
							//		0:禁能INTX中斷
							//D0:設定寄存器[B8h]INTY是否發生中斷
	write_com(0xC0,0xF0);	//D7:觸摸屏功能啟動,1:禁能,0:致能
							//D6:觸摸屏資料輸出,1:禁能觸摸屏資料輸出,0:使能觸摸屏資料輸出
							//D5:保留
							//D4:觸控狀態位元指示,1:觸控未發生。0:觸控發生
							//D3-D0:觸摸屏控制位元
							//		Bit3 = 0  Switch SW3 OFF, Bit3 = 1  Switch SW3 ON
							//		Bit2 = 0  Switch SW2 OFF, Bit2 = 1  Switch SW2 ON
							//		Bit1 = 0  Switch SW1 OFF, Bit1 = 1  Switch SW1 ON
							//		Bit0 = 0  Switch SW0 OFF, Bit0 = 1  Switch SW0 ON
	write_com(0xD0,0x30);	//D7:LCD 亮度控制,1:禁能,0:使能
							//D6:DAC寫入使能
							//		1:不允許MCU把資料寫入Bit[4..0]
							//		0:允許MCU把資料寫入Bit[4..0]
							//D5:重置LCD亮度調整控制功能
							//		1:正常操作
							//		0:DAC重置,設定Iout為0uA
							//D4-D0: 設定LCD亮度控制Iout值
							//		00000b .. 0uA (Min. Current)
							//		:
							//		:
							//		11111b .. 500uA (Max. Current)
	write_com(0xE0,0x00);	//D7-D0:設定寫入到DDRAM的資料
							//		當寄存器[F0h]的bit3為‘1’,控制器內部將自動讀取本寄存器[E0h]的Data,
							//		然后全部填寫到DDRAM內,之后寄存器[F0h]的bit3被清除為‘0’
	write_com(0xF0,0xA0);	//D7:字型ROM的轉換,1:使能,0:禁能
							//D6:內部/外部字型ROM選擇,1:選擇外部字型ROM,0:選擇內部字型ROM
							//D5-D4:字型ROM的語系選擇,0 1:選擇繁體(BIG5)字型,1 0:原則簡體(GB)字型
							//D3:重復寫入REG [E0h]的資料到DDRAM,1:開始寫入,0:未動作
							//D2:文字碼的類別選擇,1:輸入ASCII碼,輸出為符號等,0:輸入GB/BIG5碼,輸出為中文字
							//D1-D0:4種ASCII區塊選擇
							//		0 0:ASCII選擇區塊0
							//		0 1:ASCII選擇區塊1
							//		1 0:ASCII選擇區塊2
							//		1 1:ASCII選擇區塊3
}
//==================================================

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
www..com久久爱| 欧美性淫爽ww久久久久无| 丰满亚洲少妇av| 日韩福利视频导航| 国产高清亚洲一区| 欧美亚洲丝袜传媒另类| 精品少妇一区二区三区在线视频| 国产欧美精品一区二区三区四区 | 国产日韩欧美一区二区三区综合| 91.com在线观看| 国产亚洲女人久久久久毛片| 亚洲美女屁股眼交3| 美腿丝袜亚洲综合| 欧美日韩午夜影院| 亚洲老司机在线| 成人av免费在线观看| 国产欧美日韩激情| 国内精品视频一区二区三区八戒 | 亚洲夂夂婷婷色拍ww47| 国产精品1024| 欧美精品一区二区在线播放| 免费亚洲电影在线| 欧美久久久久久久久| 亚洲午夜激情网页| 99久久精品免费| 欧美激情一区二区三区四区| 国产精品亚洲成人| 日本一区二区三区在线观看| 国产在线精品国自产拍免费| 日韩一二三区不卡| 久久精品免费看| 日韩精品一区二区三区在线| 蜜臀91精品一区二区三区| 在线播放一区二区三区| 五月婷婷激情综合网| 91麻豆精品国产自产在线 | 欧美日韩综合在线免费观看| 亚洲免费观看高清完整版在线观看 | 欧美大度的电影原声| 麻豆传媒一区二区三区| 欧美精品一区二区蜜臀亚洲| 国产在线视频一区二区| 国产性色一区二区| 成人av在线播放网站| 日韩美女视频19| 欧美午夜不卡在线观看免费| 亚洲第一二三四区| 日韩丝袜美女视频| 国产一区久久久| 中文字幕av资源一区| 91免费视频网址| 性欧美大战久久久久久久久| 91精品国产91综合久久蜜臀| 久久国产三级精品| 国产精品成人免费精品自在线观看| 成人av免费在线| 亚洲福利视频一区| 久久久久9999亚洲精品| www.日韩av| 午夜精品久久久久久久久| 欧美大白屁股肥臀xxxxxx| 捆绑变态av一区二区三区| 国产精品少妇自拍| 欧美另类变人与禽xxxxx| 精品一区二区三区免费观看| 国产精品久久久爽爽爽麻豆色哟哟 | 日韩欧美一级二级三级久久久| 国产精品亚洲综合一区在线观看| 亚洲欧美激情一区二区| 精品久久99ma| 91免费看片在线观看| 久久电影网站中文字幕| 成人免费一区二区三区视频| 欧美丰满少妇xxxxx高潮对白| 国产精品一区二区果冻传媒| 一区二区欧美在线观看| 26uuu精品一区二区三区四区在线| 91色porny蝌蚪| 久久av中文字幕片| 一区二区三区久久| 久久久久成人黄色影片| 欧美精品国产精品| 99热99精品| 国产精品99久久久久久有的能看| 亚洲综合一区二区| 国产精品久久久久四虎| 日韩欧美精品三级| 欧美日韩国产电影| 91丝袜美腿高跟国产极品老师 | 91年精品国产| 国产成a人亚洲精品| 免费观看成人鲁鲁鲁鲁鲁视频| 亚洲欧美aⅴ...| 中文字幕乱码一区二区免费| 欧美白人最猛性xxxxx69交| 欧美日韩一卡二卡三卡 | 不卡视频在线看| 精品一区二区av| 免费观看一级特黄欧美大片| 亚洲成a天堂v人片| 亚洲免费电影在线| 亚洲欧洲日韩在线| 136国产福利精品导航| 久久综合999| 91精品在线免费观看| 97久久超碰国产精品| 91在线免费播放| 国产精品一区二区果冻传媒| 午夜视频在线观看一区| 国产精品理论片在线观看| 欧美tk—视频vk| 2014亚洲片线观看视频免费| 欧美日韩国产一二三| 色婷婷综合久久久久中文| 大白屁股一区二区视频| 精品一区二区三区不卡| 亚洲国产精品久久艾草纯爱 | 欧美成人欧美edvon| 蜜桃视频一区二区三区在线观看| 综合欧美一区二区三区| 精品福利av导航| 日韩精品一区二区三区在线观看 | 欧美一级电影网站| 国产精品一区二区视频| 国产寡妇亲子伦一区二区| 另类小说视频一区二区| 免费在线欧美视频| 麻豆精品久久精品色综合| 日韩国产高清影视| 一区二区激情小说| 一区二区三区不卡在线观看| 一区av在线播放| 亚洲综合免费观看高清完整版 | 日本美女一区二区| 久久久精品免费免费| 欧美日韩一区久久| 免费人成在线不卡| 99国产欧美另类久久久精品| 亚洲婷婷综合色高清在线| 色综合天天做天天爱| 亚洲精品久久久蜜桃| 亚洲最新视频在线观看| 亚洲精品视频观看| 亚洲电影第三页| 亚洲一区视频在线| 国产一区二区三区在线观看免费视频| 欧美片网站yy| 一区二区免费看| 99这里都是精品| 麻豆久久久久久| 依依成人精品视频| 亚洲精品欧美专区| 一区二区三区 在线观看视频| 亚洲欧美偷拍卡通变态| 亚洲人成网站色在线观看| 精品国精品国产| 国产丝袜美腿一区二区三区| 爽好多水快深点欧美视频| 日韩美女久久久| 日韩av中文在线观看| 日韩欧美一二区| 亚洲无线码一区二区三区| 国产精品亚洲专一区二区三区| 不卡的电视剧免费网站有什么| 欧美本精品男人aⅴ天堂| 午夜免费久久看| 久久精品国产99| 成人av高清在线| 亚洲视频在线一区观看| 日本午夜精品视频在线观看| 91首页免费视频| 欧美激情一区二区在线| 国产不卡视频一区| 日韩欧美在线123| 久久久蜜臀国产一区二区| 久久99精品网久久| 欧美日韩精品福利| 日本一二三四高清不卡| 日韩av电影免费观看高清完整版在线观看 | 99国产一区二区三精品乱码| 欧美日韩视频一区二区| 亚洲欧美视频在线观看视频| 极品尤物av久久免费看| 91片黄在线观看| 亚洲一区免费观看| 26uuu另类欧美| zzijzzij亚洲日本少妇熟睡| 欧美一区永久视频免费观看| 国产乱码精品一品二品| 久久久综合视频| 99re视频这里只有精品| 国产精品丝袜黑色高跟| 精品亚洲欧美一区| 一区二区三区在线影院| 国产日本欧洲亚洲| 在线视频综合导航| 色天使久久综合网天天| 91麻豆成人久久精品二区三区| 精品电影一区二区| 三级影片在线观看欧美日韩一区二区|