python - 运行时错误: No access to/dev/mem

标签 python raspberry-pi gpio pwm

我一直在尝试使用 Python GPIO PWM 来控制连接到我的 RPi 的一组 LED。当我运行 Python 脚本时,出现以下错误:

Traceback (most recent call last):
  File "cycle.py", line 12, in <module>
    r = GPIO.PWM(f, RED)
RuntimeError: No access to /dev/mem.  Try running as root!

我尝试以 root 身份运行脚本(既使用 sudo 又以 root 身份实际登录)。所有其他 GPIO 功能都正常工作,我尝试通过 apt 进行更新并卸载/重新安装 python-rpi.gpio。这是我一直在运行的代码。

import RPi.GPIO as GPIO
import time

GPIO.setmode(GPIO.BOARD)

RED = 11

f = 100

r = GPIO.PWM(RED, f) <== Where it crashes

r.start(0)
try:
    while 1:
        for dc in range(0, 101, 5):
            r.ChangeDutyCycle(dc)
            time.sleep(0.1)

        for dc in range(100, -1, 5):
            r.ChangeDutyCycle(dc)
            time.sleep(0.1)

except:
    pass

r.stop()
GPIO.cleanup()

它基于发现的示例 here ,但仍然可能存在错误。我现在已经为此苦苦挣扎了很长一段时间,因此我们将不胜感激所提供的任何帮助。谢谢!

最佳答案

上面代码的问题是我在尝试使用它之前忘记将输出设置为 RED。该错误消息无助于解决此问题。下次,我需要记住在尝试使用 PWM 引脚之前将其设置为输出。

关于python - 运行时错误: No access to/dev/mem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18389013/

相关文章:

python - 无法从网页中抓取类别标题

opencv - 属性错误 : MultiTracker_create() Not Found in cv2 on Raspberry Pi

Linux/AM3352 : setting gpio via sysfs seem not working

c - 为什么这个函数不能正确地打开和关闭 LED?

python - 为什么它只打印 6 个字段而不是 7 个 python

python - vscode python 格式化 autopep8 禁用 E266

python - 在 While 循环内跳出 Try except

c++ - opencv2/photo/photo.hpp c++​​ 的条件包含取决于 OpenCV 版本

c++ - 如何用c在树莓派上设置时间和日期?

c - 在不使用 linux API 的情况下获取 gpio 的值。汇编代码有办法吗?