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

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

?? init.c

?? 觸摸屏的中斷控制程序
?? C
字號(hào):
//==============================================================================
//本觸摸屏程序只適用于金鵬公司D型液晶模塊,顯示點(diǎn)數(shù)按OCMJ8X15D液晶模塊顯示,即240X128點(diǎn)陣顯示。
//==============================================================================
#include <reg52.h>

sbit lcd_rs   =P3^0;		//L:存取緩存器,H:存取DDRAM
sbit lcd_wr   =P3^1;		//L有效
sbit lcd_rd   =P3^6;		//L有效
sbit lcd_cs1  =P3^3;		//L有效
//sbit lcd_cs2  =P3^4;		//H有效
sbit lcd_busy =P3^5;
sbit lcd_int  =P3^2;
//sbit lcd_rst  =P3^7;		//L有效

#define lcd_regname  P1
#define lcd_regdata  P1
#define lcd_regnada  P1
#define lcd_data     P1
#define lcd_control  P3

#define uchar        unsigned char
#define uint         unsigned int

#define LCD_XMAX 240
#define LCD_YMAX 128

//=============================================
extern void lcd_regwrite(uchar regname,uchar regdata) small;
extern void lcd_regwr(uchar regnada) small;
extern void lcd_datawrite(uchar wrdata) small;
extern uchar lcd_regread(uchar regname) small;
extern void Delay1ms(uchar Counter) small;
extern void delay(int k) small;
extern void delay1 (int ms) small;
extern void lcd_reset(void) small;
extern void lcd_initial(void) small;
extern void lcd_clear(void) small;
extern void gotoxy(uchar x,uchar y) small;
extern uchar Test_Touch(void) small;
extern uint Touch_X(void) small;
extern uint Touch_Y(void) small;
extern void LCD_Bold(void) small;
extern void LCD_NoBold(void) small;
extern void Print_Hex(uint buf) small;
//==============================================================================
void Delay1ms(uchar Counter)
{
	int i,j;
	
	for(i = 0 ; i < Counter ; i++)
	{
		for(j = 0 ;j < 78 ; j++);
	}
}
//.............................................
void delay(int k)
{
  	int i;
  	for(i=0;i<k;i++);
}
//.............................................
void delay1 (int ms)
{
 	int i,j;
  	for(i=0;i<ms;i++)
  	for(j=0;j<123;j++);
}
//=============================================
void lcd_regwrite(uchar regname,uchar regdata) small
{                                   //寫資料到緩存器
  lcd_regwr(regname);
  delay(1);
  lcd_regwr(regdata);
}
//.............................................
void lcd_regwr(uchar regnada) small
{
  EA=0;
  lcd_regnada = regnada;
  lcd_cs1 =0; // chip enable.
  lcd_rd = 1; //
  lcd_rs = 0; // rs = 0;
  lcd_wr = 0; // wr = 0;
  
  lcd_wr = 1; // wr = 1;
  lcd_rs = 1; // rs = 1;
  lcd_cs1 =1; // chip disable.
  EA=1;
}
//.............................................
void lcd_datawrite(uchar wrdata) small
{				 //寫資料到DDRAM
  EA=0;
  while(lcd_busy == 0);

  lcd_data = wrdata;
  lcd_cs1 =0; // chip enable.
  lcd_rd = 1; //
  lcd_rs = 1; // rs = 1;
  lcd_wr = 0; // wr = 0;
  
  lcd_wr = 1; // wr = 1;
  lcd_rs = 1; // rs = 1;
  lcd_cs1 =1; // chip disable.
  EA=1;
  
}
//.............................................
uchar lcd_regread(uchar regname) small
{                           //讀緩存器
  uchar reg_rddata;
  lcd_regwr(regname);
  EA=0;
  lcd_data = 0xff;
  lcd_cs1 =0; // chip enable.
  lcd_wr = 1; // wr = 1;
  lcd_rs = 0; // rs = 0;
  lcd_rd = 0; // rd = 0;
  
  reg_rddata = lcd_data;
  lcd_rd = 1; // rd = 1;
  lcd_rs = 1; // rs = 1;
  lcd_cs1 =1; // chip disable.
  return reg_rddata;
  EA=1;
}
//=============================================
void lcd_reset(void) small
{               //上電復(fù)位
  delay1(120); // delay 120ms 等待上電復(fù)位
  lcd_control = 0xff; // lcd_rs/wr/rd/cs1/cs2 normal - skeep high.
}
//.............................................
void lcd_clear(void) small
{                   //清屏
  uchar reg_rddata;
  lcd_regwrite(0xe0,0x00);
  reg_rddata = lcd_regread(0xf0);
  reg_rddata |= 0x08;
  lcd_regwrite(0xf0,reg_rddata);
}
//==============================================================================
//LCD Initial	
//==============================================================================

