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

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

?? zlg85c30init.c

?? z85c30 DRIVER RUN ON PC104 PC AND VXWORKS SYSTERM.
?? C
字號:
#include "vxWorks.h"
#include "tyLib.h"
#include "logLib.h"
#include "Zlg85C30.h"
#include "stdio.h"

LOCAL void UsrPortParamsInit(void);
extern int  ComIntInit(int iPortNo,int dataport,unsigned long lBautrate,unsigned char intLevel);
struct PortSetTable portconfig[ComMaxUnit];

LOCAL int testPortMaxUnit=ComMaxUnit;
LOCAL int UsrPortTestRun=0;
LOCAL int RecvTaskId;
int UsrPortTestMode=0;

//struct SysCmdFormat_T usrPortParams[ComMaxUnit];

void UsrPortConfigInitDefault(void)
{
/*	
	char portName[10];
	int  unit;
	int  commandport;
	int  dataport;
	int  sync_async;  *==0:async; 1:sync ==*
	int  baudRate;
	int  clockType;   *==0:DPLL; 1:Iclock; 2:Oclock ==*
	int  stopBit;
	int  dataBit;
	int  checktype;   *==0:None; 1:ODD; 2:EVEN ==*
	int  intLevel;

	int  intNum;
	int  RevByteNum;
	int  SendByteNum;
*/
	int ifor1=0;

	//usrPortParams=(unsigned char *)malloc(sizeof(struct SysCmdFormat_T)*ComMaxUnit);
	for(ifor1=0;ifor1<ComMaxUnit;ifor1++)
	{
		if((ifor1+1)<10)
			sprintf(portconfig[ifor1].portName,"com0%d",ifor1+1);
		else
			sprintf(portconfig[ifor1].portName,"com%d",ifor1+1);
		portconfig[ifor1].unit=ifor1;
		portconfig[ifor1].open=0;
		portconfig[ifor1].sync_async=-1;
		portconfig[ifor1].baudRate=9600;
		portconfig[ifor1].clockType=1;
		portconfig[ifor1].stopBit=1;
		portconfig[ifor1].dataBit=8;
		portconfig[ifor1].checktype=0;
		portconfig[ifor1].flag=(Flag_Send_Enable | Flag_Rcev_Enable);
		portconfig[ifor1].intNum=0;
		portconfig[ifor1].RevByteNum=0;
		portconfig[ifor1].SendByteNum=0;
		portconfig[ifor1].RevFrameNum=0;
		portconfig[ifor1].SendFrameNum=0;
		portconfig[ifor1].RevFrameErrorNum=0;
//		portconfig[ifor1].pintVectorStatic=0;
	}


	portconfig[0].commandport=com1_commandport;
	portconfig[1].commandport=com2_commandport;
	portconfig[2].commandport=com3_commandport;
	portconfig[3].commandport=com4_commandport;
	portconfig[4].commandport=com5_commandport;
	portconfig[5].commandport=com6_commandport;
	portconfig[6].commandport=com7_commandport;
	portconfig[7].commandport=com8_commandport;
	portconfig[8].commandport=com9_commandport;
	portconfig[9].commandport=com10_commandport;
	portconfig[10].commandport=com11_commandport;
	portconfig[11].commandport=com12_commandport;

	portconfig[0].dataport=com1_dataport;
	portconfig[1].dataport=com2_dataport;
	portconfig[2].dataport=com3_dataport;
	portconfig[3].dataport=com4_dataport;
	portconfig[4].dataport=com5_dataport;
	portconfig[5].dataport=com6_dataport;
	portconfig[6].dataport=com7_dataport;
	portconfig[7].dataport=com8_dataport;
	portconfig[8].dataport=com9_dataport;
	portconfig[9].dataport=com10_dataport;
	portconfig[10].dataport=com11_dataport;
	portconfig[11].dataport=com12_dataport;
	portconfig[12].dataport=com13_dataport;
	portconfig[13].dataport=com14_dataport;

	portconfig[0].intLevel=5;
	portconfig[1].intLevel=5;
	portconfig[2].intLevel=7;
	portconfig[3].intLevel=7;
	portconfig[4].intLevel=9;
	portconfig[5].intLevel=9;
	portconfig[6].intLevel=10;
	portconfig[7].intLevel=10;
	portconfig[8].intLevel=11;
	portconfig[9].intLevel=11;
	portconfig[10].intLevel=6;
	portconfig[11].intLevel=6;
	portconfig[12].intLevel=4;
	portconfig[13].intLevel=3;

}

