前期準(zhǔn)備
python環(huán)境,mpremote安裝, VScode打開終端,mpremote連接開發(fā)板, 基本文件操作參考此帖:
BPI-Leaf-S3使用mpremote工具在VScode IDE中編程,基礎(chǔ)應(yīng)用示例。 ESP32-S3 & MicroPython
mpremote mount 命令應(yīng)用參考此貼:
BPI-Leaf-S3使用 mpremote 工具的 mount 命令,裝載本地文件夾到開發(fā)板中測試。ESP32-S3 & MicroPython
通過I2C連接ssd1306 OLED屏幕
BPI-Leaf-S3 全部可用GPIO引腳都可用作I2C 接口,默認(rèn)的使用GPIO15作為SDA信號線,GPIO16作為SCL時鐘線,同時板載一個JST SH 1mm 4-Pin連接座對應(yīng)連接了這兩個GPIO,使用此連接座可以更穩(wěn)固的連接I2C設(shè)備。
SSD1306 OLED屏幕模塊是一個很常見的可以使用I2C通信協(xié)議的屏幕模塊,最大輸出128*64 bit的圖像,無灰階,單顆像素僅有亮滅兩個狀態(tài),控制邏輯相對簡單,很適合入門學(xué)習(xí)單片機(jī)驅(qū)動屏幕顯示的項(xiàng)目。
接線參考
SSD1306 OLED | Board |
---|---|
GND | GND |
VCC | 5V |
SCL | 16 |
SDA | 15 |
Leaf-S3_board.jpg923x817 143 KB
MicroPython
下載ssd1306驅(qū)動腳本到本地。
micropython/ssd1306.py 驅(qū)動
在同一個目錄中新建一個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()
- 在此目錄中打開終端,輸入以下命令,需要將串行端口修改為設(shè)備所在的端口,可通過mpremote devs快速查詢:
python -m mpremote connect COM1 mount . exec "import main"
- 可以隨意在本地修改代碼,保存后在終端再次輸入命令即可在開發(fā)板的OLED屏幕上看到結(jié)果。
-
開源硬件
+關(guān)注
關(guān)注
8文章
208瀏覽量
29841 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5067瀏覽量
97609 -
Arduino
+關(guān)注
關(guān)注
188文章
6471瀏覽量
187231
發(fā)布評論請先 登錄
相關(guān)推薦
評論