ما ST7789V؟
ST7789V مشغّل source وgate لشاشات TFT LCD من Sitronix مع ذاكرة إطار مدمجة (GRAM). ولأن الصورة موجودة داخل المشغّل، يرسل المتحكم الدقيق البكسلات المتغيرة فقط ولا يحتاج مخزن إطار خاصًا به. لهذا تنتشر وحدات ST7789V على ESP32 وSTM32 وRP2040 ولوحات فئة Arduino.
أي واجهة أستخدم؟
الواجهة | الأطراف | الاستخدام النموذجي |
|---|---|---|
4-wire SPI | 4–5 | معظم الوحدات؛ توصيل بسيط، حتى ~60 MHz |
8080 متوازٍ (MCU) | 12–20 | تحديث أسرع للشاشة كاملة على متحكمات بـ FSMC/FMC |
RGB | 18–24 | نادر في الوحدات الصغيرة؛ تحديث شبيه بالفيديو |
مشكلات التشغيل الأولي الشائعة
- شاشة بيضاء أو سوداء: تحقّق من توقيت إعادة الضبط ومن أن SLPOUT يتبعه تأخير 120 ms قبل DISPON.
- ألوان خاطئة: بدّل INVON/INVOFF وبت BGR في MADCTL.
- إزاحة الصورة: اضبط بداية العمود/الصف الصحيحة للوحات 240×240 و135×240.
- تمزق الصورة: استخدم طرف TE إذا كانت وحدتك تُخرجه.
راجع دليل حل مشكلة الشاشة البيضاء في TFT للحصول على قائمة تحقق خطوة بخطوة.
كود تهيئة ST7789V
// Reference init sequence. Adjust MADCTL, inversion and offsets per panel.
write_cmd(0x01); // SWRESET
delay_ms(150);
write_cmd(0x11); // SLPOUT
delay_ms(120);
write_cmd(0x3A); write_data(0x55); // COLMOD: 16-bit RGB565
write_cmd(0x36); write_data(0x00); // MADCTL: rotation / RGB order
write_cmd(0x21); // INVON: most IPS panels need inversion
write_cmd(0x13); // NORON
write_cmd(0x29); // DISPON
delay_ms(20);دعم المكتبات لـ ST7789V
| المكتبة | المشغّل / الفئة | ملاحظات |
|---|---|---|
| TFT_eSPI (Arduino) | ST7789_DRIVER | |
| LovyanGFX (Arduino / ESP-IDF) | lgfx::Panel_ST7789 | |
| ESP-IDF esp_lcd | esp_lcd_new_panel_st7789() (built in) | |
| ملاحظة | تحتاج كثير من لوحات ST7789 إلى تفعيل عكس الألوان. |
User_Setup_ST7789V.h · LGFX_ST7789V.hpp. الأطراف قيم مبدئية؛ ونرسل تحديثات بالبريد عند إضافة إعدادات مُختبرة.
لوحات تطوير تستخدم ST7789V
وحدات شاشات تستخدم ST7789V

شاشة TFT LCD مقاس 2.8" بدقة 240×320، SPI (PJ2801H22-23H10P200)
- المقاس
- 2.8"
- الدقة
- 240×320
- السطوع
- 200 nit

شاشة TFT LCD مقاس 2.4" بدقة 240×320، SPI (PJ2401I24-22H30P250)
- المقاس
- 2.4"
- الدقة
- 240×320
- السطوع
- 250 nit

شاشة TFT LCD مقاس 2.4" بدقة 240×320، MCU (PJ2401I02-22H38P300)
- المقاس
- 2.4"
- الدقة
- 240×320
- السطوع
- 300 nit

شاشة TFT LCD IPS مقاس 2.4" بدقة 240×320، SPI / MCU / RGB (PJ2401H28-22H45P200)
- المقاس
- 2.4"
- الدقة
- 240×320
- السطوع
- 200 nit

شاشة TFT LCD IPS مقاس 2.4" بدقة 240×320، SPI / MCU / RGB (PJ2401H25-22H45P200)
- المقاس
- 2.4"
- الدقة
- 240×320
- السطوع
- 200 nit

شاشة TFT LCD مقاس 2" بدقة 240×320، SPI / MCU (PJ2003L02-22H22P300)
- المقاس
- 2"
- الدقة
- 240×320
- السطوع
- 300 nit
حل المشكلات والأسئلة الشائعة لـ ST7789V
لماذا الألوان معكوسة في شاشة ST7789؟
تحتاج معظم لوحات IPS بمشغّل ST7789V إلى تفعيل عكس العرض (الأمر 0x21، INVON). إذا بدت الألوان كصورة سالبة، بدّل العكس؛ وإذا تبادل الأحمر والأزرق، غيّر بت RGB/BGR في MADCTL (0x36).
ما سرعة ساعة SPI التي يتحملها ST7789V؟
تعمل كثير من الوحدات بثبات عند SPI بسرعة 40–62.5 MHz مع أسلاك قصيرة. ابدأ عند 20 MHz، وتأكد من الصورة، ثم ارفع السرعة مع مراقبة التلف.
لماذا صورة 240×240 مُزاحة بمقدار 80 بكسل؟
ذاكرة الإطار في ST7789V بحجم 240×320. في لوحات 240×240 تحتاج بعض اتجاهات التدوير إلى إزاحة صف أو عمود (غالبًا 80) في CASET/RASET؛ وتوفّر معظم المكتبات ذلك كإعداد rowstart/colstart.