aiservoMultiResume()

描述

同时恢复多颗已暂停的伺服机,让伺服机继续往目标位置转动。呼叫此函式后,每一个伺服机的的行为和呼叫 resume() 的行为相同。

语法

aiservoMultiResume()
aiservoMultiResume(servo1)
aiservoMultiResume(servo1servo2)
aiservoMultiResume(servo1servo2, … , servo64)

参数

servo1 ~ servo64AIServo 型别的变数。

您可以输入 1 ~ 64 个 Servo 型别的参数,指定要启动的伺服机,或者不输入任何参数;当没有输入参数的时候,代表要恢复所有暂停的伺服机。

回传

范例

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

#include <AIServo86.h>

 

AIServoPort(ROBOTIS, AX12) bus;

AIServo servo0;

AIServo servo1;

 

void setup()

{

  bus.begin(Serial1, 1000000);

  servo0.attach(bus, 6);

  servo1.attach(bus, 10);

  servo0.setPosition(150);

  servo1.setPosition(160);

  aiservoMultiRun(servo0, servo1); // 启动 servo0、servo1 伺服机

  delay(500);

}

 

void loop()

{

  servo0.setPosition(90, 2000);

  servo1.setPosition(200, 2000);

  aiservoMultiRun(servo0, servo1); // 使 servo0、servo1 往新目标位置转动

  delay(1000);

  aiservoMultiPause(servo0, servo1); // 暂停所有伺服机

  delay(3000); // 暂停 3 秒

  aiservoMultiResume(servo0, servo1); // 所有伺服机恢复转动

  while(isAIServoMultiMoving() == true); // 等待所有伺服机转到目标位置

  servo0.setPosition(150, 2000);

  servo1.setPosition(160, 2000);

  aiservoMultiRun(servo0, servo1); // 使 servo0、servo1 往新目标位置转动

  while(isAIServoMultiMoving() == true); // 等待所有伺服机转到目标位置

}

See also

- attach()
- setPosition()
- run()
- aiservoMultiRun()
- isAIServoMultiMoving()


函式库参考主页面

86Duino 参考资料中的文字修改自 Arduino 参考资料,并根据 知识共享署名-许可证方式共享 3.0 授权相同。参考资料中的程式码范例已发布到公共领域。