先谢谢您
我会尽量简短。
我有一个Arduino + IDE,其串行端口工作正常。 我下载了Python 3.7.2,PySerial和VPython。 安装了所有这些。
通过我的MacBook终端安装了PySerial。
sudo easy_install pyserial
Password: Searching for pyserial
Best match: pyserial 3.4
Adding pyserial 3.4 to easy-install.pth file
我也通过终端安装了VPython。
MacBook-3:~ myname$ pip list
Package Version
FontTools 2.4
numpy 1.9.1
pip 18.1
Polygon2 2.0.7
pyserial 3.4
setuptools 39.0.1
TTFQuery 1.0.5
VPython 6.11
wxPython 3.0.0.0
wxPython-common 3.0.0.0
当我在Python 3.7.2 shell中键入help(“ modules”)时,我得到了这个信息,它表示PySerial是我拥有的模块。
请稍等一下,我收集了所有可用模块的列表... PySerial _thread getopt资源YoutubeARDTOPY _threading_local getpass rlcompleter将来_tkinter
我在Arduino上编写了一个简单的代码,该代码写入串行端口,进行验证并上传。工作正常。关闭该端口。在Python 3.7.2上运行此代码,期望该代码捕获要发送到Arduinos串行端口的内容,然后开始发布到Pythons串行端口。
import serial #Import Serial Library
arduinoSerialData = serial.Serial('/dev/cu.usbmodem14101', 9600)
while (1==1):
if (arduinoSerialData.inWaiting()>0):
myData = arduinoSerialData.readline()
print (myData.decode())
但是我收到这样的错误消息,
============重新启动:/Users/donaldlair/Documents/YoutubeARDTOPY.py ==========
Traceback (most recent call last):
File "/Users/donaldlair/Documents/YoutubeARDTOPY.py", line 3, in <module>
arduinoSerialData = serial.Serial('/dev/cu.usbmodem14101', 9600)
AttributeError: module 'serial' has no attribute 'Serial'
所以我查看了我的dir(serial)文件夹,结果出来了(被告知要这样做,但仍不知道为什么,但这可能有助于找出原因。
>>> dir(serial)
['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', 'abc', 'absolute_import', 'division', 'errors', 'generators', 'hooks', 'marshal', 'meta', 'model', 'nested_scopes', 'print_function', 'properties', 'request', 'test', 'unicode_literals', 'utilities', 'with_statement']
我是第一次学习很多这些东西,因此,如果您回答我很感激的话,请稍作愚蠢,因为我有点文盲和初学者。
谢谢!