Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MicroPython:OSError:[Errno 19]ENODEV_Python_Arduino_Sensors_Esp32_Micropython - Fatal编程技术网

MicroPython:OSError:[Errno 19]ENODEV

MicroPython:OSError:[Errno 19]ENODEV,python,arduino,sensors,esp32,micropython,Python,Arduino,Sensors,Esp32,Micropython,我尝试将ESP32连接到传感器GY91(MPU9250+BMP280)。 我正在使用这个库: 我使用了示例代码: import utime from machine import I2C, Pin from mpu9250 import MPU9250 i2c = I2C(scl=Pin(22), sda=Pin(21)) sensor = MPU9250(i2c) print("MPU9250 id: " + hex(sensor.whoami)) while Tru

我尝试将ESP32连接到传感器GY91(MPU9250+BMP280)。 我正在使用这个库:

我使用了示例代码:

import utime
from machine import I2C, Pin
from mpu9250 import MPU9250

i2c = I2C(scl=Pin(22), sda=Pin(21))
sensor = MPU9250(i2c)

print("MPU9250 id: " + hex(sensor.whoami))

while True:
    print(sensor.acceleration)
    print(sensor.gyro)
    print(sensor.magnetic)
    print(sensor.temperature)

    utime.sleep_ms(1000)
我将库(mpu6500、mpu9250、ak8963)导入我的设备ESP32。 但我在启动代码时出现了以下错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<string>", line 8, in <module>
  File "mpu9250.py", line 45, in __init__
  File "mpu6500.py", line 97, in __init__
  File "mpu6500.py", line 149, in whoami
  File "mpu6500.py", line 181, in _register_char
OSError: [Errno 19] ENODEV
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
文件“”,第8行,在
文件“mpu9250.py”,第45行,在_init中__
文件“mpu6500.py”,第97行,在_init中__
文件“mpu6500.py”,第149行,在whoami中
文件“mpu6500.py”,第181行,在寄存器字符中
OSError:[Errno 19]ENODEV
我用MicroPython编程的软件是uPyCraft,我也用Thonny。 硬件为ESP32和传感器GY-91(我通过3根电缆连接,Vin(传感器)连接至5V,SCL连接至针脚22,SDA连接至针脚21)


有人能帮我吗

你说你用三根电线连接GY-91-VIN、SCL和SDA。你没有提到GND

您必须同时连接GND和VIN才能使其工作。使用另一条跳线将ESP32上的GND连接到GND,然后重试


[编辑:Errno 19 ENODEV意味着模块找不到I2C传感器]

我投票结束这个问题,因为这不是关于软件的问题,本质上是一个电子问题。这不是软件问题。如果@Adri没有接地,那么就没有软件解决方案,这就是为什么他们的软件抛出异常,表明它找不到传感器的问题的答案。