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

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

?? servo-simple.c

?? 基于phidget標準C程序樣例
?? C
字號:
// - Servo simple -
// This simple example sets up a Servo objectm hooks the event handlers and opens it for device connections.  Once a Servo is attached
// with a motor in motor 0 it will simulate moving the motor from position 15 to 231, displaying the event details to the console.
// For a more detailed example, see the Servo-full example.
//
// Please note that this example was designed to work with only one Phidget Servo connected. 
// For an example using multiple Phidget Servos, please see a "multiple" example in the Servos Examples folder.
//
// Copyright 2007 Phidgets Inc.  All rights reserved.

#include <stdio.h>
#include <phidget21.h>

int AttachHandler(CPhidgetHandle SERV, void *userptr)
{
	int serialNo;
	const char *name;

	CPhidget_getDeviceName (SERV, &name);
	CPhidget_getSerialNumber(SERV, &serialNo);
	printf("%s %10d attached!\n", name, serialNo);

	return 0;
}

int DetachHandler(CPhidgetHandle SERV, void *userptr)
{
	int serialNo;
	const char *name;

	CPhidget_getDeviceName (SERV, &name);
	CPhidget_getSerialNumber(SERV, &serialNo);
	printf("%s %10d detached!\n", name, serialNo);

	return 0;
}

int ErrorHandler(CPhidgetHandle SERV, void *userptr, int ErrorCode, const char *Description)
{
	printf("Error handled. %i - %s\n", ErrorCode, Description);
	return 0;
}

int MotorPositionChangeHandler(CPhidgetServoHandle SERV, void *usrptr, int Index, double Value)
{
	printf("Motor: %d > Current Position: %f\n", Index, Value);
	return 0;
}

//Display the properties of the attached phidget to the screen.  We will be displaying the name, serial number and version of the attached device.
int display_properties(CPhidgetServoHandle phid)
{
	int serialNo, version, numMotors;
	const char* ptr;

	CPhidget_getDeviceType((CPhidgetHandle)phid, &ptr);
	CPhidget_getSerialNumber((CPhidgetHandle)phid, &serialNo);
	CPhidget_getDeviceVersion((CPhidgetHandle)phid, &version);

	CPhidgetServo_getNumMotors (phid, &numMotors);

	printf("%s\n", ptr);
	printf("Serial Number: %10d\nVersion: %8d\n# Motors: %d\n", serialNo, version, numMotors);

	return 0;
}

int servo_simple()
{
	int result;
	double curr_pos;
	const char *err;

	//Declare an servo handle
	CPhidgetServoHandle servo = 0;

	//create the accelerometer object
	CPhidgetServo_create(&servo);

	//Set the handlers to be run when the device is plugged in or opened from software, unplugged or closed from software, or generates an error.
	CPhidget_set_OnAttach_Handler((CPhidgetHandle)servo, AttachHandler, NULL);
	CPhidget_set_OnDetach_Handler((CPhidgetHandle)servo, DetachHandler, NULL);
	CPhidget_set_OnError_Handler((CPhidgetHandle)servo, ErrorHandler, NULL);

	//Registers a callback that will run when the motor position is changed.
	//Requires the handle for the Phidget, the function that will be called, and an arbitrary pointer that will be supplied to the callback function (may be NULL).
	CPhidgetServo_set_OnMotorPositionChange_Handler(servo, MotorPositionChangeHandler, NULL);

	//open the LED for device connections
	CPhidget_open((CPhidgetHandle)servo, -1);

	//get the program to wait for an servo device to be attached
	printf("Waiting for Servo controller to be attached....");
	if((result = CPhidget_waitForAttachment((CPhidgetHandle)servo, 10000)))
	{
		CPhidget_getErrorDescription(result, &err);
		printf("Problem waiting for attachment: %s\n", err);
		return 0;
	}

	//Display the properties of the attached accelerometer device
	display_properties(servo);

	//read led event data
	printf("Reading.....\n");

	//This example assumes servo motor is attached to index 0

	//display current motor position
	CPhidgetServo_getMotorPosition(servo, 0, &curr_pos);
	printf("Motor: 0 > Current Position: %f\n", curr_pos);

	//keep displaying servo event data until user input is read
	printf("Press any key to continue\n");
	getchar();

	//change the motor position
	//valid range is -23 to 232
	//we'll set it to a few random positions to move it around

	//Step 1: Position 10.00
	printf("Move to position 10.00. Press any key to Continue\n");
	getchar();

	CPhidgetServo_setMotorPosition (servo, 0, 10.00);

	//Step 2: Position 50.00
	printf("Move to position 50.00. Press any key to Continue\n");
	getchar();

	CPhidgetServo_setMotorPosition (servo, 0, 50.00);

	//Step 3: Position 100.00
	printf("Move to position 100.00. Press any key to Continue\n");
	getchar();

	CPhidgetServo_setMotorPosition (servo, 0, 100.00);

	//Step 4: Position 150.00
	printf("Move to position 150.00. Press any key to Continue\n");
	getchar();

	CPhidgetServo_setMotorPosition (servo, 0, 150.00);

	//Step 5: Position 200.00
	printf("Move to position 200.00. Press any key to Continue\n");
	getchar();

	CPhidgetServo_setMotorPosition (servo, 0, 200.00);

	//Step 6: Position 20.00
	printf("Move to position 20.00. Press any key to Continue\n");
	getchar();

	CPhidgetServo_setMotorPosition (servo, 0, 20.00);

	//Step 7: Position -23.00
	printf("Move to position -23.00. Press any key to Continue\n");
	getchar();

	CPhidgetServo_setMotorPosition (servo, 0, -23.00);

	printf("Press any key to end\n");
	getchar();

	//since user input has been read, this is a signal to terminate the program so we will close the phidget and delete the object we created
	printf("Closing...\n");
	CPhidget_close((CPhidgetHandle)servo);
	CPhidget_delete((CPhidgetHandle)servo);

	//all done, exit
	return 0;
}

