2014-09-02 157 views
1

如果我在串行监视器中键入“forward”,并且如果输入“Reverse”,我希望它“前进”。我想使用arduino串行监视器控制我的电机

String readString; 
int a = 8; 
int b = 7; 

void setup() { 
    Serial.begin(9600); 
    pinMode(a, OUTPUT); 
    pinMode(b, OUTPUT); 
    Serial.println("Test"); 
} 

void loop() { 

    while (Serial.available()) { 
    delay(1); 
    if (Serial.available() >0) { 
     char c = Serial.read(); 
     readString += c; 
    } 
    } 

    if (readString.length() >0) { 
    if (readString == "forward") 
    { 
     digitalWrite(a, HIGH); 
     digitalWrite(b, LOW); 
     delay(5000); 
     readString = ""; 
    } 
    readString=""; 
    } 
} 

如果我的代码,并没有真正的工作谁能告诉我如何通过串行监视器控制电机请一些简单的例子。我在网上搜索了不同的例子,但他们似乎从来没有工作,我无法弄清楚我做错了什么。

回答

0

发送像“转发”等完整的单词是毫无意义的,甚至在使用字符串进行消息传递时也是如此。只需使用-1,0,1或字符'r','s','f'作为反向,停止,前进。

至于制定通信语法,Aruinio IDE中包含了很好的串行示例。看看那些。

相关问题