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

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

?? gpsall.c

?? GPS接收機模塊的解碼,采用51系列單片機編程
?? C
?? 第 1 頁 / 共 3 頁
字號:
			  
/*寫漢字液晶子程 液晶屏分為4行*12列漢字,全部使用模擬接口方式。
/*		 JHD19264A接口程序(模擬方式)
;***************************************************************************
;連線圖:
;*LCM---89C52*  *LCM---89C52*   *LCM-------89C52*     *LCM----------89C52* *
;*DB0---P0.0*   *DB4---P0.4*    *D/I-------P2.5*      *CS1----------P2.4*  *
;*DB1---P0.1*   *DB5---P0.5*    *R/W-------P2.6*      *CS2----------P2.3*  *
;*DB2---P0.2*   *DB6---P0.6*    *RST--------VCC*      *RST----------P2.2* 
;*DB3---P0.3*   *DB7---P0.7*    *E---------P2.7*                           *
;注:89C52的晶振頻率為11.0592MHz                                                 *
;***************************************************************************/
//畫線部分請參照avr的c程序。
/*#pragma src			/*生成ASM文件開關,必要時打開	*/
#include<reg52.h>
#include<math.h>
#include<INTRINS.H>
#define	uchar unsigned char
#define uint  unsigned int
#define ulong unsigned long

/***********液晶顯示器接口引腳定義***************/
sbit 	L_RSET =P2^2;
sbit	Elcm=	P2^1;		//
sbit	CS1LCM=	P2^4;		//
sbit	CS2LCM=	P2^3;		//
sbit	Dilcm=	P2^5;		//
sbit	Rwlcm=	P2^6;		//
sbit 	RedLED=P3^4;
sbit 	GreenLED=P3^5;
sfr 	Datalcm=0x80;	//數據口
sbit 	Beep=P1^6;

/***********常用操作命令和參數定義***************/
#define	 DISPON		0x3f	/*顯示on		*/
#define	 DISPOFF	0x3e	/*顯示off		*/
#define	 DISPFIRST	0xc0	/*顯示起始行定義	*/
#define	 SETX		0x40	/*X定位設定指令(頁)	*/
#define	 SETY		0xb8	/*Y定位設定指令(列)	*/
#define	 Lcdbusy	0x80	/*LCM忙判斷位		*/

/**************顯示分區邊界位置*****************/
#define	 MODL		0x00	/*左區			*/
#define	 MODM		0x40	/*左區和中區分界	*/
#define	 MODR		0x80	/*中區和右區分界	*/
#define	LCMLIMIT	0xC0	/*顯示區的右邊界	*/

/****************全局變量定義*******************/
uchar col,row,cbyte;		/*列x,行(頁)y,輸出數據	*/
//bit xy;				/*畫線方向標志:1水平	*/
bit TimeFlag=0,Hzflag=0;
uchar TimeCounter=56;
/*****************************************************
 ------------------通信變量---------------------------
 *****************************************************/
uchar  data   uc0,RetKey;
uchar  Lat,Long;//Latitude 緯度 longitude 經度 
//uint   data   l0;
uchar  ComBuf[22]="3417.4744,N,10804.2075";
uint   data   counter;
//uint   CounterNub1=0,CounterNub2=0;
//uint   Key;
bit    bdata  KeyStatus;
//bit    bdata  ShiftStatus;   /*  上下檔鍵切換:=0上,=1下檔鍵. */

sbit   RS_C0=P2^0;
sbit   RS_C1=P2^7;

#define COM0   RS_C1=0;RS_C0=0 
#define COM1   RS_C1=0;RS_C0=1
#define COM2   RS_C1=1;RS_C0=0
#define COM3   RS_C1=1;RS_C0=1

#define WaitTI      while(TI==0);TI=0
#define WaitRI      while(RI==0);RI=0

//-------鍵值定義---------------
#define NoKeyPress    0xff   /* 沒有鍵按下 */
#define Tab1          0
#define Tab2          1
#define Tab3          2
#define Tab4          3
#define Uparrow       4
#define Rightarrow    5
#define	Enter		  6
#define Downarrow     7
#define Leftarrow     8

#define Yes           1
#define No            0

#define Off           0
#define On            1

#define Down          0 
#define Up            1

#define Start         0
#define End           1

