Macos 从终端(OSX)向Arduino写入数据

Macos 从终端(OSX)向Arduino写入数据,macos,file-io,serial-port,arduino,arduino-uno,Macos,File Io,Serial Port,Arduino,Arduino Uno,我正试图通过USB电缆从OSX终端向我的Arduino发送数据。我的理解是,我应该能够做一些类似于echo b>/dev/tty.usbmodem1411或echo b>/dev/cu.usbmodem1411的事情,但这两个都不起作用。我还通过执行echo“b\r\n”>/dev/tty.usbmodem1411和echo“b\r\n”>/dev/cu.usbmodem1411尝试了一个显式换行符,但都不起作用。我真的不知道发生了什么事,cu和tty之间的区别是什么(当我在Arduino ID

我正试图通过USB电缆从OSX终端向我的Arduino发送数据。我的理解是,我应该能够做一些类似于
echo b>/dev/tty.usbmodem1411
echo b>/dev/cu.usbmodem1411
的事情,但这两个都不起作用。我还通过执行
echo“b\r\n”>/dev/tty.usbmodem1411
echo“b\r\n”>/dev/cu.usbmodem1411
尝试了一个显式换行符,但都不起作用。我真的不知道发生了什么事,
cu
tty
之间的区别是什么(当我在Arduino IDE中使用串行监视器写入数据时,我使用的是
cu
版本,这很有效)

这不像
echo
ing:那么简单)

这是一个很棒的教程,介绍了您需要了解的有关串行通信的所有知识--

如果需要的话,我很乐意回答你更多的问题

编辑:

对于类似这样的shell脚本:

#!/bin/bsh

screen /dev/tty.usbmodem* 9600

# and everything you need to do
我发现这篇博文:

该代码:


这就解决了问题。

谢谢!使用该指南,我成功地使用
screen/dev/tty.usbmodem1411 9600发送了数据,并使用'ctrl+a+`干净地退出,但我希望能够编写与Arduino的交互脚本。使用屏幕可以吗?只需打开屏幕,发送数据,然后关闭,从脚本?当然!一个基本的
shell
脚本应该是可行的:)我该怎么做?我查看了
screen-h
的输出,没有看到我可以如何做到这一点,我浏览了
manscreen
,没有看到任何明显相关的内容。很酷,这看起来很有希望,但我不知道在
screen
行之后应该放些什么,才能让它真正完成任务。不管我在那里放了什么,我只是陷入了一个
屏幕
会话,当我退出时,它会说
退出:找不到命令
-X命令找不到
东西:找不到命令
我认为你必须创建一个分离的
屏幕
会话,并通过shell脚本与之交互。我从来没试过,但有时间我会试试的。您也可以将此作为另一个问题提问;)