void LCD_Initial(void) small
{                   //按OCMJ8X15D液晶模塊(即240X128點(diǎn)陣)初始化
  lcd_regwrite(0x00,0xc9); // lcd control register(lcr)
  lcd_regwrite(0x01,0xe2); // misc.register(mir)
  lcd_regwrite(0x02,0x10); // advance power setup register(apsr)
  lcd_regwrite(0x03,0x80); // advance display setup regiser(adsr)
  lcd_regwrite(0x10,0x6b); // cursor control register(ccr)
  lcd_regwrite(0x11,0x00); // distance of word or lines register(dwlr)
  lcd_regwrite(0x12,0x91); // memory access mode register(awrr)
  lcd_regwrite(0x21,29); // display window right register(dwrr)
  lcd_regwrite(0x31,127); // display window bottom register(dwbr)
  lcd_regwrite(0x41,0x00); // display window left register(dwlr)
  lcd_regwrite(0x51,0x00); // display window top register(dwtr)
  lcd_regwrite(0x20,29); // active window right register(awrr)
  lcd_regwrite(0x30,127); // active window bottom register(awbr)
  lcd_regwrite(0x40,0x00); // active window left register(awlr)
  lcd_regwrite(0x50,0x00); // active window top register(awtr)
  lcd_regwrite(0x60,0x00); // cursor position x register(cpxr)
  lcd_regwrite(0x61,0x00); // begin segment position register(bgsg)
  lcd_regwrite(0x70,0x00); // cursor position y register(cpyr)
  lcd_regwrite(0x71,0x00); // shift action range,begin commom register(bgcm)
  lcd_regwrite(0x72,0x7f); // shift action range,end commom register(edcm)
  lcd_regwrite(0x80,0xaa); // blink time register(btr)
  lcd_regwrite(0x81,0x04); // frame rate polarity change at common_fa register(fdca)
  lcd_regwrite(0x91,0x00); // frame rate polarity change at common_fb register(fdcb)
  lcd_regwrite(0x90,0x2d); // shift clock control register(sccr)
  lcd_regwrite(0xa0,0x11); // interrupt setup & status register(frcb)
  lcd_regwrite(0xa1,0x00); // key scan control register(kscr)
  lcd_regwrite(0xa2,0x00); // key scan data register(ksdr)
  lcd_regwrite(0xa3,0x00); // key scan data expand register(kser)
  lcd_regwrite(0xb0,0x13); // interrupt column setup register(intx)
  lcd_regwrite(0xb1,0x7f); // interrupt row setup register(inty)
  lcd_regwrite(0xc0,0x00); // touch panel control register(tpcr)
  lcd_regwrite(0xc1,0x35); // adc status register(adcs)
  lcd_regwrite(0xc8,0x80); // touch panel segment high byte data register(tpxr)
  lcd_regwrite(0xc9,0x80); // touch panel common high byte data register(tpyr)
  lcd_regwrite(0xca,0x00); // touch panel segment/common low byte data register(tpzr)
  lcd_regwrite(0xd0,0x80); // lcd contrast control register (lccr)
  lcd_regwrite(0xe0,0x00); // pattern data register(pdr)
  lcd_regwrite(0xf0,0xa0); // font control register(fcr)
  lcd_regwrite(0xf1,0x0f); // font size control register
}
//==============================================================================
void gotoxy(uchar x,uchar y) small
{                                //定坐標(biāo)
  lcd_regwrite(0x60,(x & 0x3f)); // active window top register(awtr)
  lcd_regwrite(0x70,(y & 0xff)); // active window top register(awtr)
}

