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

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

?? ndsbscui.c

?? LCD及鍵盤、RS232通信控制源代碼、采用keil c51環境編譯
?? C
字號:
/*********************************************************************************
*                                                                                *
*	FileName:	NdsBscDis.c                                                      *
*	Function:	Main subroutine of the User Interface(UI) controller in BSC      *
*	CPU:		ATMEL AT89C52                                                    *
*	SystemName:	NDS18000                                                         *
*	SubSystem:	BSC-User Interface(UI)                                           *
*	System clock:	11.0592MHz                                                   *
*	Startup:	14/Oct/2002                                                      *
*	Author:		XuYiBo                                                           *
*                                                                                *
*********************************************************************************/
#include <AT89X52.H>
#include <intrins.h>

#include "NDSBSCUI.H"
#include "display.h"
#include "General.h"
#include "Keyboard.h"
#include "Serial.h"

UIMemory	xdata UIDataArea _at_ MEMORY_ADDRESS;
UISema		xdata UISemaphore _at_ SEMAPHORE_ADDRESS;

unsigned char code ucInitTitle[]	 ="SYSTEM INITIALIZING PLEASE WAIT         ";
unsigned char code ucRamErrorTitle1[]="System Error:MEMORY TEST FAILURE!(0x01) ";	//Can`t access physical paramenter eara
unsigned char code ucRamErrorTitle2[]="System Error:MEMORY TEST FAILURE!(0x02) ";	//Can`t access keyboard paramenter eara
unsigned char code ucRamErrorTitle3[]="System Error:MEMORY TEST FAILURE!(0x03) ";	//Can`t access display paramenter eara
unsigned char code ucRamErrorTitle4[]="System Error:MEMORY TEST FAILURE!(0x04) ";	//Can`t access system paramenter eara


///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

