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

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

?? rstofbb.c

?? 一個(gè)C語言寫的讀入位置跟蹤器數(shù)據(jù)的源程序
?? C
?? 第 1 頁 / 共 2 頁
字號:

    Prototype in:       rstofbb.h

    Parameters Passed:  startaddrptr - pointer to the start address
			stopaddrptr - pointer to the stop address
				      If stopaddrptr == NULL then
				      the routine only gets the destination
				      address

    Return Value:       TRUE (always)

    Remarks:            Prompts the User for the start and stop address

*/
int getfbbdestaddress(startaddrptr,stopaddrptr)
unsigned char * startaddrptr;
unsigned char * stopaddrptr;
{
    short tempstartaddr;
    short tempstopaddr;
    short illegaladdr = FALSE;

    /*
	Use the System Status to determine if address the user selects
	is avaible
    */
    if (!getsystemstatus())
	return(FALSE);

    do
    {
	if (stopaddrptr != NULL)
	{
	    /*
	       If the user goes to this menu first, reset the illegal
	       address in the startaddress location
	    */
	    if (*startaddrptr > 30)
		*startaddrptr = 1;
	    printf("\n\rCurrent Start Destination Address is %d\n\r",*startaddrptr);
	    printf("Enter the Start Destination Address (<ESC> for no change): ");
	}
	else
	{
	    printf("\n\rCurrent Destination Address is %d\n\r",*startaddrptr);
	    printf("Enter the new Destination Address (<ESC> for no change): ");

	}

	if ((tempstartaddr = getnumber()) != ESC_SEL)
	{
	    if ((tempstartaddr < 0) || (tempstartaddr > numfbbaddrs))
	    {
		illegaladdr = TRUE;
		printf ("\n\r** ERROR ** illegal address\n\r");
	    }
	    else
	    {
		if (fbbsystemstatus[tempstartaddr] & 0x80)
		{
		    illegaladdr = FALSE;
		    *startaddrptr = tempstartaddr;
		}
		else
		{
		    illegaladdr = TRUE;
		    printf("\n\r** ERROR ** address selected is not accessible\n\r");
		}
	    }
	}
	else
	    break;
    }
    while (illegaladdr);

    /*
	Only get the Stop address info if stopaddrptr exists
    */
    if (stopaddrptr != NULL)
    {
	do
	{
	    printf("\n\r\n\rCurrent Stop Destination Address is %d\n\r",*stopaddrptr);
	    printf("Enter the Stop Destination Address (<ESC> for no change): ");
	    if ((tempstopaddr = getnumber()) != ESC_SEL)
	    {
		if ((tempstopaddr <= 0)
		   || (tempstopaddr > numfbbaddrs)
		   || (tempstopaddr < tempstartaddr))
		{
		    illegaladdr = TRUE;
		    printf ("\n\r** ERROR ** illegal address\n\r");
		}
		else
		{
		    if (fbbsystemstatus[tempstartaddr] & 0x80)
		    {
			illegaladdr = FALSE;
			*stopaddrptr = tempstopaddr;
		    }
		    else
		    {
			illegaladdr = TRUE;
			printf("\n\r** ERROR ** address selected is not accessible\n\r");
		    }
		}
	    }
	    else
		break;
	}
	while (illegaladdr);
    }
    return(TRUE);
}

/*
    seddatamode         Set the FBB Data Mode

    Prototype in:       rstofbb.h

    Parameters Passed:  startaddr - 1st address to set the data mode
			stopaddr - last address to set the data mode
			datamode - POS,ANGLE,MATRIX,etc

    Return Value:       TRUE if the datamode was set on all the Birds
			FALSE otherwise

    Remarks:            Sends the desired mode to all the Birds in the
			start - stop range
*/
int setdatamode(startaddr,stopaddr,datamode)
unsigned char startaddr;
unsigned char stopaddr;
unsigned char datamode;
{
    int addr;
    unsigned char posorientcmd;
    unsigned char temprs232tofbbaddr;

    /*
       Setup the command
    */
    switch(datamode)
    {
	case POS:
	    posorientcmd = 'V';
	    break;

	case ANGLE:
	    posorientcmd = 'W';
	    break;

	case MATRIX:
	    posorientcmd = 'X';
	    break;

	case QUATER:
	    posorientcmd = 92;
	    break;

	case POSANGLE:
	    posorientcmd = 'Y';
	    break;

	case POSMATRIX:
	    posorientcmd = 'Z';
	    break;

	case POSQUATER:
	    posorientcmd = ']';
	    break;

	default:
	    printf("\n\r** ERROR ** illegal data mode in setdatamode\n\r");
	    return(FALSE);
    }

    temprs232tofbbaddr = rs232tofbbaddr;

    for (addr = startaddr; addr <= stopaddr; addr++)
    {
	/*
	    Set the Address
	*/
	rs232tofbbaddr = addr;

	/*
	    Send the output position command
	*/
	if (send_serial_cmd(&posorientcmd,1) != 1)
	{
	    printf("\n\r** ERROR ** could not initialize Output Mode of Bird %d\n\r",addr);
	    rs232tofbbaddr = temprs232tofbbaddr;
	    return(FALSE);
	}
    }

    rs232tofbbaddr = temprs232tofbbaddr;
    return(TRUE);
}

