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

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

?? mylcd.c

?? TI5509A-DSP-192*64液晶顯示驅(qū)動(dòng)
?? C
字號:
/*****************************************************************************
  Filename:	    native.c
  Version:	    0.01
  Description:  calculate  measure  value
  Returns:     result
  Revision History:	 
  EQH-01,  屈宵軍  09/25/04, - Original release
*****************************************************************************/
/*寫漢字液晶子程 液晶屏分為4行*12列漢字,全部使用模擬接口方式。*/
#include<math.h>
#include<tms320.h>
#include "LCD.h"
/********************************/
/* 演示主程序			*/
/********************************/
void Lcd_Driver(void)
    
{ 
   // uint x; 
	col=0;
	row=0;
	Delay(40);			/*延時(shí)大約40Ms,等待外設(shè)準(zhǔn)備好	*/
	Lcminit();			/*液晶模塊初始化,包括全屏幕清屏*/
	Putstr(STR2,24);	/*第一行字符輸出,24字節(jié)	*/
	
}
/****************************************/
/*	一個(gè)字串的輸出			*/
/****************************************/
void Putstr(char *puts,uint i)
	{
		uint j,X;
		for (j=0;j<i;j++)
		{
		X = puts[j];
			if (X&0x80)
				{
					Putcdot(X&0x7f);	/*只保留低7位*/
				}
			else Putedot(X-0x20);		/*ascii碼表從0x20開始*/
		}
	}

/****************************************/
/*   半角字符點(diǎn)陣碼數(shù)據(jù)輸出		*/
/****************************************/
void Putedot(uint Order)
	{
	uint i,bakerx,bakery;	/*共定義4個(gè)局部變量			*/
	int x;		        	/*偏移量,字符量少的可以定義為uint	*/
	bakerx = col;    		/*暫存x,y坐標(biāo),已備下半個(gè)字符使用	*/
	bakery = row;
	x=Order * 0x10;	    	/*半角字符,每個(gè)字符16字節(jié)	*/
/*上半個(gè)字符輸出,8列	*/
	for(i=0;i<8;i++)
		{
		cbyte = Ezk[x];				/*取點(diǎn)陣碼,rom數(shù)組	*/
		Wrdata(cbyte);				/*寫輸出一字節(jié)		*/
		x++;
		col++;
		if (col==LCMLIMIT){col=0;row++;row++;};	/*下一列,如果列越界換行*/
			if (row>7) row=0;		/*如果行越界,返回首行	*/
		}					/*上半個(gè)字符輸出結(jié)束	*/

	col = bakerx;					/*列對齊		*/
	row = bakery+1;					/*指向下半個(gè)字符行	*/
/*下半個(gè)字符輸出,8列	*/
	for(i=0;i<8;i++)
		{
		cbyte = Ezk[x];				/*取點(diǎn)陣碼		*/
		Wrdata(cbyte);				/*寫輸出一字節(jié)		*/
		x++;
		col++;
		if (col==LCMLIMIT){col=0;row=row+2;};	/*下一列,如果列越界換行*/
			if (row>7) row=1;		/*如果行越界,返回首行	*/
		}					/*下半個(gè)字符輸出結(jié)束	*/
	row=bakery;
	}						/*整個(gè)字符輸出結(jié)束	*/

/****************************************/
/*	清屏,全屏幕清零		*/
/****************************************/
void Lcmcls( void )
	{
	for(row=0;row<8;row++)
   		for(col=0;col<LCMLIMIT;col++) Wrdata(0);
	}
void Wrdata(uint X)
	{
	Locatexy();		/*坐標(biāo)定位,返回時(shí)保留分區(qū)狀態(tài)不變	*/
//	wtcom();
	    *str_port= (*str_port)|DIlcd_1;	/*數(shù)據(jù)輸出*/
		*str_port= (*str_port)&RWlcd_0;	/*寫輸出  */
		*str_data= X;	/*數(shù)據(jù)輸出到數(shù)據(jù)口 */
		*str_port=(*str_port)|Elcd_1;	/*讀入到LCM*/
	//	_nop_();
		*str_port=(*str_port)&Elcd_0;
	}
/********************************/
/* 命令輸出到左區(qū)控制口		*/
/********************************/

void WrcmdL(uint X)
	{
	     lcdbusyL();	            /*確定分區(qū),返回時(shí)保留分區(qū)狀態(tài)不變*/
		*str_port= (*str_port)&DIlcd_0;			/*命令操作	*/
		*str_port= (*str_port)&RWlcd_0;			/*寫輸出  	*/
		*str_data= X;	    /*數(shù)據(jù)輸出到數(shù)據(jù)口 */
		*str_port=(*str_port)|Elcd_1;
		*str_port=(*str_port)&Elcd_0;	        /*讀入到LCM*/
	}

