ssd1306 --- ไดรเวอร์ OLED¶
โมดูลนี้ให้ไดรเวอร์สำหรับจอแสดงผล OLED ที่ใช้ SSD1306 รองรับการเชื่อมต่อสองแบบ: I2C (SSD1306_I2C) และ SPI (SSD1306_SPI) ทั้งสองสืบทอด API การวาดจาก SSD1306 ซึ่งห่อหุ้ม framebuf.FrameBuffer1
ตัวอย่าง:
from machine import I2C
import ssd1306
i2c = I2C(2)
oled = ssd1306.SSD1306_I2C(128, 64, i2c)
oled.fill(0)
oled.text("Hello", 0, 0)
oled.show()
คลาส¶
- class ssd1306.SSD1306(width: int, height: int, external_vcc: bool)¶
คลาสพื้นฐานสำหรับจอแสดงผล OLED รุ่น SSD1306 คลาสย่อยต้องกำหนดค่า
self.framebufและจัดเตรียมเมธอดwrite_cmd,write_data,write_framebufและpoweronอาร์กิวเมนต์:
width-- ความกว้างของจอแสดงผลเป็นพิกเซลheight-- ความสูงของจอแสดงผลเป็นพิกเซล (ต้องเป็นผลคูณของ 8)external_vcc--Trueหากใช้แหล่งจ่าย VCC ภายนอกFalseเพื่อเปิดใช้งานปั๊มชาร์จภายใน
แอตทริบิวต์อินสแตนซ์:
width-- ความกว้างของจอแสดงผลเป็นพิกเซลheight-- ความสูงของจอแสดงผลเป็นพิกเซลexternal_vcc-- แฟล็ก VCC ภายนอกpages-- จำนวนเพจที่มีความสูง 8 พิกเซล (height // 8)
- init_display() None¶
ส่งลำดับคำสั่งเริ่มต้นไปยังจอแสดงผล ล้างบัฟเฟอร์เฟรม และรีเฟรช เรียกโดยอัตโนมัติโดย
__init__
- invert(invert: int) None¶
สลับสีของจอแสดงผล
invert--0สำหรับเอาต์พุตปกติ1สำหรับเอาต์พุตที่กลับสี ใช้เฉพาะบิตที่มีนัยสำคัญน้อยที่สุด
- pixel(x: int, y: int, col: int) None¶
ตั้งค่าสีของพิกเซลเดี่ยว
x-- พิกัดคอลัมน์y-- พิกัดแถวcol-- ค่าสี (0หรือ1)
- class ssd1306.SSD1306_I2C(width: int, height: int, i2c: machine.I2C, addr: int = 0x3C, external_vcc: bool = False)¶
ไดรเวอร์ SSD1306 แบบ I2C สืบทอดจาก
SSD1306อาร์กิวเมนต์:
width-- ความกว้างของจอแสดงผลเป็นพิกเซลheight-- ความสูงของจอแสดงผลเป็นพิกเซลi2c-- ออบเจ็กต์machine.I2C(หรือที่เข้ากันได้) ที่ถูกกำหนดค่าแล้วaddr-- ที่อยู่อุปกรณ์ I2C แบบ 7 บิต (ค่าเริ่มต้น0x3C)external_vcc--Trueสำหรับ VCC ภายนอกFalseเพื่อใช้ปั๊มชาร์จภายใน
- class ssd1306.SSD1306_SPI(width: int, height: int, spi: machine.SPI, dc: machine.Pin, res: machine.Pin, cs: machine.Pin, external_vcc: bool = False)¶
ไดรเวอร์ SSD1306 แบบ SPI สืบทอดจาก
SSD1306ใช้อัตราสัญญาณนาฬิกา SPI คงที่ที่ 10 MHzอาร์กิวเมนต์:
width-- ความกว้างของจอแสดงผลเป็นพิกเซลheight-- ความสูงของจอแสดงผลเป็นพิกเซลspi-- ออบเจ็กต์pyb.SPI(หรือที่เข้ากันได้)dc-- พินเลือกข้อมูล/คำสั่งres-- พินรีเซ็ตcs-- พิน Chip-selectexternal_vcc--Trueสำหรับ VCC ภายนอกFalseเพื่อใช้ปั๊มชาร์จภายใน