# micropython-ssd1327 **Repository Path**: waveshare/micropython-ssd1327 ## Basic Information - **Project Name**: micropython-ssd1327 - **Description**: SSD1327 128x128 4位灰度 OLED 显示屏 MicroPython 驱动程序 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-06 - **Last Updated**: 2026-05-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # MicroPython SSD1327 [English](README.md) 这是一个适用于 SSD1327 128x128 4 位灰度 OLED 显示屏的 MicroPython 库,支持 I2C 或 SPI。 ## 示例 运行示例前,请先将 `ssd1327.py` 复制到你的设备上。使用 Thonny IDE 时,可以打开 `ssd1327.py`,选择 **File > Save as...**,然后选择 **MicroPython device**,并保存为 `ssd1327.py`。也可以在 Thonny 的文件视图中右键 `ssd1327.py`,将它上传到设备的 `/` 目录。使用 WebREPL 或你常用的编译和部署流程也可以。 ### I2C 示例 ```python from machine import Pin, I2C import ssd1327 # ESP32 S3 ZERO i2c = I2C(0, scl=Pin(2), sda=Pin(1), freq=400000) # Raspberry Pi Pico # i2c = I2C(0, scl=Pin(1), sda=Pin(0), freq=400000) # 初始化显示屏(地址通常是 0x3C 或 0x3D) display = ssd1327.SSD1327_I2C(128, 128, i2c, addr=0x3D) # WaveShare 1.5inch OLED Module display.fill(0) # 清空屏幕 display.text('Hello World', 0, 0, 15) # 以最高亮度(15)绘制文字 display.show() ``` ### SPI 示例 ```python from machine import Pin, SPI import ssd1327 # ESP32 S3 ZERO spi = SPI(1, baudrate=10000000, polarity=0, phase=0, sck=Pin(13), mosi=Pin(11)) display = ssd1327.SSD1327_SPI(128, 128, spi, dc=Pin(8), res=Pin(9), cs=Pin(10)) display.fill(0) display.text('SPI Display', 0, 0, 15) display.show() ``` ### 使用 examples 中的示例 [/examples](/examples) 目录中的文件是示例代码片段,它们会使用一个已经初始化好的 `display` 对象。要尝试其中某个示例,请先使用上面的 I2C 或 SPI 初始化代码,然后把示例文件的内容追加到 `display = ...` 这一行后面。例如,要使用 `examples/hello_world.py`,你的脚本可以这样写: ```python from machine import Pin, I2C import ssd1327 i2c = I2C(0, scl=Pin(2), sda=Pin(1), freq=400000) display = ssd1327.SSD1327_I2C(128, 128, i2c, addr=0x3D) # 将 examples/hello_world.py 的内容粘贴到下面。 display.fill(0) for y in range(0, 12): display.text('Hello World', 0, y * 8, 15 - y) display.show() ``` 你可以将拼接后的脚本保存为 `main.py`,也可以根据自己的部署方式粘贴到 REPL 或启动脚本中。 部分示例在粘贴片段前需要额外导入模块。例如,`examples/rotating_3d_cube.py` 会使用 `math`,所以需要在脚本顶部附近添加 `import math`。 ## 硬件 * [WaveShare ESP32-S3 Zero](https://www.waveshare.com/esp32-s3-zero.htm) * [Raspberry Pi Pico](https://core-electronics.com.au/raspberry-pi-pico.html) * [WaveShare 1.5inch OLED Module, SPI/I2C interface](https://www.waveshare.com/1.5inch-oled-module.htm) ## 链接 * [micropython.org](http://micropython.org) * [micropython docs](http://docs.micropython.org/en/latest/) * [Adafruit Ampy](https://learn.adafruit.com/micropython-basics-load-files-and-run-code/install-ampy) ## 许可证 本项目基于 [mcauser/micropython-ssd1327](https://github.com/mcauser/micropython-ssd1327) 修改,原项目使用 MIT License 授权。 基于 [MIT License](http://opensource.org/licenses/MIT) 授权。