通过Bash打开与Arduino的串行连接

hca*_*caw 3 bash shell serial-port arduino

我已经设置了我的Arduino,所以当我通过串行监视器发送"0"时,步进电机会转动给定量.

我想将它包含在一个bash脚本中,但是当arduino串口监视器打开并echo 0 > /dev/tty.usbserial641以bash 进入时,我只能使用它.我认为这是因为串口监视器正在为我打开连接.

在我用bash打开连接的努力中(没有打开串行监视器)我尝试了所有方式,stty -f /dev/tty.usbserial641并尝试使用10uF电容将复位连接到地.

可以帮助我在不使用arduino串口监视器的情况下打开bash连接吗?

系统:Arduino Uno rev3 OS X 10.8.4

非常感谢,hcaw

Joh*_*n b 5

以下命令是否适合您.

 # stty -F /dev/ttyUSB0 9600 cs8 -cstopb
 # sleep 0.1
 # echo "0" > /dev/ttyUSB0
Run Code Online (Sandbox Code Playgroud)

值0和ascii char 0(48)之间存在差异.你试图发送哪一个,你想收到哪一个?

如果你想从终端读取端口,你可以这样做

head -n 1 /dev/ttyUSB0  //the number after n is how many lines you want to read
Run Code Online (Sandbox Code Playgroud)

最后一点,我是pySerial的粉丝.我宁愿在python中编写一个接口而不是shell脚本.