dan*_*nem 6 python macos serial-port arduino
我在Arduino和Python之间进行通信时遇到问题.我有几个问题希望可以回答,但首先也是最重要的是,我需要简单地建立连接.
对于Windows,显然解决方案相当方便,但在Mac OS X上,我显然需要访问一些系统文件(我不熟悉).Python文档向我指出具体的帖子Re:Python可以做串口吗?,但我不认为这完全符合我的目的.
在这一点上,试图仅仅看到沟通的证据,我已经尝试过这个.
Arduino的:
void setup(){
Serial.begin(9600);
}
void loop()
{
int d = Serial.read();
Serial.println(d,BYTE);
}
Run Code Online (Sandbox Code Playgroud)
Python :(几乎来自上面提到的链接...)
#!usr/bin/python
import os, fcntl, termios, sys
serialPath = '/dev/tty.usbmodemfa141'
ser= os.open(serialPath, 0)
[iflag, oflag, cflag, lflag, ispeed, ospeed, cc] = range(7)
settings = termios.tcgetattr(ser)
settings[ospeed] = termios.B9600
settings[ispeed] = termios.B0
print 2
Run Code Online (Sandbox Code Playgroud)
正如这里所证明的那样,我真的不明白我导入的模块到底在做什么.在阅读文档时,我看不到通过串行发送数据的明显方法.所以我正确地猜测无论这个程序的输出是什么,它都会自动发送?
JBe*_*rdo 14
使用ArSino(或任何带有串行的微控制器)在Python中进行通信的最简单方法是使用pySerial.
这是一个例子:
import serial
s = serial.Serial(port='/dev/tty.usbmodemfa141', baudrate=9600)
s.write('text')
s.read()
s.readline()
Run Code Online (Sandbox Code Playgroud)
PS:如果您使用的是Python 3,则应该发送字节而不是字符串(即b'text').
| 归档时间: |
|
| 查看次数: |
15403 次 |
| 最近记录: |