i2c - 初始化连接到 Raspberry Pi Pico 的 ssd1306 OLED 时出错

标签 i2c micropython raspberry-pi-pico

发生什么事了? i2c.scan() 返回 [60],因为它应该:

from machine import Pin, I2C
import ssd1306

i2c = I2C(0, sda=Pin(0), scl=Pin(1), freq=400000)
oled=ssd1306.SSD1306_I2C(128, 64, i2c)
Traceback (most recent call last):
    File "<stdin>", line 6, in <module>
    File "/lib/ssd1306.py", line 110, in __init__
    File "/lib/ssd1306.py", line 36, in __init__
    File "/lib/ssd1306.py", line 73, in init_display
    File "/lib/ssd1306.py", line 101, in show
    File "/lib/ssd1306.py", line 119, in write_data
OSError: [Errno 5] EIO

最佳答案

使用pico_ssd1306驱动程序并运行以下代码:

from machine import Pin, I2C
from ssd1306 import SSD1306_I2C

i2c = I2C(0,sda=Pin(16),scl=Pin(17),freq=40000)
oled = SSD1306_I2C(128,64,i2c)

oled.fill(0)
oled.text("Hello",0,0)

关于i2c - 初始化连接到 Raspberry Pi Pico 的 ssd1306 OLED 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70643803/

相关文章:

docker - docker 容器内的 I2C

c 仅将前 8 个字节传递给函数

c - 堆栈粉碎检测到STM32f7

mqtt - 如何检查Micropython umqtt客户端是否已连接?

c++ - CMake 未启用异常

go - AM2320 传感器 : CRCs doesn't match, 来自传感器的 CRC(0)

Linux i2c eeprom/sys/bus/i2c/...../eeprom 文件是只读的

c - 从用户区读取 32k i2c eeprom