批处理文件:从串行端口接收数据并将其写入txt-File

时间:2013-10-21 08:40:33

标签: windows batch-file serial-port arduino text-files

我正在尝试通过usb-serial-port从Arduino中提取一些数据并将其写入txt文件。因此,我使用批处理文件(Windows 7,普通cmd),它发送例如一个“d”从Arduino请求所需的数据。收到“d”后,Arduino开始将数据发送到电脑。批处理文件读取数据并将其写入某个txt文件。批处理代码是:

    mode COM4 BAUD=9600 PARITY=n DATA=8
    echo d >COM4
    COPY COM4 data.txt

到目前为止有效,但问题是:

如何停止COPY流程?

当Arduino完成发送数据后,批处理文件会继续进行更多操作。我首选的解决方案是,Arduino发送一些像“end”这样的字符串,批处理文件识别出来并停止阅读。这有可能吗?

2 个答案:

答案 0 :(得分:3)

我相信该副本会将Control-Z识别为文件结束符并终止。

Harkens回到旧的dos时代,我是否展示了我的年龄?

答案 1 :(得分:0)

< COM4 (
  set /p COM4_1=
  set /p COM4_2=
  set /p COM4_3=
) 
set COM4_

COM1,COM2 ...(不确定COM4是否可能存在 - 我只有COM3)被cmd.exe(也是CON和NUL,LPT1)解释为某种文件。使用SET /p Lline1=<somefile,您可以读取文件的第一行。由于括号,这是3行。