/********************************/
/* 命令輸出到中區(qū)控制口		*/
/********************************/

void WrcmdM(uint X)
	{
		lcdbusyM();		/*確定分區(qū),返回時(shí)保留分區(qū)狀態(tài)不變*/
		*str_port= (*str_port)&DIlcd_0;			/*命令操作	*/
		*str_port= (*str_port)&RWlcd_0;			/*寫輸出  	*/
		*str_data= X;			/*命令輸出到數(shù)據(jù)口 */
		*str_port=(*str_port)|Elcd_1;//_nop_();
		*str_port=(*str_port)&Elcd_0;	/*讀入到LCM*/
	}

/********************************/
/* 命令輸出到右區(qū)控制口		*/
/********************************/

void WrcmdR(uint X)
	{
		lcdbusyR();	/*確定分區(qū),返回時(shí)保留分區(qū)狀態(tài)不變	*/
		*str_port= (*str_port)&DIlcd_0;			/*命令操作	*/
		*str_port= (*str_port)&RWlcd_0;			/*寫輸出  	*/
		*str_data= X;			/*命令輸出到數(shù)據(jù)口 */
		*str_port=(*str_port)|Elcd_1;//_nop_();
		*str_port=(*str_port)&Elcd_0;	/*讀入到LCM*/
	}
/********************************************************/
/* 分區(qū)操作允許等待,返回時(shí)保留分區(qū)選擇狀態(tài)		*/
/********************************************************/
void lcdbusyL(void)
	{
        *str_port=(*str_port)|CS1_1;		/*CLR	CS1		*/
        *str_port=(*str_port)&CS2_0;		/*SETB	CS2		*/
        *str_port=(*str_port)&CS3_0;
        //CS3LCM = 1;		/*SETB	CS3		*/
	wtcom();		/* waitting for enable	*/
	}

void lcdbusyM(void)
	{
        *str_port=(*str_port)|CS1_1;		/*SETB	CS1		*/
        *str_port=(*str_port)&CS2_0;
        *str_port=(*str_port)|CS3_1;		/*CLR	CS2		*/
        //CS3LCM = 1;		/*SETB	CS3		*/
	wtcom();		/* waitting for enable	*/
	}

void lcdbusyR(void)
	{
        *str_port=(*str_port)|CS1_1;		/*SETB	CS1		*/
        *str_port=(*str_port)|CS2_1;
        *str_port=(*str_port)&CS3_0;		/*SETB	CS2		*/
        //CS3LCM = 0;		/*CLR	CS3		*/
	wtcom();		/* waitting for enable	*/
	}
void wtcom(void)
	{
 	*str_port= (*str_port)&DIlcd_0;		     /*CLR	DI		*/
	*str_port= (*str_port)|RWlcd_1;		     /*SETB	RW		*/
    *str_data= 0xFF;	 /*MOV	DATA_LCM,#0FFH  */
	*str_port=(*str_port)|Elcd_1;//_nop_();		
    while(*str_data& Lcdbusy);
    *str_port=(*str_port)&Elcd_0;
	}

/********************************************************/
/*根據(jù)設(shè)定的坐標(biāo)數(shù)據(jù),定位LCM上的下一個(gè)操作單元位置	*/
/********************************************************/
void Locatexy(void)
	{
	unsigned char  x,y;
	switch (col&0xc0)		/*  col.and.0xC0	*/
		{			/*條件分支執(zhí)行		*/
		case 0:		{lcdbusyL();break;}	/*左區(qū)	*/
		case 0x40:	{lcdbusyM();break;}	/*中區(qū)	*/
		case 0x80:	{lcdbusyR();break;}	/*右區(qū)	*/
		}
	x = col&0x3F|SETX;		/*  col.and.0x3f.or.setx=0x40	*/
	y = row&0x07|SETY; 		/*  row.and.0x07.or.sety=b8	*/
		wtcom();		/*  waitting for enable		*/
		*str_port= (*str_port)&DIlcd_0;			/*CLR	DI	*/
		*str_port= (*str_port)&RWlcd_0;			/*CLR	RW	*/
		*str_data= y;			/*MOV	P0,Y	*/
		*str_port=(*str_port)|Elcd_1;//_nop_();
		*str_port=(*str_port)&Elcd_0;
		wtcom();		/*  waitting for enable		*/
		*str_port= (*str_port)&DIlcd_0;			/*CLR	DI	*/
		*str_port= (*str_port)&RWlcd_0;			/*CLR	RW	*/
		*str_data= x;			/*MOV	P0,X	*/
		*str_port=(*str_port)|Elcd_1;//_nop_();
		*str_port=(*str_port)&Elcd_0;
	}