/*
    displaymultidata    Display Data from Multiple Birds

    Prototype in:       rstofbb.h

    Parameters Passed:  datamode - POS,ANGLE,MATRIX,etc
			buttonmode - ON,OFF indicates the state of button
				     output
			displayon - TRUE,FALSE

    Return Value:

    Remarks:
*/
int displaymultidata(datamode, buttonmode, displayon, startaddr,stopaddr,
		     birddata, datafilestream)
unsigned char datamode;
short buttonmode;
unsigned char displayon;
unsigned char startaddr;
unsigned char stopaddr;
unsigned char * birddata;
FILE * datafilestream;
{
    unsigned char addr;
    short displaysize;

    for (addr = startaddr; addr <= stopaddr; addr++)
    {
	/*
	    Display the data only if the device has a receiver
	*/
	if (!(fbbsystemstatus[addr] & 0x20))
	    continue;

	/*
	    Get the current button value prior to displaying the data
	*/
	buttonvalue = multibuttonvalue[addr];
	displaysize = displaybirddata((short *)birddata,datamode,buttonmode,
				      displayon,addr,datafilestream);

	/*
	    compute the new birddata address for the next record
	*/
	birddata += displaysize * 2 + buttonmode;

	/*
	    If in Group Data Mode, increment past the address
	*/
	if (fbbgroupdataflg)
	    birddata += 1; /* increment the pointer */
    }
    return(TRUE);
}


/*
    getmaxrs232tofbbrate  Get the Maximum Data Rate for RS232 to FBB command

    Prototype in:       rstofbb.h

    Parameters Passed:  none
			(assumes the Flock in NOT IN GROUP MODE)

    Return Value:       TRUE if all goes well
			FALSE otherwise

    Remarks:            Only available to DOS since this module uses
			GETTICKS

			UNIX user can modify the code to call there system
			timer in order to keep track of real time

*/
int getmaxrs232tofbbrate()
{
#ifdef DOS
    static unsigned char startaddr = 1;
    static unsigned char stopaddr = 0;
    unsigned char datamode = 0;
    int testtime;
    long testcounter;
    unsigned long testtimeticks;
    unsigned long starttimeticks;
    unsigned long currenttimeticks;
    unsigned char birddata[25 * 30];

    static char * outputmodemenu[] = {"Select the Output Mode:",
				      "Return to Main Menu",
				      "Position",
				      "Angles",
				      "Matrix",
				      "Quaternions",
				      "Position and Angles",
				      "Position and Matrix",
				      "Position and Quaternions"};

    /*
	Ask the User what Data Mode they want
    */
    switch (sendmenu(outputmodemenu,8))
    {
	case ESC_SEL:
	case 0:
	     return(TRUE);

	case 1:
	     datamode = POS;
	     break;

	case 2:
	     datamode = ANGLE;
	     break;

	case 3:
	     datamode = MATRIX;
	     break;

	case 4:
	     datamode = QUATER;
	     break;

	case 5:
	     datamode = POSANGLE;
	     break;

	case 6:
	     datamode = POSMATRIX;
	     break;

	case 7:
	     datamode = POSQUATER;
	     break;
    }

    /*
	Get the desired addresses
	.. preload the stop address with the group size
    */
    if (stopaddr == 0)
       stopaddr = flocksize;
    getfbbdestaddress(&startaddr,&stopaddr);

    /*
	Set up all the Devices to the Correct Data Mode
    */
    if (setdatamode(startaddr, stopaddr, datamode))
    {
	if ((testtime = getsampletime()) == ESC_SEL)
	    return(FALSE);

	testtimeticks = (unsigned long)(testtime * (1000/TICK_MSECS));

	printf("\n\rTest Started...collecting data, please wait\n\r");
	putch(BEL);
	starttimeticks = GETTICKS;
	while ((currenttimeticks = GETTICKS) == starttimeticks);
	starttimeticks = currenttimeticks;

	testcounter = 0;

	while (((currenttimeticks = GETTICKS) - starttimeticks) < testtimeticks)
	{
	    if (!getmultirecords(POINT, OFF, datamode, startaddr, stopaddr, birddata))
	    {
		putch(BEL);
		printf ("\n\r** ERROR ** Test Aborted\n\r");
		hitkeycontinue();
		return(FALSE);
	    }
	    testcounter += 1;
	}

	/*
	    Indicate the Test Complete to the User
	*/
	putch(BEL);
	printf ("\n\rTest Complete !!\n\r");
	printf ("Sample birds %d through %d %ld times in %d seconds...\n\r"
		"yielding a maximum data rate of %6.2f samples/sec/Bird\n\r",
		 startaddr, stopaddr, testcounter, testtime,(float)testcounter/testtime);
    }

    hitkeycontinue();
    return(TRUE);

#endif
#ifdef UNIX
    return(FALSE);
#endif
}

