我正试图让一个LED以Labview中的数字控件中给出的频率闪烁。我使用COM4将Arduino连接到Labview。这是用Arduino IDE编写的代码:
char command;
String string;
void setup()
{
Serial.begin(9600);
pinMode(13, OUTPUT);
digitalWrite(13, LOW);
}
void loop()
{
if (Serial.available() > 0)
{string = "";}
while(Serial.available() > 0)
{
command = ((byte)Serial.read());
if(command == ':')
{
break;
}
else
{
string += command;
}
delay(1);
}
if(string.toInt() > 0 )
{
TempOn();
TempOff();
}
}
void TempOn()
{
long y= string.toInt();
digitalWrite(13, HIGH);
delay(y);
}
void TempOff()
{
long y= string.toInt();
digitalWrite(13, LOW);
delay(y);
}
}
如果我尝试让它闪烁一定的值,例如1000(我从下面写下面的代码),那么它对于那个值是完美的!
if(string == "1000" )
{
TempOn();
TempOff();
}
我不明白为什么它不适用于一般情况......
这是Labview(框图)中的代码: