我有一个Raspberry,我正在尝试连接到Ubidots物联网云,但出现此错误:
pi@raspberrypi:~/Downloads/raspbiDaniela/Ver 2016/ZonrProject $ python main.py
Traceback (most recent call last):
File "main.py", line 124, in <module>
main()
File "main.py", line 21, in main
ser = serial.Serial(port=port, baudrate=baud)
File "/usr/lib/python2.7/dist-packages/serial/serialutil.py", line 261, in __init__
self.open()
File "/usr/lib/python2.7/dist-packages/serial/serialposix.py", line 278, in open
raise SerialException("could not open port %s: %s" % (self._port, msg))
serial.serialutil.SerialException: could not open port /dev/ttyAMA0: [Errno 13] Permission denied: '/dev/ttyAMA0'
答案 0 :(得分:0)
您不需要每次都按照注释中的建议使用sudo运行脚本,但是您需要确保对/dev/ttyAMA0
具有读/写权限。您可以使用以下方法修改权限:
sudo chmod 666 /dev/ttyAMA0
如果设备是可拆卸的,则您也可以考虑创建一个udev
规则,该规则将在每次连接设备时应用正确的权限。您可以在Debian's wiki上详细了解udev
规则。
答案 1 :(得分:0)
当我通过串口打开SSH时遇到了这个问题。当我关闭它并仅通过sudo raspi-config
打开串行接口时,一切正常,没有权限问题。
希望它可以帮助其他开发人员。