#define Low           1
#define High          0

#define Ok            1
#define Error         0   

/*****************函數列表**********************/
void Lcminit(void);		/*液晶模塊初始化	*/
void Delay(uchar);		/*延時,入口數為Ms	*/
void lcdbusyL(void);		/*busy判斷、等待(左區)	*/
void lcdbusyM(void);		/*busy判斷、等待(中區)	*/
void lcdbusyR(void);		/*busy判斷、等待(右區)	*/
void Putedot(uchar);		/*半角字符輸出		*/
void Putcdot(uchar);		/*全角(漢字)輸出	*/
void Wrdata(uchar);		/*數據輸出給LCM		*/
void Lcmcls( void );		/*LCM全屏幕清零(填充0)	*/
void wtcom(void);		/*公用busy等待		*/
void Locatexy(void);		/*光標定位		*/
void WrcmdL(uchar);		/*左區命令輸出		*/
void WrcmdM(uchar);		/*中區命令輸出		*/
void WrcmdR(uchar);		/*右區命令輸出		*/
void Putstr(uchar *puts,uchar i);	/*中英文字符串輸出	*/
void Rollscreen(uchar x);	/*屏幕向上滾動演示	*/
void Rddata(void);		/*  從液晶片上讀數據	*/
void Timer0init(void);
uchar Key_Press(bit b);
uchar ScanKey(void);
void  RestWatchdog(void);
void  TranDataBy232(uchar d);
void  OpeningBeep(uchar OBN);
void InitSBUF(void);
void RecvToBuf(void);
void CheckLED(void);
void DispFirstmenu(void);
void Mainmenu(void);
void Lcmclsline(uchar lineNo );
void FlashGreenled(uchar Num);
//void Linehv(uchar length);	/*橫(豎)方向畫線	*/
//void point(void);		/*打點			*/
//void Linexy(uchar endx,uchar endy);

/******************數組列表*********************/
uchar code Ezk[];		/*ASCII常規字符點陣碼表0	*/
uchar code Hzk[];		/*自用漢字點陣碼表	*/
uchar code STR1[];		/*自定義字符串		*/
uchar code STR2[];		//
uchar code STR3[];		//
uchar code STR4[];		//
uchar code STR5[];
uchar code STR6[];
uchar code STR7[];
uchar code STR8[];
uchar code STR9[];
uchar code STR0[];
uchar code Hzk1[];		/*自用漢字點陣碼表1	*/
uchar code Hzk2[];		/*自用漢字點陣碼表1	*/

/********************************/
/* 演示主程序			*/
/********************************/
void main(void)

{
	//uchar x;
//Start:
	col=0;
	row=0;
	Delay(100);		/*延時大約40Ms,等待外設準備好	*/
	OpeningBeep(1);
	CheckLED();
	TimeFlag=0;
	Timer0init();
	Lcminit();		/*液晶模塊初始化,包括全屏幕清屏*/
	InitSBUF();
	DispFirstmenu();
	Key_Press(1);
	Lcmcls();
	RetKey=0xff;
	while(1){

		Key_Press(0); //按鍵掃描程序
		Mainmenu();
		//RedLED=!RedLED;
	    //Rollscreen(x);	/*定位新的顯示起始行	*/
	//	x++;
		Delay(80);	/*延時,控制滾動速度	*/
		//if (TimeFlag==1) goto Start;
		GreenLED=!GreenLED;

		};
}

void Timer0init(void)
{
	TMOD = 0x01; //定時器0 定時方式1
	TH0=0;		//	71.11ms@11.0592Mhz
	TL0=0;
	TR0 = 1; //啟動定時器0
	TimeFlag=0;
	ET0=1;EA=1;
}
void Timer0_int(void) interrupt 1 using 1
{
  	TH0=0;
	TL0=0;
	TimeCounter--;	
	if(TimeCounter==0)
		{
			TimeFlag=1;
			TimeCounter=56;
		}
	else
	{
		TH0=0;
		TL0=0;
	}
}

/****************************************/
/*	屏幕滾動定位			*/
/****************************************/
void Rollscreen(uchar x)
	{
		cbyte = DISPFIRST|x;	/*定義顯示起始行為x?*/
		WrcmdL(cbyte);
		WrcmdM(cbyte);
		WrcmdR(cbyte);
	}