/********************************/
/*液晶屏初始化			*/
/********************************/

void Lcminit(void)
	{
		cbyte = DISPOFF;	/*關(guān)閉顯示屏	*/
		WrcmdL(cbyte);      /*左區(qū)*/
		WrcmdM(cbyte);      /*中區(qū)*/
		WrcmdR(cbyte);      /*右區(qū)*/
		cbyte = DISPON;		/*打開顯示屏	*/
		WrcmdL(cbyte);      /*左區(qū)*/
		WrcmdM(cbyte);      /*中區(qū)*/
		WrcmdR(cbyte);      /*右區(qū)*/
		cbyte = DISPFIRST;	/*定義顯示起始行為零	*/
		WrcmdL(cbyte);
		WrcmdM(cbyte);
		WrcmdR(cbyte);
		Lcmcls();
		col=0;		/*清屏		*/
		row=0;
		Locatexy();
	}
/********************************/
/* 延時(shí)				*/
/********************************/
void Delay(uint MS)
	{
		uint us,usn;
		while(MS!=0)
			{ usn = 4;
				while(usn!=0)
					{
						us=0xf0;
						while (us!=0){us--;};
						usn--;
					}
				MS--;
			}
	}
/****************************************/
/*  從液晶片上讀數(shù)據(jù),保留在全局變量中	*/
/****************************************/