int main(int argc, char* argv[])
{
	servo_simple();
	return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美成人午夜| 亚洲三级电影全部在线观看高清| 久久午夜羞羞影院免费观看| 最新中文字幕一区二区三区| 日本中文字幕一区二区视频| 成人福利视频网站| 日韩精品在线看片z| 洋洋av久久久久久久一区| 国产美女在线观看一区| 欧美精品777| 亚洲午夜久久久久久久久电影院| 丁香亚洲综合激情啪啪综合| 欧美一区二区播放| 亚洲国产精品一区二区久久| 99国产精品久久久久久久久久久| 欧美一级淫片007| 亚洲一区二区美女| 91免费精品国自产拍在线不卡| 欧美精品一区二区久久婷婷| 日韩精品欧美成人高清一区二区| 99精品视频一区二区| 久久精品人人做人人综合| 黑人精品欧美一区二区蜜桃| 日韩欧美国产小视频| 成人精品高清在线| 国产午夜亚洲精品午夜鲁丝片| 蜜桃视频免费观看一区| 欧美日韩免费在线视频| 亚洲综合男人的天堂| 在线亚洲欧美专区二区| 综合网在线视频| 色狠狠一区二区三区香蕉| 亚洲品质自拍视频网站| 在线视频一区二区三| 亚洲午夜精品在线| 欧美一三区三区四区免费在线看 | 国产a区久久久| 国产免费观看久久| 国产91对白在线观看九色| 日韩欧美的一区| 国产精品白丝av| 中文字幕中文字幕在线一区 | av在线播放成人| 国产精品高清亚洲| 欧美午夜宅男影院| 日韩成人精品视频| 欧美精品一区二区三区蜜桃| 国产宾馆实践打屁股91| 亚洲视频你懂的| 欧美日本精品一区二区三区| 免费观看成人av| 欧美国产精品劲爆| 欧美日韩综合一区| 韩国一区二区三区| 最新国产成人在线观看| 欧美电影影音先锋| 国产一区二区毛片| 国产精品久久久99| 欧美日本视频在线| 国产黑丝在线一区二区三区| 日韩一区二区三区视频| 国产成人超碰人人澡人人澡| 国产成人av一区二区三区在线观看| 欧美人与性动xxxx| 欧美精品一区二区三区四区| 国产丝袜美腿一区二区三区| 日韩三级在线免费观看| 婷婷国产v国产偷v亚洲高清| 国产在线精品一区二区夜色 | 日本一区免费视频| 91一区二区三区在线观看| 亚洲精品欧美激情| 精品国产一区二区三区久久久蜜月| 国产精品一品二品| 香蕉乱码成人久久天堂爱免费| 国产亚洲成年网址在线观看| 欧美日韩一区二区在线观看| 国产精品18久久久久久vr| 亚洲男人的天堂一区二区| 日韩欧美国产午夜精品| 91官网在线免费观看| 国产在线观看一区二区| 五月天丁香久久| 国产精品丝袜黑色高跟| 欧美成人一区二区三区片免费| 91美女片黄在线观看| 久久99蜜桃精品| 亚洲成人av在线电影| 中文字幕亚洲区| 日韩欧美一二三四区| 欧美影院一区二区三区| 成人开心网精品视频| 免费日韩伦理电影| 图片区小说区国产精品视频| 国产精品久久777777| 国产欧美精品一区二区色综合朱莉| 欧美一区二区三区免费观看视频 | 国产麻豆视频一区| 日韩精品一级中文字幕精品视频免费观看| 日韩美女视频一区二区| 国产精品视频一二三| 国产亲近乱来精品视频| 久久先锋影音av鲁色资源网| 欧美成人一区二区三区在线观看| 制服.丝袜.亚洲.另类.中文| 欧美三级韩国三级日本一级| 欧美亚洲综合在线| 欧美四级电影网| 欧美久久久一区| 欧美猛男男办公室激情| 欧美精品自拍偷拍动漫精品| 欧美日韩一区国产| 欧美日韩国产综合视频在线观看| 欧美视频在线一区二区三区| 欧美三级视频在线| 欧美三级电影网| 欧美日本高清视频在线观看| 6080午夜不卡| 精品国产一区二区三区久久影院 | 成人动漫在线一区| 99热精品一区二区| 在线观看中文字幕不卡| 在线精品视频免费观看| 欧美日韩精品一区二区三区四区 | 麻豆视频一区二区| 国产美女娇喘av呻吟久久| 国产一区二区三区最好精华液 | 亚洲午夜视频在线观看| 午夜在线成人av| 麻豆精品国产91久久久久久| 国内久久精品视频| 成人av网站大全| 色88888久久久久久影院野外 | 欧美成人vps| 久久久噜噜噜久久中文字幕色伊伊 | 亚洲午夜免费电影| 亚洲电影在线免费观看| 日本欧美一区二区在线观看| 国产一区二区在线免费观看| 成人妖精视频yjsp地址| 欧美在线不卡视频| 日韩欧美电影一区| 中文在线一区二区| 日韩精品一卡二卡三卡四卡无卡| 加勒比av一区二区| 91在线云播放| 欧美一级搡bbbb搡bbbb| 国产精品丝袜黑色高跟| 亚洲电影一级片| 国产成人午夜精品影院观看视频| 91在线小视频| 日韩精品一区二区三区四区| 国产精品美女久久久久av爽李琼| 亚洲一区二区高清| 国产一区二区导航在线播放| 91视频精品在这里| 久久影院午夜论| 午夜久久久久久电影| 成人国产亚洲欧美成人综合网| 欧美喷水一区二区| 日韩一区在线播放| 国产一区二区三区免费看| 欧美中文字幕久久| 国产精品全国免费观看高清| 日本一道高清亚洲日美韩| 色综合视频在线观看| 欧美mv日韩mv亚洲| 亚洲成人免费在线| 91色|porny| 久久久精品国产免费观看同学| 亚洲第一搞黄网站| 99亚偷拍自图区亚洲| 精品国产91久久久久久久妲己 | 欧美亚一区二区| 国产精品初高中害羞小美女文| 经典三级在线一区| 在线成人免费视频| 一区二区三区在线观看国产| 成人永久aaa| 久久免费国产精品| 久久国产生活片100| 在线不卡一区二区| 亚洲国产一区二区三区| www.66久久| 国产精品视频一二三区| 国产精品99久久久久久久vr| 日韩一区二区三区视频在线观看| 亚洲国产成人91porn| 欧美在线影院一区二区| 一区二区在线观看av| 色婷婷av一区| 一区二区不卡在线播放 | 日韩精品一区在线| 亚洲综合一区二区| 91美女精品福利| 亚洲精品免费播放| 日本精品视频一区二区| 亚洲精品伦理在线| 欧美性视频一区二区三区| 亚洲最快最全在线视频|