/*void ComChanInit(void)
{
	int iPortNo=0;
	for(iPortNo=0;iPortNo<ComMaxUnit;iPortNo++)
	{
		dataAddr[iPortNo]=portconfig[iPortNo].dataport;
		commandAddr[iPortNo]=portconfig[iPortNo].commandport;
	}
}*/

void UsrPortShow(void)
{
	int ifor1=0;
	char str[][10]={"index", "s/a", "Clk", "bps", "int", /*"intNum", */"RBNum", "SBNum", "F","RFrame","SFrame","CRCErro"};

	printf("%s %-3s %-3s %-6s %-3s %-8s %-8s %-2s %-8s %-8s %s\n",str[0],str[1],str[2],str[3],str[4],str[5],str[6],str[7],str[8],str[9],str[10]/*,str[11]*/);
	for(ifor1=0;ifor1<ComMaxUnit;ifor1++)
	{
		printf("%s",portconfig[ifor1].portName);
		printf(" %-3d",portconfig[ifor1].sync_async);
		printf(" %-3d",portconfig[ifor1].clockType);
		printf(" %-6d",portconfig[ifor1].baudRate);
		printf(" %-3d",portconfig[ifor1].intLevel);
		//printf(" %-6d",portconfig[ifor1].intNum);
		printf(" %-8d",portconfig[ifor1].RevByteNum);
		printf(" %-8d",portconfig[ifor1].SendByteNum);		
		printf(" %-2d",portsending[ifor1]);	
		printf(" %-8d",portconfig[ifor1].RevFrameNum);
		printf(" %-8d",portconfig[ifor1].SendFrameNum);		
		printf(" %-8d\n",portconfig[ifor1].RevFrameErrorNum);		
	}
}
/*
void UsrPortIntShow(int iPortNo)
{
	int ifor1=0;
	if(iPortNo>ComMaxUnit)return;
	printf("[UsrPort Debug] %dcom Store Intrrupt Vector Static %d:\n",iPortNo,portconfig[iPortNo].pintVectorStatic);
	for(ifor1=0;ifor1<portconfig[iPortNo].pintVectorStatic;ifor1++)
		printf("%3X",portconfig[iPortNo].intVectorStatic[ifor1]);
	printf("\n");
}
void UsrPortIntClear(int iPortNo)
{
	if(iPortNo>ComMaxUnit)return;
	portconfig[iPortNo].pintVectorStatic=0;
}
void UsrPortIntDebug(int iPortNo)
{
	int ifor1=0;
	for(ifor1=0;ifor1<3;)
	{
		if(comwrite(iPortNo,"1234567890",10)==10)ifor1++;
	}
	taskDelay(10);
	UsrPortIntShow(iPortNo);
	/ *UsrPortIntClear(iPortNo);* /
}*/
/********************************************
*
*
*
*********************************************/
LOCAL void UsrPortLoadConfigFile(int filestordev)
{
//	memset(usrPortParams,0,sizeof(usrPortParams));
	if(filestordev>=0)
	{		
		sys_readsysini(filestordev,"portconfig.txt");
	}
	UsrPortParamsInit();
}
/********************************************
*
struct PortSetTable
{
	char portName[10];
	int  unit;
	int  commandport;
	int  dataport;
	int  sync_async;//0:async; 1:sync
	//int  dltype;
	unsigned long baudRate;
	int  clockType; //0:DPLL; 1:Iclock; 2:Oclock;
	int  stopBit;
	int  dataBit;
	int  checktype; //0:None; 1:ODD; 2:EVEN
	unsigned char  intLevel;

	unsigned int  intNum;
	unsigned int  RevByteNum;
	unsigned int  RevFrameNum;
	unsigned int  SendByteNum;
	unsigned int  SendFrameNum;
	unsigned int  RevFrameErrorNum;
	int  open;

	unsigned char intVectorStatic[ComMaxData];
	unsigned int  pintVectorStatic;
};
*/
LOCAL void UsrPortParamsInit(void)
{
	int ifor2=0;
	int iPortNo=-1;
	struct SysParams_Table *temp;
	temp=sysParamsTable;

	while (temp!=NULL)
	{
		if(strlen(temp->cmd.Cmdname)<4) goto Jump;
		if(strncmp(temp->cmd.Cmdname,"COM",3)!=0) goto Jump;
		iPortNo=atoi(&temp->cmd.Cmdname[3])-1;
		if(iPortNo<0) goto Jump;
		if(iPortNo>=ComMaxUnit) goto Jump;

		for(ifor2=0;ifor2<Max_SysParams_Para_Unit;ifor2++)
		{
			if(strlen(temp->cmd.Para[ifor2].ParaName)<=0)break;
			if(strcmp(temp->cmd.Para[ifor2].ParaName,"mode")==0)
			{
				if(strcmp(temp->cmd.Para[ifor2].ParaValue,"sync")==0)
					portconfig[iPortNo].sync_async=1;
				else portconfig[iPortNo].sync_async=0;
			}
			else if(strcmp(temp->cmd.Para[ifor2].ParaName,"clocktype")==0)
			{
				if(strcmp(temp->cmd.Para[ifor2].ParaValue,"i")==0)
					portconfig[iPortNo].clockType=1;
				else if(strcmp(temp->cmd.Para[ifor2].ParaValue,"o")==0)
					portconfig[iPortNo].clockType=2;
				else
					portconfig[iPortNo].clockType=0;			
			}
			else if(strcmp(temp->cmd.Para[ifor2].ParaName,"baudrate")==0)
			{
				portconfig[iPortNo].baudRate=atoi(temp->cmd.Para[ifor2].ParaValue);
			}
			/*else if(strcmp(usrPortParams[ifor1].Para[ifor2].ParaName,"protocol")==0)
			{}
			else if(strcmp(usrPortParams[ifor1].Para[ifor2].ParaName,"adfTB")==0)
			{}
			else if(strcmp(usrPortParams[ifor1].Para[ifor2].ParaName,"adfSB")==0)
			{}*/
		}
Jump:		
		temp=temp->next;
	}
}

/*************************************************************
*
*
*
*/
void UsrPortInitial(void)
{
	int ifor1;
	printf("Zlg85C30 Port Initial :");
	UsrPortConfigInitDefault();

/****************************** Add read inifile to set parames */
	UsrPortLoadConfigFile(1);

/********* Open Zlg85C30 Serial Port *************/

	for(ifor1=0;ifor1<ComMaxUnit-2;ifor1++)
	{
		if(portconfig[ifor1].sync_async==-1)continue;
		if(portconfig[ifor1].open==1)continue;
		if(!(ifor1%2))
		{
			printf("hardreset port=%d %d\n",ifor1,ifor1+1);
			sysOutByte(portconfig[ifor1+1].commandport,0x09);
			sysOutByte(portconfig[ifor1+1].commandport,0xc0);        
		}
		if(portconfig[ifor1].sync_async==1)
			com_syncInitial(ifor1,portconfig[ifor1].commandport,portconfig[ifor1].dataport
							,portconfig[ifor1].baudRate,portconfig[ifor1].clockType);
		else
			com_asyncInitial(ifor1,portconfig[ifor1].commandport,portconfig[ifor1].dataport
							,portconfig[ifor1].baudRate);
		if(ifor1%2)
		{
			if(com_intConnect(ifor1,portconfig[ifor1].intLevel)==ERROR)
			{
				printf("intConnect %d error!!!!!!!!!!!!!!!!!!!\n",portconfig[ifor1].intLevel);
				continue;
			}
		}
		portconfig[ifor1].open=1;
	}
	if(portconfig[ifor1].sync_async!=-1)
	{
		ComIntInit(ifor1,portconfig[ifor1].dataport,portconfig[ifor1].baudRate,portconfig[ifor1].intLevel);
		portconfig[ifor1].open=1;
	}
	ifor1++;
	if(portconfig[ifor1].sync_async!=-1)
	{
		ComIntInit(ifor1,portconfig[ifor1].dataport,portconfig[ifor1].baudRate,portconfig[ifor1].intLevel);
		portconfig[ifor1].open=1;
	}

	taskDelay(3000);
}
/**********************************************************
*
*
*
***********************************************************/
void UsrPortTestTask(int type)
{
	int ifor1=0,ifor2=0;
	unsigned char buf[1000];
	int  buflen=0;
	char *sbuf="oooooooooKoooooooooKoooooooooKoooooooooKoooooooooKoooooooooKoooooooooKoooooooooKoooooooooKoooooooK\n";
	unsigned int n=0;
	FOREVER
	{
		for(ifor1=0;ifor1<testPortMaxUnit;ifor1++)
		{
			if(portconfig[ifor1].sync_async==-1)continue;
			if(portconfig[ifor1].open==0)continue;
			memset(buf,0,sizeof(buf));
			buflen=comread(ifor1,buf,1000,NO_WAIT);
			//if(ifor1==0)printf("%s",buf);

			if(!UsrPortTestRun)continue;
			if(type==1)
			{
				comwrite(ifor1,sbuf,strlen(sbuf));
			}
			else
			{
				if(buflen>0)
				{
					if(comwrite(ifor1,buf,buflen)!=buflen)printf("flow!\n");
				}
			}
		}

		if(n%3)
			taskDelay(500);
		n++;
	}
}