/*
    getsampletime       Get the Sample Time (length of Time) from the User

    Prototype in:       rstofbb.h

    Parameters Passed:  void

    Return Value:       testtime as an integer

    Remarks:
*/
int getsampletime()
{
#ifdef UNIX
   printf("\n\r** NOTE ** mode not supported under UNIX\n\r");
   hitkeycontinue();
   return(TRUE);

#endif


#ifdef DOS
    int testtimeint;

    while(1)
    {
	printf("\n\rEnter the length of the test in seconds (10 to 100): ");

	if ((testtimeint = getnumber()) == ESC_SEL)
	    return(ESC_SEL);

	if ((testtimeint < 10) || (testtimeint > 100))
	{
	    printf("\n\r** ERROR ** illegal time\n\r");
	}
	else
	{
	    return(testtimeint);
	}
    }
#endif
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产欧美在线人成| 91蝌蚪porny| 欧美zozo另类异族| 久99久精品视频免费观看| 日韩三级av在线播放| 免费人成精品欧美精品| 欧美电影免费观看高清完整版| 免费成人在线观看视频| 精品国产乱码久久久久久久久| 加勒比av一区二区| 国产日韩欧美高清在线| 国产成a人亚洲| 亚洲免费观看高清完整版在线观看 | 午夜精品影院在线观看| 欧美丰满嫩嫩电影| 国产精品一品二品| 一区二区在线观看不卡| 欧美男男青年gay1069videost | 国产精品素人一区二区| 在线不卡免费欧美| 国产精品一级片在线观看| 亚洲精品久久嫩草网站秘色| 久久久久久亚洲综合影院红桃| 日韩欧美一级片| 高清在线不卡av| 奇米色777欧美一区二区| 中文字幕一区二区三区四区| 欧美一级二级在线观看| av在线不卡电影| 久久精品国产亚洲a| 亚洲一区在线看| 国产精品视频一区二区三区不卡| 欧美一级在线视频| 欧美午夜精品一区二区三区| 国产乱淫av一区二区三区| 天堂久久久久va久久久久| 亚洲视频一区在线| 国产精品理论在线观看| 久久亚洲精华国产精华液 | 高清成人在线观看| 美女视频免费一区| 日韩福利电影在线| 三级影片在线观看欧美日韩一区二区| 中文字幕精品综合| 国产欧美日韩在线| 国产亚洲一区二区三区四区 | 中文字幕在线播放不卡一区| 国产日韩精品一区二区三区| 欧美精品一区二区三区高清aⅴ| 5566中文字幕一区二区电影| 欧美福利电影网| 欧美疯狂性受xxxxx喷水图片| 欧美日韩精品欧美日韩精品| 欧美日高清视频| 欧美大胆一级视频| 亚洲国产高清aⅴ视频| **网站欧美大片在线观看| 一区二区三区在线不卡| 99久久综合国产精品| 成人黄色a**站在线观看| 99精品视频在线观看| 色88888久久久久久影院按摩| 欧洲av在线精品| 日韩小视频在线观看专区| 国产色一区二区| 亚洲一区在线电影| 国产一区二区三区国产| 91污在线观看| 亚洲精品一区二区三区影院| 亚洲乱码国产乱码精品精小说| 日日夜夜精品免费视频| 91玉足脚交白嫩脚丫在线播放| 日韩亚洲电影在线| 亚洲一区二区av在线| 成人手机电影网| 亚洲精品一区二区三区四区高清| 一区二区三区四区高清精品免费观看| 日韩成人免费看| 欧美日韩精品福利| 亚洲欧美福利一区二区| 风流少妇一区二区| 欧美sm极限捆绑bd| 蜜臀av国产精品久久久久 | 在线免费精品视频| 中文字幕在线一区| 国产成人免费xxxxxxxx| 久久久久久久久久久黄色| 美女视频网站黄色亚洲| 欧美情侣在线播放| 午夜视频在线观看一区二区三区| 色网综合在线观看| 一区二区欧美国产| 欧美在线观看一区| 亚洲国产精品久久人人爱蜜臀| 97精品国产97久久久久久久久久久久| 国产女同性恋一区二区| 成人免费三级在线| 亚洲视频精选在线| 欧美性欧美巨大黑白大战| 亚洲在线视频一区| 91精品久久久久久久99蜜桃| 日韩**一区毛片| 午夜精品在线看| 日韩视频永久免费| 国产aⅴ精品一区二区三区色成熟| 中文字幕乱码日本亚洲一区二区 | 91精品国产综合久久精品性色| 亚洲成人激情av| 日韩精品一区二区三区视频| 国产69精品一区二区亚洲孕妇| 中文字幕日韩精品一区 | 日韩西西人体444www| 韩国av一区二区三区在线观看| 久久久久久久久久久久电影 | 国产高清一区日本| 亚洲成av人综合在线观看| 欧美mv日韩mv| 欧美日韩激情一区二区三区| 精品综合久久久久久8888| 1区2区3区国产精品| 日韩美女主播在线视频一区二区三区| 国产精品一区二区不卡| 亚洲成人午夜电影| 中文字幕欧美国产| 精品免费日韩av| 国产亚洲精品aa| 在线播放日韩导航| 99re成人精品视频| 国产成人精品网址| 蜜桃一区二区三区四区| 午夜激情一区二区三区| 一区二区视频在线看| 欧美国产欧美综合| 久久免费看少妇高潮| 欧美日韩一区久久| 在线免费一区三区| 99视频精品在线| 国产成人在线视频网站| 狠狠色伊人亚洲综合成人| 麻豆成人综合网| 日韩精品电影一区亚洲| 午夜精品久久久久久不卡8050| 亚洲永久免费视频| 亚洲成人1区2区| 日韩国产在线一| 麻豆精品在线视频| 激情都市一区二区| 国产精品原创巨作av| 国产成人福利片| 99久久婷婷国产综合精品| av在线播放不卡| 91久久精品一区二区三| 91精品国产入口在线| 久久久另类综合| 最新国产の精品合集bt伙计| 亚洲制服丝袜在线| 精品在线亚洲视频| 99久久99久久综合| 欧美情侣在线播放| 中文字幕va一区二区三区| 韩日欧美一区二区三区| 成人自拍视频在线| 欧美三级电影在线看| 久久影视一区二区| 亚洲精品免费播放| 国产一区二区三区四区五区入口 | 日韩制服丝袜先锋影音| 成人免费看视频| 欧美日韩一区国产| 久久精品亚洲精品国产欧美kt∨| 亚洲欧洲av色图| 久久不见久久见免费视频7| 色偷偷成人一区二区三区91| 精品国产亚洲在线| 午夜精品久久久久影视| 91一区在线观看| 国产精品久久毛片a| 国内精品视频一区二区三区八戒| 91色porny蝌蚪| 亚洲国产精品激情在线观看| 免费人成精品欧美精品| 在线日韩一区二区| 亚洲免费高清视频在线| 99v久久综合狠狠综合久久| 国产日韩精品一区| 婷婷国产v国产偷v亚洲高清| 91首页免费视频| 精品免费国产二区三区| 中文一区一区三区高中清不卡| 婷婷开心激情综合| 欧洲生活片亚洲生活在线观看| 国产精品每日更新在线播放网址| 蜜臀av亚洲一区中文字幕| 欧美日韩国产小视频在线观看| 一区二区三区欧美日韩| 91丝袜美腿高跟国产极品老师 | 在线观看www91| 日韩一区二区三区视频| 91小视频免费观看| 欧美精品一二三区|