درع LCD (LCD Shield)¶
إن درع LCD (LCD Shield) هو شاشة TFT بتقنية SPI مقاس 1.8 بوصة ودقة 128x160 لعرض الإطارات الحية أو معلومات التصحيح مباشرةً من OpenMV Cam. وهو مثالي للروبوتات الميدانية والنشر المستقل.
للاطلاع على ورقة البيانات الكاملة والصور ومعلومات الطلب، راجع صفحة منتج درع LCD.
أبرز الميزات¶
شاشة TFT LCD مقاس 1.8 بوصة، دقة 128x160، RGB565
إضاءة خلفية قابلة للتحكم
مخطط الدبابيس¶
مرجع الدبابيس¶
الدبوس |
الوظيفة |
|---|---|
P0 |
SPI MOSI — خرج البيانات إلى الشاشة |
P2 |
ساعة SPI |
P3 |
اختيار شريحة SPI |
P6 |
التحكم في الإضاءة الخلفية |
P7 |
إعادة ضبط الشاشة |
P8 |
أمر SPI (اختيار البيانات/الأمر) |
خط 3.3 فولت |
يغذّي الشاشة |
خط GND |
أرضي مشترك |
ملاحظة
اقطع أثر اللحام على ظهر الدرع لفصل P6 عن الإضاءة الخلفية؛ عندئذٍ تبقى الإضاءة الخلفية مضاءة بشكل دائم.
الاستخدام¶
بث إطارات الكاميرا إلى شاشة SPI بدقة 128×160:
import csi
import display
import image
import time
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.RGB565)
csi0.framesize((128, 160))
lcd = display.SPIDisplay()
clock = time.clock()
while True:
clock.tick()
lcd.write(csi0.snapshot(), hint=image.CENTER | image.SCALE_ASPECT_KEEP)
print(clock.fps())
شغّل الإضاءة الخلفية عبر PWM للحصول على سطوع قابل للضبط. غلّف machine.PWM في صنف صغير للتحكم في الإضاءة الخلفية ومرّره إلى display.SPIDisplay عبر وسيطه backlight — يستدعي SPIDisplay الدالة backlight(value) على الكائن متى احتاج إلى تحديث المستوى:
import csi
import time
import display
import image
from machine import Pin, PWM
class PWMBacklight:
"""Drives a backlight pin with machine.PWM (0–100 %)."""
def __init__(self, pin, frequency=200):
self._pwm = PWM(Pin(pin), freq=frequency, duty_u16=0)
def backlight(self, value):
self._pwm.duty_u16(int(value * 65535 / 100))
def deinit(self):
self._pwm.deinit()
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.RGB565)
csi0.framesize((128, 160))
lcd = display.SPIDisplay(backlight=PWMBacklight("P6"))
lcd.backlight(50) # 0–100
clock = time.clock()
while True:
clock.tick()
lcd.write(csi0.snapshot(), hint=image.CENTER | image.SCALE_ASPECT_KEEP)
print(clock.fps())