我试图将数据发送到我的arduino并继续遇到同样的问题。在Arduino的代码如下:通过Windows命令行将数据传递给arduino
void setup()
{
Serial.begin(9600);
for (int i = 3; i <= 13; i++)
{
pinMode(i, OUTPUT);
digitalWrite(i, LOW);
}
}
void loop()
{
if (Serial.available())
{
char ch = Serial.read();
int it = ch - '0';
digitalWrite(it, HIGH);
delay(1000);
digitalWrite(it, LOW);
}
}
这基本上使得它如此当您通过串行监控发送一个字符到该设备它点亮连接到指定销一秒钟的光。 在内置的串行监视器,这工作正常,你发送设备一个数字1-9(还没有想出如何做10+),指定的灯打开,就像打算。但是,我的目标是编写一个C++程序,使用system()
命令从windows.h
向设备发送数据。在我能做到这一点之前,我需要命令将数据发送到设备。我发现:
echo i > COM1 //with i being the number to be sent over
嗯,我试过了,得到了一个相当有趣的结果一半,我会在命令行收到此消息的时间:
C:/users/XXXXX> echo 7 > COM3 //im 100% sure im using com3
Access is denied
时的另一半,我会看到数据通过(RX灯会亮起)但没有任何事情发生,连接到引脚7的灯不亮。我马上想到你可能需要传递ASCII码的数据,但不是,
echo 55 > COM3
产生了相同的结果。如果有人知道如何通过窗口命令行向arduio发送数据,我真的很感激它,谢谢。