You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

BeagleBone Black连DHT11报错AttributeError: board无D18属性求解决

修复BeagleBone Black与DHT11连接的AttributeError问题及可行方案

错误原因

你参考的是树莓派的Adafruit指南,但BeagleBone Black的board模块引脚命名规则和树莓派完全不同:

  • D18是树莓派的引脚标识,BeagleBone的board模块中不存在该属性;
  • 代码中未定义的bbb.exec_command语句属于冗余代码,会引发额外错误。

可行解决方案

方法一:使用adafruit_dht库搭配正确的BeagleBone引脚

  1. 确认可用引脚
    先运行以下代码,查看board模块支持的所有BeagleBone引脚名称:

    import board
    print(dir(board))
    

    从输出中找到你实际连接的引脚对应的属性(比如P8_11对应的是board.P8_11)。

  2. 修正后的代码
    移除冗余语句,替换为正确的引脚,并添加错误捕获逻辑(DHT传感器易出现读取超时):

    import board
    import adafruit_dht
    import time
    
    # 替换为你实际连接的引脚属性,例如P8_11
    dht_device = adafruit_dht.DHT11(board.P8_11)
    
    try:
        temperature = dht_device.temperature
        humidity = dht_device.humidity
        print(f"Temp: {temperature:.1f}°C  Humidity: {humidity}%")
        if humidity is not None and temperature is not None:
            print(f'Temp={temperature:0.1f}°C  Humidity={humidity:0.1f}%')
        else:
            print('Failed to get reading. Try again!')
    except RuntimeError as e:
        # 捕获传感器读取超时等常见错误
        print(f"读取错误: {e}. 重试中...")
    finally:
        # 释放传感器资源
        dht_device.exit()
    

方法二:使用传统Adafruit_DHT库(无需board模块)

如果方法一仍有问题,可以改用更适配BeagleBone的旧版库:

  1. 安装库
    pip install Adafruit_DHT
    
  2. 代码实现
    直接使用GPIO编号(例如P8_11对应的GPIO编号是45):
    import Adafruit_DHT
    import time
    
    # 指定传感器类型和GPIO编号
    sensor = Adafruit_DHT.DHT11
    gpio_pin = 45  # P8_11对应的系统GPIO编号
    
    while True:
        # read_retry会自动重试读取,提高成功率
        humidity, temperature = Adafruit_DHT.read_retry(sensor, gpio_pin)
        if humidity is not None and temperature is not None:
            print(f'Temp={temperature:0.1f}°C  Humidity={humidity:0.1f}%')
        else:
            print('Failed to get reading. Try again!')
        time.sleep(2)
    

硬件连接确认

确保DHT11与BeagleBone的接线正确:

  • VCC引脚接BeagleBone的3.3V(请勿接5V,避免损坏传感器)
  • GND引脚接BeagleBone的GND
  • DATA引脚接你代码中指定的引脚(例如P8_11)

内容的提问来源于stack exchange,提问作者AlexCav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 22:44:55