2014-02-17 93 views
1

我想建立两个arduino的串口通信。一个将作为一个接收者远程对另一个。我有两个按钮已经设置好了,但我在伺服和电机方面有问题。控制电机和串行舵机(Arduino)

val = analogRead(potPin1); 
if (val1 != val){ 
    val = map(val, 0, 1023, 5, 150); 
    Serial.println("3/2/10/" + val); //Write steering val 
    val1 = val; 

这是正在代理的代码。它会连续打印字符而不是整数,并且只能在换锅时才打印。 另外如果可能的话,我想用一个操纵杆来控制两个,但我认为最好先单独工作。 远程代码= http://pastebin.com/JCq7sNxT 接收代码= http://pastebin.com/KiyYJMFT

在此先感谢。

回答

0

你是什么意思与“表演”?我不确定你的意思,但也许你需要尝试Serial.println(analogValue, DEC);

这打印行作为一个ASCII编码的十进制。欲了解更多信息,请登录http://arduino.cc/en/Serial/Println#.UwHrRXVdVJw

或者print()更适合您的需求(http://arduino.cc/en/Serial/Print#.UwHtKXVdVJw)。

此外,您可能会覆盖您的发送缓冲区。由于波特率非常低(9600波特/秒),并且每次在主循环中模拟值发生变化时都会发送字符,所以您可能会尝试发送比连接处理更多的数据。

我不确定这是否会造成问题,但我的建议是通过不断摇摆摇杆确保您的系统受到压力测试:)。

+0

WOW!你很棒。它完美的作品。通过这个动作位,我的意思是系列会充满角色。 – user3318754