void main(void)
{
unsigned char data ucTmp;

	P0 = 0xff;
	P1 = 0xff;
	P2 = 0xff;
	P3 = 0xff;
	AUXR	= 0x02;

	DelayTime(40);		//delay 40ms
//display Init title
	InitDisplay();		//Initialize the variables used by display functions
	DisplayRom(ucInitTitle);

//Release all semaphore
	UISemaphore.ucSysAreaSem = 0xff;
	UISemaphore.ucDisAreaSem = 0xff;
	UISemaphore.ucKeyAreaSem = 0xff;
	UISemaphore.ucExamAreaSem= 0xff;
	UISemaphore.ucReserved[0]= 0xff;
	UISemaphore.ucReserved[1]= 0xff;
	UISemaphore.ucReserved[2]= 0xff;
	UISemaphore.ucReserved[3]= 0xff;
//Initialize Dual Port Ram
	ucTmp=0;
	while(1)
	{
		UISemaphore.ucExamAreaSem = 0x00;				//request semaphore
		if( UISemaphore.ucExamAreaSem == 0x00)
		{
			UIDataArea.Exam_Buffer.ExamDirtyFlag	= 0;
			UIDataArea.Exam_Buffer.ConnectFlag		= 0;
			UIDataArea.Exam_Buffer.Current[0]		= 0;
			UIDataArea.Exam_Buffer.Current[1]		= 0;
			UIDataArea.Exam_Buffer.ExciterLevel[0]	= 0;
			UIDataArea.Exam_Buffer.ExciterLevel[1]	= 0;
			UIDataArea.Exam_Buffer.TravelPow		= 0;
			UIDataArea.Exam_Buffer.ReflectPow		= 0;
			UIDataArea.Exam_Buffer.AmpTemp			= 0;
			UIDataArea.Exam_Buffer.RxTemp			= 0;
			UIDataArea.Exam_Buffer.TxTemp			= 0;
			UIDataArea.Exam_Buffer.RXIF_LOCK		= 0;
			UIDataArea.Exam_Buffer.RXRF_LOCK		= 0;
			UIDataArea.Exam_Buffer.TXIF_LOCK		= 0;
			UIDataArea.Exam_Buffer.TXRF_LOCK		= 0;
			UISemaphore.ucExamAreaSem = 0xff;				//releast semaphore
			SetCursorPos(32);
			DisplayChar('.');
			break;
		}
		else
		{
			UISemaphore.ucExamAreaSem = 0xff;				//releast semaphore
			if( ++ucTmp == 0)
			{//MEMORY TEST FAILURE!
				DisplayRom(ucRamErrorTitle1);
			}
			else
			{
				DelayTime(20);		//delay 20ms
			}
		}
	}

	ucTmp=0;
	while(1)
	{
		UISemaphore.ucKeyAreaSem	= 0x00;					//request semaphore
		if(UISemaphore.ucKeyAreaSem == 0)
		{
			UIDataArea.KeyBuffer.KeyValue	= 0x00;
			UISemaphore.ucKeyAreaSem	= 0xff;				//release semaphore
			SetCursorPos(33);
			DisplayChar('.');
			break;
		}
		else
		{
			UISemaphore.ucKeyAreaSem	= 0xff;				//release semaphore
			if( ++ucTmp == 0)
			{//MEMORY TEST FAILURE!
				DisplayRom(ucRamErrorTitle2);
			}
			else
			{
				DelayTime(20);		//delay 20ms
			}
		}
	}

	ucTmp=0;
	while(1)
	{
		UISemaphore.ucDisAreaSem	= 0x00;					//request semaphore
		if(UISemaphore.ucDisAreaSem == 0)
		{
			UIDataArea.DisBuffer.DisParaDirtyFlag = 0x00;
			UISemaphore.ucDisAreaSem	= 0xff;				//release semaphore
			SetCursorPos(34);
			DisplayChar('.');
			break;
		}
		else
		{
			UISemaphore.ucDisAreaSem	= 0xff;				//release semaphore
			if( ++ucTmp == 0)
			{//MEMORY TEST FAILURE!
				DisplayRom(ucRamErrorTitle3);
			}
			else
			{
				DelayTime(20);		//delay 20ms
			}
		}
	}

	ucTmp=0;
	while(1)
	{
		UISemaphore.ucSysAreaSem	= 0x00;					//request semaphore
		if(UISemaphore.ucSysAreaSem == 0)
		{
			UIDataArea.SysPara.ucAction_Flag		= 0x00;
			UIDataArea.SysPara.ucSysparaDirtyFlag	= 0x00;
			UISemaphore.ucSysAreaSem	= 0xff;				//release semaphore
			SetCursorPos(35);
			DisplayChar('.');
			break;
		}
		else
		{
			UISemaphore.ucSysAreaSem	= 0xff;				//release semaphore
			if( ++ucTmp == 0)
			{//MEMORY TEST FAILURE!
				DisplayRom(ucRamErrorTitle4);
			}
			else
			{
				DelayTime(20);		//delay 20ms
			}
		}
	}
//.............................................................................
	InitKeyboard();		//Initialize the variables used by keyboard functions
	InitSerial();		//Initialize the variables used by serial port functions
//Initialize finish,Waiting LINK LAYER longin

	DisplayRom(ucInitTitle);
	SetCursorPos(32);
	DisplayChar('.');
	DisplayChar('.');
	DisplayChar('.');
	DisplayChar('.');
	DisplayChar('.');
	DisplayChar('.');
	SetCursorPos(0);

	while(1)
	{
		UISemaphore.ucSysAreaSem	= 0x00;				//request semaphore
		if(UISemaphore.ucSysAreaSem == 0)
		{//Request successful
			if( (UIDataArea.SysPara.ucAction_Flag!=0) && (UIDataArea.SysPara.ucSysparaDirtyFlag!=0) )
			{
				GetSysPara();
				UIDataArea.SysPara.ucSysparaDirtyFlag	= 0x00;
				break;
			}
		}
		UISemaphore.ucSysAreaSem	= 0xff;				//release semaphore
		DelayTime(10);
	}
	UISemaphore.ucSysAreaSem	= 0xff;					//release semaphore


///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////


	TMOD	= 0x21;
	T2CON	= 0x00;
	SCON	= 0x50;	//Enable receive
	TL0		= 0x00;
	TH0		= 0x00;
	TL1		= 0xFD;	//SERIAL IO BAUD RATE=9600bps(SYSTEM CLOCK=11.0592MHz)
	TH1		= 0xFD;
	TI		= 0;
	TR0		= 1;
	TR1		= 1;
	TR2		= 1;
	ET0		= 1;
	ET2		= 1;
	ES		= 1;
	EA		= 1;
//=========================================================================//
//                                MainLoop                                 //
//=========================================================================//
	while(1)
	{
//..........................................................................System parameter
		UISemaphore.ucSysAreaSem	= 0x00;				//request semaphore
		if(UISemaphore.ucSysAreaSem == 0)
		{//Request successful
			if( UIDataArea.SysPara.ucSysparaDirtyFlag!=0 )
			{
				GetSysPara();
				UIDataArea.SysPara.ucSysparaDirtyFlag	= 0x00;
			}
		}
		UISemaphore.ucSysAreaSem	= 0xff;				//release semaphore

		ProcSerial();					//.................process received data
//..........................................................................display buffer
		UISemaphore.ucDisAreaSem	= 0x00;				//request semaphore
		if(UISemaphore.ucDisAreaSem == 0)
		{
			if( UIDataArea.DisBuffer.DisParaDirtyFlag == 1)
			{
				DisplayEx();
				UIDataArea.DisBuffer.DisParaDirtyFlag = 0x00;
				UISemaphore.ucDisAreaSem	= 0xff;		//release semaphore
			}
		}
		UISemaphore.ucDisAreaSem	= 0xff;				//release semaphore

		ProcSerial();					//.................process received data
//..........................................................................key buffer
		if( IsKeyBufEmpty() != 0)
		{//Key buffer not empty

			UISemaphore.ucKeyAreaSem	= 0x00;				//request semaphore
			if(UISemaphore.ucKeyAreaSem == 0)
			{
				if( UIDataArea.KeyBuffer.KeyValue == 0)
				{//按鍵已經取走,可以放下一個鍵
					UIDataArea.KeyBuffer.KeyValue	= GetKey();
				}
			}
			UISemaphore.ucKeyAreaSem	= 0xff;				//release semaphore
		}

		ProcSerial();					//.................process received data

	}
}