//==============================================================================
uchar Test_Touch(void)
{
	uchar temp, tempT;
	
	EA=0;
	temp = lcd_regread(0xc0);//TPCR
	temp &= 0xfe;//clear bit0
	temp &= 0xfd;//clear bit1
	temp &= 0xfb;//clear bit2
	temp |= 0x08;//set bit7
	lcd_regwrite(0xc0, temp);//TPCR
	Delay1ms(2);

	tempT=lcd_regread(0xc1);//TPSR

	temp &= 0xf7;
	lcd_regwrite(0xc0, temp);//TPCR

	tempT = tempT & 0x40;
	if(tempT == 0x40) return 0x01;
	else return 0x00;
	EA=1;
}
//==============================================================================
uint Touch_Y(void)
{
	uchar temp, tempYL;
	uint tempY;
	
	EA=0;
	temp = lcd_regread(0xc0);//TPCR
	temp &= 0xfe;
	lcd_regwrite(0xc0, temp);//TPCR
	temp &= 0xfd;
	lcd_regwrite(0xc0, temp);//TPCR
	temp |= 0x04;
	lcd_regwrite(0xc0, temp);//TPCR
	temp |= 0x08;
	lcd_regwrite(0xc0, temp);//TPCR
	Delay1ms(1);
	
	tempY=lcd_regread(0xc9);//TPYR
	
	tempYL=(lcd_regread(0xca)&0xF0)>>4;//TPZR
	
	tempY=(tempY<<2)|tempYL;
	
	return tempY;
	EA=1;
}
//==============================================================================
uint Touch_X(void)
{
	uchar temp, tempXL;
	uint tempX;
	
	EA=0;
	temp = lcd_regread(0xc0);//TPCR
	temp &= 0xfb;
	lcd_regwrite(0xc0, temp);//TPCR
	temp &= 0xf7;
	lcd_regwrite(0xc0, temp);//TPCR
	temp |= 0x01;
	lcd_regwrite(0xc0, temp);//TPCR
	temp |= 0x02;
	lcd_regwrite(0xc0, temp);//TPCR
	Delay1ms(1);
	
	tempX=lcd_regread(0xc8);//TPXR
	tempXL=(lcd_regread(0xca)&0x0f);//TPZR
	
	tempX=(tempX<<2)|tempXL;
	
	return tempX;
	EA=1;
}
//==============================================================================
void LCD_Bold(void)
{
	uchar temp;
	
	
	temp = lcd_regread(0x10);//WCCR
	temp |= 0x10;
	lcd_regwrite(0x10, temp);//WCCR
	
}
//==============================================================================
void LCD_NoBold(void)
{
	uchar temp;
	
	temp = lcd_regread(0x10);//WCCR
	temp &= 0xef;
	lcd_regwrite(0x10, temp);//WCCR
}
//==============================================================================
void Print_Hex(uint buf)
{
	uint temp,temp1;
	temp1=buf;
	
	temp = (temp1 >>8) & 0x0F;
	if(temp < 0x0A)
	{
		temp |= 0x30;
	}
	else temp = temp + 0x37;
	lcd_datawrite(temp);
	
	temp = (temp1 >>4) & 0x0F;
	if(temp < 0x0A)
	{
		temp |= 0x30;
	}
	else temp = temp + 0x37;
	lcd_datawrite(temp);

	temp=buf;
	temp = temp1 & 0x0F;
	if(temp < 0x0A)
	{
		temp |= 0x30;
	}
	else temp = temp + 0x37;
	lcd_datawrite(temp);
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
裸体歌舞表演一区二区| 中文字幕欧美国产| 亚洲精品视频在线看| 极品少妇xxxx精品少妇偷拍| 欧美精品久久天天躁| 国产精品福利av| 欧美日韩在线播放三区| 国产三级精品三级在线专区| 日韩不卡一区二区三区| 免费在线观看视频一区| 亚洲日本护士毛茸茸| 看电影不卡的网站| 在线看不卡av| 国产精品国产三级国产专播品爱网 | 国产又粗又猛又爽又黄91精品| 国产婷婷一区二区| 丁香婷婷深情五月亚洲| 调教+趴+乳夹+国产+精品| 97se亚洲国产综合自在线观| 精品sm捆绑视频| 国产精品婷婷午夜在线观看| 99久久99久久久精品齐齐| 色婷婷综合五月| 99vv1com这只有精品| 国产精品女上位| 欧美亚洲一区三区| 国产自产2019最新不卡| 久久午夜羞羞影院免费观看| 色诱亚洲精品久久久久久| 国产欧美一区二区三区在线看蜜臀| 国内精品在线播放| 国内精品第一页| 国产成人一区在线| 国产主播一区二区| 日韩主播视频在线| 中文无字幕一区二区三区 | 久久疯狂做爰流白浆xx| 欧美顶级少妇做爰| 风流少妇一区二区| 视频一区欧美日韩| 精品欧美一区二区在线观看| 91久久精品国产91性色tv| 国产呦精品一区二区三区网站| 日韩毛片视频在线看| 国产欧美日产一区| 国产目拍亚洲精品99久久精品| 久久综合给合久久狠狠狠97色69| 精品国产三级电影在线观看| 欧美一区二区视频网站| 男人的天堂亚洲一区| 欧美日本在线观看| 国产成人夜色高潮福利影视| 精品国产一区二区三区四区四| 欧日韩精品视频| 欧美一级片在线看| 免费观看在线综合色| 亚洲视频免费在线观看| 99re在线视频这里只有精品| 亚洲午夜影视影院在线观看| 欧美一级搡bbbb搡bbbb| 国产一区高清在线| 亚洲欧洲日韩在线| 欧美乱妇23p| 激情综合网天天干| 国产精品久久久久久亚洲毛片| 色综合天天综合网天天看片| 午夜日韩在线观看| 久久久蜜桃精品| 在线观看国产91| 秋霞国产午夜精品免费视频| 国产日韩欧美高清| 91精品国产高清一区二区三区 | 一区二区三区四区中文字幕| 欧美日韩一区三区| 蜜臀国产一区二区三区在线播放| 国产亚洲成aⅴ人片在线观看 | 一区二区在线观看不卡| 美女免费视频一区| 国产精品伦理一区二区| 欧美日韩不卡一区二区| 国产激情视频一区二区三区欧美 | 久久综合久久综合久久| 久久久久亚洲蜜桃| 欧美精品乱码久久久久久| 成人激情电影免费在线观看| 日韩精品三区四区| 一区二区三区欧美日韩| 久久久电影一区二区三区| 中文字幕字幕中文在线中不卡视频| 一区二区在线观看视频在线观看| 91精品国产日韩91久久久久久| 成人一区二区三区视频在线观看 | 欧美日韩美少妇| 成人av免费网站| 麻豆精品在线视频| 亚洲影视在线观看| 国产欧美精品日韩区二区麻豆天美| 欧美日韩五月天| 99re视频精品| 成人免费av网站| 国产呦精品一区二区三区网站| 免费av网站大全久久| 一区二区在线免费| 亚洲精品一二三区| 国产日韩欧美精品一区| 欧美mv日韩mv国产| 日韩一级完整毛片| 欧美一区二区精品| 日韩美女天天操| 亚洲欧美另类在线| 亚洲国产精品久久久久秋霞影院 | 麻豆久久久久久| 日韩精品国产精品| 午夜一区二区三区在线观看| 亚洲美女视频在线观看| 综合久久久久久| 亚洲视频一区在线| 亚洲欧美一区二区久久 | 免费观看91视频大全| 日韩av网站免费在线| 青青草视频一区| 久久99精品久久久久婷婷| 久久电影网电视剧免费观看| 狠狠色综合色综合网络| 久久99精品国产.久久久久久| 麻豆国产欧美日韩综合精品二区| 日韩电影一二三区| 国产一区二区在线观看视频| 国产一区高清在线| 成人av电影在线网| 色婷婷综合在线| 欧美群妇大交群的观看方式| 在线综合+亚洲+欧美中文字幕| 日韩色视频在线观看| 精品三级在线看| 国产精品女同一区二区三区| 亚洲精品中文在线观看| 婷婷开心激情综合| 国模无码大尺度一区二区三区| 国产寡妇亲子伦一区二区| 色偷偷久久人人79超碰人人澡 | 国产日韩欧美精品电影三级在线| 一色屋精品亚洲香蕉网站| 亚洲精品免费播放| 日本免费在线视频不卡一不卡二| 国模一区二区三区白浆| 一本一本大道香蕉久在线精品| 宅男噜噜噜66一区二区66| 欧美成人国产一区二区| 国产精品三级av| 亚洲高清免费观看高清完整版在线观看| 日本不卡一区二区| 国产成人在线视频网站| 在线免费观看视频一区| 日韩免费一区二区三区在线播放| 国产欧美一区二区精品性| 亚洲一区二区精品久久av| 久久国产精品99精品国产| 色婷婷亚洲精品| 精品国产伦一区二区三区免费| 国产欧美一区二区三区沐欲| 五月婷婷色综合| 成人精品免费网站| 日韩亚洲电影在线| 亚洲精品欧美二区三区中文字幕| 九色|91porny| 精品视频一区三区九区| 国产精品午夜在线观看| 人人精品人人爱| 欧美在线999| 亚洲国产精品t66y| 久久国产剧场电影| 欧美精品日韩一区| 亚洲色图.com| 成人自拍视频在线观看| 精品欧美乱码久久久久久 | ●精品国产综合乱码久久久久| 蜜桃视频在线观看一区| 欧美午夜不卡视频| 国产精品狼人久久影院观看方式| 久久99精品久久久久久国产越南 | 久久亚洲欧美国产精品乐播| 视频一区视频二区中文| 色婷婷av一区二区三区之一色屋| 国产精品久久夜| 国产一区二区网址| 欧美r级在线观看| 男女男精品视频网| 欧美日韩国产区一| 亚洲国产一区视频| 欧美综合天天夜夜久久| 亚洲欧洲日韩女同| 91网站在线播放| 亚洲免费av网站| 波波电影院一区二区三区| 国产拍揄自揄精品视频麻豆| 国产黄人亚洲片| 国产精品乱码一区二区三区软件| 国产91精品露脸国语对白| 国产性天天综合网|