终端不适用于Arduino DUE上的USBSerial。端口还可以

时间:2018-08-22 22:27:35

标签: macos gnu-screen usbserial arduino-due

我在另一台Mac上的Arduino DUE上安装了固件,该固件旨在与基于Matlab的应用程序接口。它已经过测试并且已知可以正常工作。我正在尝试从办公室的Mac修改固件,但是在安装Arduino IDE之后遇到了麻烦。

首先,我无法使Arduino串行监视器与DUE交互。我已经尝试了很多次,但是一次却起作用,但是自那以后我一直没有使它起作用。没有错误报告。

第二,我也无法获得screen终端命令来与DUE交互。没有错误报告。

第三,如果我只是在终端中使用文本管道(例如,echo'status'> /dev/cu.usbmodem1421或head -20 /dev/cu.usbmodem1421&),我将从DUE得到适当的响应。

第四,Matlab应用程序可以按设计与DUE交互。

请注意,这是DUE中的本机USB端口,不涉及串行适配器(及其驱动程序怪异)。我一直没有尝试将新代码下载到DUE,因为只要使用Mac,固件就可以正常工作(只是我需要对其进行修改,以便它可以与Windows PC中慢得多的端口一起工作)

我需要能够调试我正在修改的代码,为此,我需要能够通过一个终端(任何终端)进行交互。有什么想法去找?


更新:我注意到代码没有等待USB准备就绪。所以我加了

while(!WiredSerial){
  digitalWrite(PIN_LED, HIGH);
  delay(125);
  digitalWrite(PIN_LED, LOW);
  delay(125);
}

此更改之后,DUE等待终端打开,并且终端显示初始化文本而不会出现故障。之后,该行为与之前报告的相同。

1 个答案:

答案 0 :(得分:0)

没关系。

我可以确定在发布之前已经检查过此内容。实际上,我确信这是我检查的第一件事,在此期间一定有其他更改。

在终端只是发送回车符时,代码在返回任何内容之前需要换行符。