///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一本色道a无线码一区v| 99精品黄色片免费大全| 成人丝袜视频网| 欧美三级在线视频| 久久精品人人爽人人爽| 亚洲第一主播视频| 成人精品鲁一区一区二区| 欧美日韩电影在线播放| 国产精品美女久久久久久2018| 首页欧美精品中文字幕| 91在线你懂得| 久久久国产精品午夜一区ai换脸| 亚洲与欧洲av电影| 99久久综合色| 中文字幕高清不卡| 韩国成人精品a∨在线观看| 欧美videos大乳护士334| 欧美一区二区三区在线电影| 精品av久久707| 亚洲欧美精品午睡沙发| 日韩专区一卡二卡| 亚洲图片欧美激情| 欧美精品777| 欧美r级在线观看| 丝袜美腿亚洲一区| 韩国女主播成人在线| 制服丝袜国产精品| 亚洲福利视频导航| 欧美一a一片一级一片| 综合色中文字幕| www.久久久久久久久| 国产午夜三级一区二区三| 精品亚洲aⅴ乱码一区二区三区| 91精品国产免费| 91在线视频免费观看| 成人h精品动漫一区二区三区| 色婷婷精品大在线视频| 亚洲视频中文字幕| 色综合欧美在线| 一区二区不卡在线播放| 欧美日本精品一区二区三区| 夜夜精品浪潮av一区二区三区| 91美女在线观看| 亚洲一区二区三区中文字幕 | 91精品国产色综合久久ai换脸| 亚洲福利一区二区三区| 欧美性大战xxxxx久久久| 亚洲成人免费在线| 日韩午夜激情av| 国产一区二区0| 一区在线中文字幕| 在线观看欧美日本| 91精品福利视频| 亚洲综合丝袜美腿| 国模大尺度一区二区三区| 成人性生交大合| 亚洲欧美综合另类在线卡通| 日本久久电影网| 日韩中文欧美在线| 久久人人超碰精品| 91蜜桃在线观看| 蜜臀久久久久久久| 国产精品欧美综合在线| 色哟哟日韩精品| 日本不卡123| 国产成人在线电影| 亚洲激情欧美激情| 日韩免费观看高清完整版| 国产大片一区二区| 一区二区三区不卡视频 | 欧美乱妇15p| 狠狠狠色丁香婷婷综合久久五月| 亚洲国产激情av| 欧美日本乱大交xxxxx| 国内精品免费**视频| 亚洲乱码中文字幕| 精品999在线播放| 日本精品一区二区三区四区的功能| 蜜芽一区二区三区| 亚洲女子a中天字幕| 欧美成va人片在线观看| 色综合久久66| 激情图区综合网| 夜色激情一区二区| 欧美极品少妇xxxxⅹ高跟鞋 | 色综合色综合色综合色综合色综合 | 97久久人人超碰| 美女高潮久久久| 一区二区三区四区视频精品免费| 日韩欧美国产不卡| 欧洲国内综合视频| 成人精品国产一区二区4080| 日本va欧美va精品| 亚洲国产精品久久艾草纯爱 | 成人h精品动漫一区二区三区| 视频一区二区欧美| 亚洲黄一区二区三区| 26uuu精品一区二区在线观看| 欧美无砖专区一中文字| 成人国产视频在线观看| 国产一区二区三区四区五区入口 | 亚洲精选视频在线| 国产精品乱人伦一区二区| 精品av综合导航| 日韩欧美黄色影院| 欧美精品自拍偷拍动漫精品| 一本色道久久综合亚洲aⅴ蜜桃| 高清国产午夜精品久久久久久| 免费观看在线综合色| 亚洲一区免费在线观看| 一区二区三区美女| 亚洲欧美日本在线| 亚洲欧美视频在线观看| 亚洲少妇最新在线视频| 一区在线观看视频| 亚洲免费观看视频| 亚洲女与黑人做爰| 一区二区成人在线观看| 一区二区三区中文在线| 亚洲黄色小说网站| 亚洲欧美另类图片小说| 亚洲欧美色一区| 亚洲一卡二卡三卡四卡无卡久久| 亚洲女同女同女同女同女同69| 亚洲天堂精品在线观看| 亚洲视频精选在线| 亚洲成人av福利| 日韩中文字幕一区二区三区| 日韩经典中文字幕一区| 美腿丝袜亚洲综合| 国产精品自拍av| 成人美女视频在线观看18| 99久久精品免费看国产| 91在线观看污| 欧美二区三区91| 91精品久久久久久久99蜜桃| 欧美成人a视频| 欧美激情一区二区三区蜜桃视频| 中文字幕亚洲不卡| 亚洲成人激情社区| 免费在线观看一区| 国产不卡视频一区二区三区| 99热精品国产| 日韩亚洲欧美一区二区三区| 久久免费视频一区| ...av二区三区久久精品| 亚洲成人动漫精品| 久久国产免费看| 白白色亚洲国产精品| 欧美日韩视频不卡| 2024国产精品视频| 亚洲精品ww久久久久久p站 | 伊人色综合久久天天人手人婷| 午夜av一区二区| 国产一区二区91| 在线看日本不卡| 26uuu精品一区二区三区四区在线| 亚洲图片你懂的| 经典三级视频一区| 91蝌蚪国产九色| 欧美成人vr18sexvr| 亚洲精品久久久蜜桃| 久久97超碰国产精品超碰| 91视频在线看| 精品免费99久久| 樱桃视频在线观看一区| 精品一区二区三区日韩| 色美美综合视频| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 欧美日韩精品专区| 欧美国产丝袜视频| 久久成人免费网| 欧美午夜精品久久久久久孕妇 | 亚洲国产成人精品视频| 一区二区三区国产精品| 亚洲精品伦理在线| 国产精品卡一卡二| 精品国产露脸精彩对白| 91精品国产麻豆国产自产在线| 97精品视频在线观看自产线路二| 韩国精品主播一区二区在线观看| 亚洲一区中文日韩| 亚洲天天做日日做天天谢日日欢| 久久综合久色欧美综合狠狠| 91蜜桃免费观看视频| 91浏览器在线视频| 99视频一区二区| 丁香六月综合激情| 成人黄色一级视频| 亚洲大片精品永久免费| 91精品国产91综合久久蜜臀| 欧美日韩1234| 精品乱码亚洲一区二区不卡| 日韩一区二区高清| 日韩亚洲欧美综合| 免费成人深夜小野草| 在线播放亚洲一区| 亚洲亚洲精品在线观看| 色哟哟精品一区| 国产精品国产成人国产三级|