无法读取Raspberry Pi UART引脚

问题描述 投票:0回答:1

我无法从Raspberry Pi UART引脚读取数据。这是我使用的Python代码:

import serial
import time
import string
import pynmea2

while True:
    port="/dev/ttyAMA0"
    ser=serial.Serial(port, baudrate=115200, timeout=0.5)
    dataout = pynmea2.NMEAStreamReader()
    newdata=ser.readline()

    if newdata[0:6] == "$GPRMC":
        newmsg=pynmea2.parse(newdata)
        lat=newmsg.latitude
        lng=newmsg.longitude
        gps = "Latitude=" + str(lat) + "and Longitude=" + str(lng)
        print(gps)

运行代码时,出现此错误:

跟踪(最近一次通话):文件“ /usr/lib/python3/dist-packages/serial/serialposix.py”,第265行,在打开self.fd = os.open(self.portstr,os.O_RDWR | os.O_NOCTTY | os.O_NONBLOCK)PermissionError:[Errno 13]权限被拒绝:'/ dev / ttyAMA0'在处理以上异常期间,另一个发生异常:追溯(最近一次呼叫最近):文件“ /home/pi/Desktop/sa.py”,第8行,在ser = serial.Serial(端口,波特率= 115200,超时= 0.5)文件“ /usr/lib/python3/dist-packages/serial/serialutil.py”,第240行,在initself.open()文件“ /usr/lib/python3/dist-packages/serial/serialposix.py”,第268行,在打开引发SerialException(msg.errno,“无法打开端口{}:{}”。format(self._port,msg))serial.serialutil.SerialException:[Errno13]无法打开端口/ dev / ttyAMA0:[Errno 13]权限被拒绝:'/ dev / ttyAMA0'

python raspberry-pi gps raspberry-pi3
1个回答
0
投票

您应该使用sudo

© www.soinside.com 2019 - 2024. All rights reserved.