请问,这个程序错在哪儿?
本帖最后由 迷你强 于 2015-5-23 22:22 编辑这个程序我是按照论坛里的大神,发的教程打出来的(改了一点点,把一个舵机变成了多个舵机),编译时他说我if有问题!实在不知道是怎么回事,,,求解!
int i, val;
char t;
boolean display;
#include<Servo.h>
Servo a,b,c,d,e,f,g,h;
void setup()
{
Serial.begin(9600);
a.attach(1);
b.attach(2);
c.attach(3);
d.attach(4);
e.attach(5);
f.attach(6);
g.attach(7);
h.attach(8);
}
void loop()
{
if(Serial.available())
delay(30);
if(Serial.available() <=3 ){
while(Serial.available()){
t=Serial.read();
}
display = 1;
}
else{
Serial.flush();
}
}
if (t == 43 && display)
{
val++;
a.write(val);
b.write(val);
c.write(val);
d.write(val);
e.write(val);
f.write(val);
g.write(val);
h.write(val);
Serial.println(val);
display=0;
Serial.flush();
for(i=0;i<=3;i++)
{
t=0;
}
t = 0;
}
if(t== 45 && display){
val--;
a.write(val);
b.write(val);
c.write(val);
d.write(val);
e.write(val);
f.write(val);
g.write(val);
h.write(val);
Serial,println(val);
display = 0;
Serial.flush();
for(i=0;i<=3;i++)
{
t = 0;
}
i = 0;
}
if(display)
{
if(!t)
{
if(!t)
{
t = t;
t = 48;
t = 48;
}
else{
t = t;
t = t;
t = 48;
}
}
for(i=0;i<=3;i++)
{
t -=48;
}
val = 100*t + 10*t + a;
a.write(val);
b.write(val);
c.write(val);
d.write(val);
e.write(val);
f.write(val);
g.write(val);
h.write(val);
Serial.println(val);
display = 0;
Serial.flush();
for(i = 0;i <= 3; i++)
{
t = 0;
}
i = 0;
}
第一次敲 arduino 的程序,错误可能很多,求指教! 应该是arduino的驱动能力不够吧?用外接电源应该是可以的、
问这类问题应该贴出错误信息,建议使用visual studio装上Visual Micro插件来写arduino程序,语法错误会有比较好的提示 nick_zm 发表于 2015-5-23 21:51 static/image/common/back.gif
问这类问题应该贴出错误信息,建议使用visual studio装上Visual Micro插件来写arduino程序,语法错误会有比 ...
哦哦 ,这样啊,谢谢 你出错的那个if既没有写在 loop里,也没有写在 setup里,更没写在函数里 shenhaiyu 发表于 2015-5-28 11:22 static/image/common/back.gif
你出错的那个if既没有写在 loop里,也没有写在 setup里,更没写在函数里
谢谢,的确是这样!
页:
[1]