Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要在Arduino中运行文本文件的帮助吗_Arduino_Processing - Fatal编程技术网

需要在Arduino中运行文本文件的帮助吗

需要在Arduino中运行文本文件的帮助吗,arduino,processing,Arduino,Processing,我目前正在根据发送给文本变量的数字在某些位置进行Arduino移动。我正在使用处理IDE和Arduino IDE 我目前遇到的问题是Arduino根本不读取文本文件。相反,我必须自己手动输入数字 总而言之,我试图得到一个只包含一个数字的文本文件。让处理应用程序读取它,然后让Arduino在特定位置移动 以下是我迄今为止所尝试的: 使用开关删除if语句 已将myport('0')更改为myport('9'),因为这是连接我的导线的地方 试图在Arduino上使用ByteRead,但没有任何效果 试

我目前正在根据发送给文本变量的数字在某些位置进行Arduino移动。我正在使用处理IDE和Arduino IDE

我目前遇到的问题是Arduino根本不读取文本文件。相反,我必须自己手动输入数字

总而言之,我试图得到一个只包含一个数字的文本文件。让处理应用程序读取它,然后让Arduino在特定位置移动

以下是我迄今为止所尝试的:

  • 使用开关删除if语句

  • 已将myport('0')更改为myport('9'),因为这是连接我的导线的地方

  • 试图在Arduino上使用ByteRead,但没有任何效果

  • 试图将ByteRead转换为int而不是字节

  • 我查过谷歌,但运气不好,我能找到的唯一链接是这个

    import processing.serial.*;
    导入java.io.*;
    int计数器=0;
    字符串[]潜文本;
    串行端口;
    无效设置(){
    //创建一个控制文本文件读取频率的开关。
    //当mySwitch=1时,程序被设置为读取文本文件。
    //当mySwitch=0时,此选项关闭
    //打开串行端口与Arduino进行通信
    //确保COM端口正确
    myPort=新序列号(此“COM3”,9600);
    myPort.bufferUntil('\n');
    }
    作废提款(){
    /*readData函数可以在代码后面找到。
    这是在计算机硬盘上读取CSV文件的调用*/
    readData(“C://Users//InGodWeTrush//Desktop//maxColorIndex.txt”);
    /*以下开关可防止连续读取文本文件,直到
    我们准备再次读取该文件*/
    /*仅发送新数据。此IF语句将允许向发送新数据
    阿杜伊诺号*/
    
    如果(计数器是这样,您将Arduino连接到串行端口(或通过USB-UART转换器,不连接),比如说COM1,然后从一个程序(处理IDE)向该端口发送一些数据,然后尝试从另一个程序(Arduino IDE)读取数据

    不可能同时将多个程序连接到同一个COM端口。您从串行端口(我猜是从处理IDE)读取字节,然后通过串行端口发回文本(尝试将其发送到Arduino IDE?)

    您应该在PC端的同一应用程序中执行所有操作(写入串行和读取串行)(应首先连接到COM端口,并将其固定,防止其他程序访问)

    -或-

    您应该使用两个连接到不同COM端口的串行端口(可能带有两个USB-UART转换器)

    请注意,带有ATmega328芯片的Arduino UNO、Nano等只有一个硬件串行口。在这种情况下,您应该使用一些软件UART仿真来使用第二个串行口


    最简单的选择就是从Arduino代码中删除
    Serial.println
    ,并通过硬件(LED等)在Arduino上进行指示工作期间不要将Arduino IDE连接到主板。

    您每0.1/0.5秒发送一次字节,但每10秒读取一次。感谢您的响应。我增加了时间,但它仍然无法读取我的文本文件。我注意到的是我第一次按下run(处理IDE或Arduino)按钮可以。如果我先运行我的Arduino代码,那么它会说COM3在处理IDE上忙。如果我先在处理IDE上运行代码,那么我在Arduino上得到一个错误,说上传到主板时出现问题。