STATUS UsrPortTest(int type,int num)
{
	if(num==0)num=ComMaxUnit;
	if(num>ComMaxUnit||num<1)
	{
		printf("num need in<1 -- 10>\n");
		return ERROR;
	}
	testPortMaxUnit=num;
	UsrPortTestRun=1;
	UsrPortTestMode=type;
	/*test_port(6);*/
	if((RecvTaskId=taskSpawn("portTest",200,0,60000,(FUNCPTR)UsrPortTestTask,UsrPortTestMode,0,0,0,0,0,0,0,0,0))==ERROR)
	{
		UsrPortTestRun=0;
		printf("portTest task cannot be create.");
		return ERROR;
	}
	return OK;
}

void UsrPortStop(void)
{
	UsrPortTestRun=0;
}
void UsrPortRun(void)
{
	UsrPortTestRun=1;
}

void test_port(unsigned int d)
{
	sysOutByte(0x2d0,0xc);
	sysOutByte(0x2d0,d);
	sysOutByte(0x2d0,0xc);
	printf("WR12= %d\n",sysInByte(0x2d0));
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
岛国精品在线观看| 7777精品伊人久久久大香线蕉超级流畅 | 亚洲一区二区高清| 国产伦精品一区二区三区在线观看| www.亚洲精品| 久久综合资源网| 亚洲主播在线播放| 成人午夜av电影| 日韩精品一区二区三区蜜臀 | 肉色丝袜一区二区| 成人av综合一区| 精品人在线二区三区| 午夜久久久久久久久久一区二区| 成人免费视频网站在线观看| 91精选在线观看| 亚洲香肠在线观看| 97se亚洲国产综合在线| 国产视频一区在线观看 | 一区二区三区欧美在线观看| 国产精品一区二区在线观看网站 | 久久国产综合精品| 欧美电影一区二区| 亚洲国产综合色| 91免费在线看| 亚洲色图另类专区| 99re这里只有精品首页| 中文字幕av一区 二区| 国产精品一区二区在线看| 精品国产乱码久久久久久久| 午夜精品一区在线观看| 欧美亚洲综合一区| 亚洲图片欧美综合| 欧美日韩精品高清| 天天免费综合色| 欧美日韩一区二区在线观看视频| 一区二区高清视频在线观看| 91美女视频网站| 亚洲美女免费在线| 一本到高清视频免费精品| 亚洲欧美在线aaa| av电影在线观看一区| 亚洲四区在线观看| 在线亚洲精品福利网址导航| 一区二区三区四区亚洲| 欧美色网一区二区| 视频一区二区三区在线| 精品国产一区二区三区久久影院 | 欧美午夜在线观看| 亚洲1区2区3区4区| 精品美女一区二区三区| 国产在线精品一区二区夜色 | 久久综合资源网| 床上的激情91.| 亚洲欧洲性图库| 91在线无精精品入口| 亚洲国产视频在线| 精品成人私密视频| 972aa.com艺术欧美| 午夜精品久久久| 日韩欧美国产三级| 99天天综合性| 婷婷亚洲久悠悠色悠在线播放| 日韩亚洲国产中文字幕欧美| 国产精品 欧美精品| 1024精品合集| 欧美二区三区91| 成人97人人超碰人人99| 日韩国产欧美在线视频| 国产欧美一区二区精品久导航 | 亚洲综合免费观看高清在线观看| 91精品黄色片免费大全| 岛国精品在线观看| 亚洲bt欧美bt精品| 国产精品成人免费精品自在线观看| 欧美久久久久中文字幕| 国产精品一区二区三区四区| 亚洲一线二线三线视频| 久久久国产一区二区三区四区小说| 91香蕉视频在线| 国产一区二区剧情av在线| 亚洲综合一区二区精品导航| 久久久久久久久岛国免费| 色综合久久88色综合天天| 玖玖九九国产精品| 亚洲123区在线观看| 亚洲欧洲www| 日韩一区二区三区视频| 99精品视频免费在线观看| 精品一区二区在线观看| 亚洲美女屁股眼交3| 国产亚洲精品bt天堂精选| 欧美精品一卡两卡| 色综合久久久久综合| 国产毛片精品视频| 日韩二区三区在线观看| 亚洲免费在线看| 国产精品免费久久久久| 国产喂奶挤奶一区二区三区 | 在线观看亚洲精品| 成人h动漫精品一区二| 国产精品综合一区二区| 久久se这里有精品| 全国精品久久少妇| 日日夜夜精品免费视频| 一区二区三区在线免费| 亚洲人123区| 亚洲视频你懂的| 综合电影一区二区三区 | 丝袜亚洲另类欧美| 亚洲一区自拍偷拍| 亚洲资源在线观看| 亚洲国产乱码最新视频| 亚洲丰满少妇videoshd| 天天综合网 天天综合色| 亚洲国产视频一区二区| 亚洲午夜日本在线观看| 亚洲va国产天堂va久久en| 亚洲一区二区三区四区在线| 亚洲女女做受ⅹxx高潮| 亚洲欧美日韩精品久久久久| 亚洲视频资源在线| 亚洲国产欧美一区二区三区丁香婷| 一区二区在线观看免费| 亚洲午夜久久久久久久久电影院| 亚洲欧美视频在线观看| 亚洲国产乱码最新视频| 午夜久久久影院| 蜜臀久久99精品久久久画质超高清| 蜜桃视频一区二区| 国产一区二区0| 成人激情视频网站| 在线精品视频一区二区三四| 欧美三级在线视频| 日韩一二三区视频| 久久九九全国免费| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 中文字幕在线一区二区三区| 亚洲女爱视频在线| 亚洲国产精品久久人人爱蜜臀| 调教+趴+乳夹+国产+精品| 久久激五月天综合精品| 成人久久久精品乱码一区二区三区| 色诱视频网站一区| 欧美精品久久天天躁| 在线视频国内一区二区| 日韩久久久久久| 最新成人av在线| 偷拍一区二区三区| 国产大片一区二区| 欧美视频在线一区| 久久男人中文字幕资源站| 国产精品福利av| 日本最新不卡在线| 大白屁股一区二区视频| 欧美日韩国产中文| 中文av一区二区| 亚洲成a人片在线不卡一二三区 | 欧美草草影院在线视频| 国产精品女同一区二区三区| 日韩国产欧美三级| 99久久精品国产一区二区三区 | 欧美日韩免费电影| 久久久久久一级片| 亚洲国产aⅴ成人精品无吗| 国产iv一区二区三区| 8x8x8国产精品| 亚洲欧美日韩一区二区三区在线观看| 欧美aaa在线| 91福利在线导航| 国产精品系列在线| 精品一区二区免费视频| 色噜噜狠狠色综合欧洲selulu| 久久亚洲二区三区| 日韩成人精品视频| 欧美优质美女网站| 日本一区二区三区国色天香| 三级久久三级久久久| 在线视频一区二区免费| 国产精品久久久久一区| 国产一区二区伦理| 日韩欧美二区三区| 日本不卡不码高清免费观看| 欧美性猛交xxxx黑人交| 亚洲欧美区自拍先锋| 福利视频网站一区二区三区| 精品国产髙清在线看国产毛片 | 亚洲一区日韩精品中文字幕| 丁香婷婷综合激情五月色| 日韩情涩欧美日韩视频| 欧美aⅴ一区二区三区视频| 91.xcao| 亚洲动漫第一页| 色www精品视频在线观看| 亚洲欧美日韩国产综合| 99国产精品久久久久久久久久| 国产精品国产自产拍高清av| 福利一区福利二区| 国产精品久久久久影视| 成人免费高清在线观看| 国产精品久久久久久久久快鸭|