演示视频
前期准备
python环境,mpremote安装, VScode打开终端,mpremote连接开发板, 基本文件操作参考此帖:
BPI-Leaf-S3使用mpremote工具在VScode IDE中编程,基础应用示例。 ESP32-S3 & MicroPython
mpremote mount 命令应用参考此贴:
BPI-Leaf-S3使用 mpremote 工具的 mount 命令,装载本地文件夹到开发板中测试。ESP32-S3 & MicroPython
通过I2C连接ssd1306 OLED屏幕
BPI-Leaf-S3 全部可用GPIO引脚都可用作I2C 接口,默认的使用GPIO15作为SDA信号线,GPIO16作为SCL时钟线,同时板载一个JST SH 1mm 4-Pin连接座对应连接了这两个GPIO,使用此连接座可以更稳固的连接I2C设备。
SSD1306 OLED屏幕模块是一个很常见的可以使用I2C通信协议的屏幕模块,最大输出128*64 bit的图像,无灰阶,单颗像素仅有亮灭两个状态,控制逻辑相对简单,很适合入门学习单片机驱动屏幕显示的项目。
接线参考
SSD1306 OLED | Board |
---|---|
GND | GND |
VCC | 5V |
SCL | 16 |
SDA | 15 |
MicroPython
-
下载ssd1306驱动脚本到本地。
micropython/ssd1306.py 驱动 -
在同一个目录中新建一个python脚本文件,命名为
main.py
,输入以下代码并保存文件:
from machine import Pin,I2C
from ssd1306 import SSD1306_I2C
import time
sda_pin=Pin(15,Pin.PULL_UP)
scl_pin=Pin(16,Pin.PULL_UP)
i2c = I2C(1,sda=sda_pin, scl=scl_pin, freq=800_000)
print(i2c.scan())
oled = SSD1306_I2C(128, 64, i2c, addr=0x3c)
oled.fill(0)
oled.text("Hello World.",10,30,1)
oled.show()
- 在此目录中打开终端,输入以下命令,需要将串行端口修改为设备所在的端口,可通过
mpremote devs
快速查询:
python -m mpremote connect COM1 mount . exec "import main"
- 可以随意在本地修改代码,保存后在终端再次输入命令即可在开发板的OLED屏幕上看到结果。
BPI-Leaf-S3 开发板(ESP32S3) - Banana Pi Wiki (banana-pi.org)
OEM&OEM 定制服务请邮件联系: [email protected]