/****************************************/
/*	一個字串的輸出			*/
/****************************************/
void Putstr(uchar *puts,uchar i)
	{
		uchar j,X;
		for (j=0;j<i;j++)
		{
		X = puts[j];
			if (X&0x80)
				{
					Putcdot(X&0x7f);	/*只保留低7位*/
				}
			else Putedot(X-0x20);		/*ascii碼表從0x20開始*/
		}
	}

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

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


/****************************************/
/*  全角字符點陣碼數據輸出		*/
/****************************************/
void Putcdot(uchar Order)
	{
	uchar i,bakerx,bakery;		/*共定義3個局部變量		*/
	int x;				/*偏移量,字符量少的可以定義為uchar	*/
	bakerx = col;			/*暫存x,y坐標,已備下半個字符使用	*/
	bakery = row;
	x=Order * 0x20;			/*每個字符32字節	*/
	
/*上半個字符輸出,16列	*/
	for(i=0;i<16;i++)
		{
		if(Hzflag)
			Wrdata(Hzk1[x]);				/*寫輸出一字節		*/
		else
			Wrdata(Hzk2[x]);
		x++;
		col++;
		if (col==LCMLIMIT){ col=0;row++;row++;}	/*下一列,如果列越界換行*/
			if (row>6) row=0;		/*如果行越界,返回首行	*/
		}					/*上半個字符輸出結束	*/
		
/*下半個字符輸出,16列	*/
	col = bakerx;
	row = bakery+1;
	for(i=0;i<16;i++)				/*下半部分*/
		{
		if(Hzflag)
			Wrdata(Hzk1[x]);				/*寫輸出一字節		*/
		else
			Wrdata(Hzk2[x]);
		x++;
		col++;
		if (col==LCMLIMIT){col=0;row++;row++;}	/*下一列,如果列越界換行*/
			if (row>7) row=1;		/*如果行越界,返回首行	*/
		}					/*下半個字符輸出結束	*/
	row = bakery;
	}						/*整個字符輸出結束	*/

/****************************************/
/*	清屏,全屏幕清零		*/
/****************************************/
void Lcmcls( void )
	{
	for(row=0;row<8;row++)
   		for(col=0;col<LCMLIMIT;col++) Wrdata(0);
	}
/****************************************/
/*屏幕某一行清零		*/
/****************************************/

void Lcmclsline(uchar lineNo )
{   uchar i;
	i=lineNo+1;
	for(row=lineNo;row<i;row++)
		for(col=0;col<LCMLIMIT;col++) Wrdata(0);
}
/****************************************/
/*  從液晶片上讀數據,保留在全局變量中	*/
/****************************************/
/*
void Rddata(void)
	{
	Locatexy();		//坐標定位,返回時保留分區狀態不變	
		Datalcm=0xFF;
		Dilcm = 1;	//數據
		Rwlcm = 1;	//讀數據
		Elcm = 1;	//讀入到LCM
		_nop_();
		cbyte = Datalcm;	//虛讀一次 
		Elcm = 0;
	Locatexy();		//坐標定位,返回時保留分區狀態不變	
		Datalcm=0xFF;
		_nop_();
		Dilcm = 1;	//數據
		Rwlcm = 1;	//讀數據
		Elcm = 1;	//讀入到LCM
		_nop_();
		cbyte = Datalcm;	//從數據口讀數據,真讀 
		Elcm = 0;
	}	 */

/****************************************/
/*	數據寫輸出			*/
/****************************************/

void Wrdata(uchar X)
	{
	Locatexy();		/*坐標定位,返回時保留分區狀態不變	*/
//	wtcom();
		Dilcm = 1;	/*數據輸出*/
		Rwlcm = 0;	/*寫輸出  */
		Datalcm = X;	/*數據輸出到數據口 */
		Elcm = 1;	/*讀入到LCM*/
		_nop_();
		Elcm = 0;
	}

/****************************************/
/* 命令輸出,每次輸出一個分區控制口	*/
/****************************************/

/*void Wrcmd(uchar X)
//	{
//	Locatexy();		/*確定分區,返回時保留分區狀態不變	*/
//	wtcom();		/*等待LCM操作允許	*/
//		Dilcm = 0;			/*數據操作	*/
//		Rwlcm = 0;			/*寫輸出  	*/
//		Datalcm = X;			/*數據輸出到數據口 */
//		Elcm = 1;_nop_();Elcm = 0;	/*讀入到LCM*/
//	}

