FUNCTION "FC75_Servo Control" : Void { S7_Optimized_Access := 'TRUE' } VERSION : 0.1 VAR CONSTANT SafePositionOffset : Real := 15.0; END_VAR 这段代码什么意思
时间: 2024-04-19 20:28:22 浏览: 103
这段代码是一个函数,名为 "FC75_Servo Control",返回类型为 "Void"(即没有返回值)。第一行设置了 S7_Optimized_Access 参数为 TRUE。接下来,代码指定了版本号为 0.1。然后定义了一个常量变量 SafePositionOffset,类型为 Real(即实数),初始值为 15.0。
相关问题
FUNCTION "FC75_Servo Control" : Void { S7_Optimized_Access := 'TRUE' } VERSION : 0.1 VAR CONSTANT SafePositionOffset : Real := 15.0; END_VAR
这是一个函数块的定义,名为 "FC75_Servo Control",返回类型为空(Void)。在这个函数块中,设置了一个变量 S7_Optimized_Access 的值为 TRUE。函数块的版本号为 0.1。此外,还定义了一个常量 SafePositionOffset,其数据类型为 Real,初始值为 15.0。
C:\Users\qianc\Documents\Arduino\sketch_may30a_servo\sketch_may30a_servo.ino: In function 'void loop()': C:\Users\qianc\Documents\Arduino\sketch_may30a_servo\sketch_may30a_servo.ino:23:28: error: no matching function for call to 'Servo::write(float&, int)' myservo0.write(msg, 300); // 控制舵机转动到指定角度 ^ In file included from C:\Users\qianc\Documents\Arduino\sketch_may30a_servo\sketch_may30a_servo.ino:1:0: C:\Users\qianc\AppData\Local\Arduino15\libraries\Servo\src/Servo.h:111:8: note: candidate: void Servo::write(int) void write(int value); // if value is < 200 its treated as an angle, otherwise as pulse width in microseconds ^~~~~ C:\Users\qianc\AppData\Local\Arduino15\libraries\Servo\src/Servo.h:111:8: note: candidate expects 1 argument, 2 provided exit status 1 Compilation error: no matching function for call to 'Servo::write(float&, int)'是什么意思
这个错误提示是因为`Servo`库中的`write()`函数只接受一个整数型参数,而你的代码中传递了一个浮点型参数和一个整数型参数。因此,编译器无法匹配到适合的函数。
你需要将`msg`参数转换为整数型后再传递给`write()`函数。例如,你可以使用`int()`函数将`msg`转换为整数型,如下所示:
```
myservo0.write(int(msg), 300); // 控制舵机转动到指定角度
```
这样就可以避免这个错误了。
阅读全文