void Rddata(void)
	{
	Locatexy();		/*坐標(biāo)定位,返回時(shí)保留分區(qū)狀態(tài)不變	*/
 		*str_data=0xFF;
		*str_port= (*str_port)|DIlcd_1;	/*數(shù)據(jù)*/
		*str_port= (*str_port)|RWlcd_1;	/*讀數(shù)據(jù)*/
		*str_port=(*str_port)|Elcd_1;	/*讀入到LCM*/
	//	_nop_();
		cbyte = *str_data;	/*虛讀一次 */
		*str_port=(*str_port)&Elcd_0;
	Locatexy();		/*坐標(biāo)定位,返回時(shí)保留分區(qū)狀態(tài)不變	*/
		*str_data=0xFF;
	//	_nop_();
		*str_port= (*str_port)|DIlcd_1;	/*數(shù)據(jù)*/
		*str_port= (*str_port)|RWlcd_1;	/*讀數(shù)據(jù)*/
		*str_port=(*str_port)|Elcd_1;	/*讀入到LCM*/
	//	_nop_();
		cbyte = *str_data;	/*從數(shù)據(jù)口讀數(shù)據(jù),真讀 */
		*str_port=(*str_port)&Elcd_0;
	}			

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩和的一区二区| 久久久久久久久久久电影| 国产精品久久看| 国产在线麻豆精品观看| 欧美一级片在线| 另类小说色综合网站| 日韩欧美123| 国产毛片精品视频| 久久新电视剧免费观看| 国产精品一区二区免费不卡 | 一区二区三区在线视频免费观看| 国产原创一区二区三区| 久久精品亚洲精品国产欧美kt∨| 国产原创一区二区三区| 26uuu色噜噜精品一区二区| 青青草97国产精品免费观看| 欧美精品一区二| 成人av在线资源网| 一区二区三区日韩欧美精品| 51久久夜色精品国产麻豆| 蜜桃久久av一区| 欧美经典一区二区| 91久久精品一区二区三| 日韩成人午夜精品| 国产精品色在线观看| 欧美伊人久久久久久久久影院| 美腿丝袜一区二区三区| 国产精品久久久久天堂| 欧美精品久久天天躁| 国产精品自拍一区| 亚洲六月丁香色婷婷综合久久| 日韩一区二区在线观看| 国产成人亚洲精品青草天美 | 久久综合九色综合欧美就去吻| 国产成人在线视频免费播放| 亚洲一区二区三区四区在线| 色综合久久久久综合体桃花网| 青青草原综合久久大伊人精品优势| 国产日韩精品一区二区三区在线| 欧美无人高清视频在线观看| 国产一区二三区好的| 亚洲一区精品在线| 久久久九九九九| 欧美系列亚洲系列| 国产成人一区在线| 喷水一区二区三区| 中文字幕一区二区三区在线不卡 | 欧美一三区三区四区免费在线看| 国产成人一级电影| 日本不卡视频在线| 图片区小说区区亚洲影院| 亚洲欧洲国产日本综合| 久久久精品tv| 日韩一区二区三区视频在线| 欧美艳星brazzers| 97精品久久久午夜一区二区三区| 国产乱人伦精品一区二区在线观看| 亚洲午夜一区二区三区| 国产精品九色蝌蚪自拍| 精品成a人在线观看| 欧美日韩三级一区二区| 91蝌蚪porny成人天涯| 国产成人精品aa毛片| 激情六月婷婷久久| 奇米四色…亚洲| 日韩精品成人一区二区三区| 亚洲在线视频一区| 一个色综合网站| 一区二区三区中文字幕精品精品| 国产精品美女一区二区| 中文字幕av一区 二区| 精品剧情v国产在线观看在线| 在线不卡免费av| 欧美日韩精品一区二区天天拍小说| 91丨porny丨首页| 91小视频在线免费看| 99国内精品久久| 夫妻av一区二区| 国产不卡视频在线播放| 国产一区二区三区精品视频| 国产精品一二三区| 国产成人小视频| eeuss国产一区二区三区| 成人综合在线视频| 99在线精品一区二区三区| 成人午夜激情影院| 97精品视频在线观看自产线路二| 一本到高清视频免费精品| 一本一道波多野结衣一区二区| 91免费视频网址| 欧美亚洲国产一区二区三区va| 欧亚洲嫩模精品一区三区| 91福利精品第一导航| 欧美日韩国产色站一区二区三区| 欧美视频一区二区| 91精品国产免费| 国产亚洲午夜高清国产拍精品 | 中文字幕免费在线观看视频一区| 中文字幕不卡的av| 伊人性伊人情综合网| 亚洲成人你懂的| 热久久久久久久| 国产91精品精华液一区二区三区 | 久久伊人蜜桃av一区二区| 国产女同互慰高潮91漫画| 自拍偷拍亚洲综合| 香蕉加勒比综合久久| 国产综合成人久久大片91| 91啪亚洲精品| 欧美大片日本大片免费观看| 国产精品欧美极品| 日韩黄色小视频| 成人av第一页| 欧美一区二区福利视频| 国产欧美日韩精品在线| 亚洲中国最大av网站| 久久狠狠亚洲综合| 色综合久久久久综合| 精品国产一区二区三区久久久蜜月 | 日韩欧美专区在线| 国产精品视频一区二区三区不卡| 亚洲自拍都市欧美小说| 国产一区二区网址| 欧美性色aⅴ视频一区日韩精品| 久久先锋资源网| 天天色综合天天| 9久草视频在线视频精品| 日韩三级免费观看| 亚洲一区二区在线观看视频| 国产精品一区二区三区99| 91福利精品第一导航| 久久精品欧美日韩| 日韩vs国产vs欧美| aaa亚洲精品| 日韩欧美的一区| 亚洲午夜久久久久久久久电影院| 国产真实乱对白精彩久久| 欧美精品亚洲一区二区在线播放| 亚洲国产经典视频| 韩国欧美国产1区| 在线播放亚洲一区| 亚洲女厕所小便bbb| 国产成人精品亚洲777人妖| 日韩欧美激情一区| 午夜精品福利一区二区蜜股av | 国产成人亚洲综合a∨猫咪| 欧美日韩精品一区二区在线播放 | 亚洲午夜影视影院在线观看| 国产 欧美在线| 精品少妇一区二区| 日本欧美韩国一区三区| 欧美三级蜜桃2在线观看| 亚洲女子a中天字幕| 波多野结衣欧美| 国产欧美在线观看一区| 国产精品自产自拍| 精品欧美一区二区在线观看| 午夜伦理一区二区| 欧美久久久久久久久中文字幕| 一区免费观看视频| 99国产精品久| 国产精品欧美久久久久一区二区 | 懂色av中文字幕一区二区三区| 日韩色在线观看| 韩国欧美国产1区| 久久久久久久综合| 国产成人精品免费| 国产欧美综合色| av福利精品导航| 亚洲欧美偷拍另类a∨色屁股| 91丨porny丨户外露出| 一区二区成人在线| 欧美三级中文字幕| 日韩激情中文字幕| 欧美一区日韩一区| 精品亚洲欧美一区| 久久色在线观看| 成人手机在线视频| 亚洲黄色av一区| 欧美中文字幕一区| 青草av.久久免费一区| 91精品国产一区二区三区蜜臀| 日本特黄久久久高潮| 精品久久国产老人久久综合| 色综合天天综合色综合av| av在线播放成人| 亚洲午夜久久久久久久久电影网| 一区二区在线观看视频在线观看| 国产免费观看久久| 亚洲一区二区三区四区五区黄 | 国产成人在线视频免费播放| 欧美激情艳妇裸体舞| 一本色道久久综合狠狠躁的推荐 | 国产美女精品人人做人人爽| 欧美国产欧美亚州国产日韩mv天天看完整 | 国产欧美视频在线观看| 99精品久久久久久| 五月天婷婷综合| 国产清纯在线一区二区www| 91国产成人在线|