/********************************/
/* 命令輸出到左區控制口		*/
/********************************/

void WrcmdL(uchar X)
	{
		lcdbusyL();		/*確定分區,返回時保留分區狀態不變*/
		Dilcm = 0;			/*命令操作	*/
		Rwlcm = 0;			/*寫輸出  	*/
		Datalcm = X;			/*數據輸出到數據口 */
		Elcm = 1;_nop_();Elcm = 0;	/*讀入到LCM*/
	}

/********************************/
/* 命令輸出到中區控制口		*/
/********************************/

void WrcmdM(uchar X)
	{
		lcdbusyM();		/*確定分區,返回時保留分區狀態不變*/
		Dilcm = 0;			/*命令操作	*/
		Rwlcm = 0;			/*寫輸出  	*/
		Datalcm = X;			/*命令輸出到數據口 */
		Elcm = 1;_nop_();Elcm = 0;	/*讀入到LCM*/
	}

/********************************/
/* 命令輸出到右區控制口		*/
/********************************/

void WrcmdR(uchar X)
	{
		lcdbusyR();	/*確定分區,返回時保留分區狀態不變	*/
		Dilcm = 0;			/*命令操作	*/
		Rwlcm = 0;			/*寫輸出  	*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区免费看| 色狠狠色噜噜噜综合网| 波多野洁衣一区| 欧美日韩国产不卡| 国产精品毛片无遮挡高清| 亚洲国产成人精品视频| 成人永久看片免费视频天堂| 337p亚洲精品色噜噜噜| 亚洲婷婷综合色高清在线| 久久91精品国产91久久小草| 欧美日韩国产天堂| 亚洲天堂免费在线观看视频| 国产露脸91国语对白| 欧美日韩电影在线播放| 日韩一区日韩二区| 福利电影一区二区三区| 欧美一区二区免费观在线| 亚洲综合免费观看高清完整版在线 | 欧美久久久影院| 国产亚洲精品aa午夜观看| 偷拍亚洲欧洲综合| 色偷偷久久人人79超碰人人澡| 亚洲国产精品久久人人爱蜜臀| 成人精品国产免费网站| 精品久久久久久久人人人人传媒| 亚洲第一福利视频在线| 91网页版在线| 成人免费一区二区三区视频| 成人一区二区视频| 国产亚洲精品aa午夜观看| 韩国一区二区视频| 欧美不卡激情三级在线观看| 蜜臀久久99精品久久久久久9| 欧美精品日韩一本| 亚洲电影视频在线| 欧美揉bbbbb揉bbbbb| 亚洲综合免费观看高清完整版| 成人av网站在线观看| 国产精品久久久一本精品| 国产suv一区二区三区88区| 久久亚洲欧美国产精品乐播| 国产高清在线精品| 国产偷国产偷亚洲高清人白洁| 国产精品一品视频| 国产精品欧美久久久久无广告| 成人激情动漫在线观看| 中文字幕欧美日本乱码一线二线| 国产jizzjizz一区二区| 国产精品久久久久久久久快鸭| 成人av免费在线观看| √…a在线天堂一区| 色中色一区二区| 亚洲成人1区2区| 91精品国产一区二区三区| 久久精品999| 久久久精品tv| 91在线精品秘密一区二区| 久草在线在线精品观看| 欧美精品一区二区久久久| 国产成人精品网址| 亚洲免费色视频| 欧美日韩高清不卡| 极品美女销魂一区二区三区免费| 欧美国产日韩在线观看| 在线一区二区三区做爰视频网站| 天天色天天操综合| 久久精品日韩一区二区三区| av一区二区三区四区| 爽好久久久欧美精品| 久久婷婷色综合| 日本黄色一区二区| 美女一区二区三区在线观看| 国产精品久久久爽爽爽麻豆色哟哟| 在线观看成人免费视频| 狠狠色丁香久久婷婷综合丁香| 自拍偷拍亚洲激情| 日韩精品最新网址| 91极品视觉盛宴| 国产成人亚洲精品狼色在线| 亚洲国产精品久久久久秋霞影院| 久久蜜桃一区二区| 欧美探花视频资源| 国产成人鲁色资源国产91色综 | 国产成+人+日韩+欧美+亚洲| 亚洲成人你懂的| 久久久久国产精品免费免费搜索| 色哟哟一区二区| 国产精品乡下勾搭老头1| 亚洲国产wwwccc36天堂| 国产日韩欧美制服另类| 欧美一区二区网站| 日本乱人伦aⅴ精品| 国产iv一区二区三区| 奇米在线7777在线精品 | 99久久综合国产精品| 麻豆久久久久久久| 亚洲综合免费观看高清完整版在线| 久久久99久久精品欧美| 欧美精品tushy高清| 一本一道久久a久久精品综合蜜臀| 经典一区二区三区| 丝袜美腿成人在线| 一区二区久久久| 亚洲视频电影在线| 国产精品丝袜久久久久久app| 精品欧美一区二区久久| 欧美精品久久久久久久久老牛影院| 91美女精品福利| av影院午夜一区| 成人黄色在线网站| 成人一区在线看| 国产.精品.日韩.另类.中文.在线.播放| 日本aⅴ免费视频一区二区三区| 亚洲精品乱码久久久久久| 国产精品美女久久福利网站| 中文字幕欧美国产| 久久久久久亚洲综合影院红桃| 精品久久人人做人人爱| 91麻豆精品国产91久久久资源速度| 欧美午夜一区二区三区免费大片| 在线免费观看成人短视频| 色悠悠久久综合| 欧美在线播放高清精品| 欧美伊人久久大香线蕉综合69| 一本大道久久精品懂色aⅴ| 91免费视频网址| 91免费观看在线| 欧美性猛片xxxx免费看久爱| 欧美色涩在线第一页| 欧美精品成人一区二区三区四区| 精品视频在线免费看| 欧美日本韩国一区| 欧美疯狂性受xxxxx喷水图片| 91精品蜜臀在线一区尤物| 日韩一区二区视频| 久久品道一品道久久精品| 国产蜜臀97一区二区三区| 中文字幕视频一区二区三区久| 综合分类小说区另类春色亚洲小说欧美 | 日本一区二区三区四区在线视频| 亚洲v精品v日韩v欧美v专区| 日韩二区三区四区| 国产在线国偷精品免费看| 成人小视频在线观看| 色8久久精品久久久久久蜜 | 色综合久久久久久久久| 欧美亚洲国产一区二区三区va| 欧美精品一二三四| 精品乱人伦小说| 亚洲男同1069视频| 日av在线不卡| 国产不卡在线视频| 欧美在线看片a免费观看| 日韩欧美一级二级三级久久久| 欧美经典一区二区三区| 一个色在线综合| 国模套图日韩精品一区二区| 色综合天天综合狠狠| 欧美一区二区三区在线观看| 国产精品国产三级国产aⅴ入口| 午夜精品久久久久久久久久久 | 欧美va日韩va| 亚洲人成网站在线| 麻豆国产91在线播放| 91小视频在线免费看| 精品国产一区二区精华| 亚洲精选视频免费看| 激情综合网天天干| 在线观看国产一区二区| 久久精品人人爽人人爽| 亚洲国产视频一区二区| 成人精品免费网站| 欧美一区二区福利视频| 亚洲精品va在线观看| 国产精品1区2区3区| 欧美精品黑人性xxxx| 亚洲嫩草精品久久| 丁香天五香天堂综合| 日韩欧美一区在线| 亚洲综合色噜噜狠狠| 99热这里都是精品| 久久蜜臀中文字幕| 蜜臀久久99精品久久久久宅男 | 国产精品香蕉一区二区三区| 欧美剧情片在线观看| 亚洲另类中文字| 成人黄色软件下载| 26uuu国产电影一区二区| 亚洲一区在线观看免费观看电影高清 | 99麻豆久久久国产精品免费优播| 日韩午夜在线观看视频| 婷婷久久综合九色综合伊人色| 一本一本久久a久久精品综合麻豆| 久久精品人人做人人综合| 韩国女主播一区二区三区| 欧美一区二区三区在线电影| 日韩中文字幕麻豆| 精品1区2区3区| 亚洲va在线va天堂| 欧美日韩国产电影|