Bu TFT ekran nasıl sürülür ? 24bit RGB

Başlatan eem7490, 14 Kasım 2019, 18:11:28

eem7490

Herkese merhaba.

WF39BTLASDNT0

Üstteki linkte bulunan üründen sipariş ettim. Bu ekranı sürmek istiyorum. Açıkçası sipariş ederken fazla incelemede bulunmamıştım ve şuan bu ekranı sürebilme ile ilgili baya kafam karıştı.
Sizlerin yardımlarını bekliyorum.

Daha önceden test amaçlı olarak SSD1289 driverı olan 3.5" bir TFT ekranı STM32 ile FSMC ve SPI ile sürmüştüm.

Şimdi bu ekranı test etmem gerekiyor güneş altında nasıl gözüküyor, renkleri parlak mı vs vs. Ancak hızlıca test edebileceğim bir yöntem bulamadım. Web sitesinde sürücü entegresinin "HX8278-A" olduğunu yazmışlar. Bunu üzerine üreticiden örnek kod talep ettim, "The model is without built-in controller IC, thus we don't have source code to offer. " dediler.

LCD'nin konnektörü 40 pinli ve bu pinler arasında 8x3=24bit şeklide RGB pinleri ve VSYNC HSYNC tarzı pinler mevcut. Biraz daha araştırma yaptım. Bulduğum şeyleri kısaca anahtar kelimeler olarak yazacak olursam; Parallel 24 bit RGB, DPI, RGB888, LDTC vs...

Sorum şu, benim bu LCD ile haberleşebilmem için ;
 1--> MCU ile LCD arasına bir sürücü entegresi koymam mı gerekiyor?
 2--> veya harici bir sürücü entegresi yerine STM32F429 gibi bir MCU kullanıp onunla direkt mi sürmeliyim?
 3--> Yoksa bunların hiç birine gerek yok mu? Yani normal, LCD sürmek için ekstra donanımı olmayan bir işlemci ile (yavaş da olsa ) ekrana bir görüntü basabilir miyim ?

İki gündür araştırıyorum, kafam allak bullak oldu. Üreticiye de bu içeriklere benzer bir mail attım ama henüz cevap vermediler.

Bilgisi olan arkadaşların yardımlarını bekliyorum.

Şimdiden yardımlarınız için teşekkür ederim.

Mucit23

Bence STM32F429 ve LTDC donanımı ile çalıştırabilirsiniz. Ekran çok hızlı VSYNC ve HSYNC sinyalleri ile tarama istediğinden dolayı yavaş bir işlemci ile yazılımsal olarak birşeyler elde etmek zor gibi görünüyor. STM32F429 Discovery den alıp üzerindeki LCD yi söküp daha büyük tft bağlayıp çalıştıranlar var.

Kabil ATICI

Özdisan ürünleri arasında SATOZ LCD ve bunları süren sürücü kartları vardı.
Bacak bağlantıları aynı olabilir. Sadece giriş olarak composite video girişini kullanıyor..

Aynı şekilde FT800 sürücü kartları vardı.

Ama yine de bu kartların sizin ekranınızı destekleyeceğinden emin değilim.
ambar7

HexfeT

Bunda kontrolcü yok. Kontrolcüsü olan bir LCD bakın derim. Siz datayı buffer a yollarsınız, o gerisini halleder. Ekrandaki bir şeyi değiştirmek gerekmedikçe dönüp bakmak gerekmez. Bunda lcd sürmek için özelleştirilmiş ve uyumlu bir arabirim gerekiyor.

leblebitozu

https://www.ozdisan.com/tft-lcd-led-displayler/tft/tft-kontrol-boardlari/OZD-FT800-CRV000-V1

Şu board işini görür tft pinleri seninkiyle uyumlu, spi ile bağlanıp test yapabilirsin

Sozuak

Bu kartlar kullanılacak  lcd panel çözünürlüğüne göre programlı geliyor diye biliyorum.  Pinler birebir tutsa da çözünürlük panele uymaz ise  görüntü karışık olur.

leblebitozu

#6
@Sozuak

üstünde mikro yok bu kartın, spi üzerinden komut paketleri göndererek kullanıyor, pinler uyuyorsa max 512x512 pixele kadar tft destekliyor.

FT800 çipi var üstünde.

https://www.ftdichip.com/Products/ICs/FT800.html

Sozuak

#7
Anladım tamam prescaler IC değil yani. Kontrolör deyince hep sabit tanımlı çipler geliyor. Touch-tft-audio  şeklinde hmi arabirim çipiymiş. Özdisanda  480x272 diye çözünürlük değeri sabit gibi verilmiş o bile yanlış yani.

tekosis

Peki bu lcd üzerindeki HX8278-A sürücü entegresisin görevi ne?

FT800 gibi bir sürücü kullanmayinca görüntünün ekranda kalabilmesi için sürekli tarama mı yapmak gerekiyor?
İlim ilim bilmektir, ilim kendin bilmektir, sen kendin bilmezsin, bu nice okumaktır.

Sozuak

LCD satır ve sütünlarda bulunan pikselleri yönetmek için farklı formatlarda elektriksel arabirim. Bazısı TDMS denilen diferansiyel veri hatları bazıları sizin lcd gibi paralel 3 renk için veri hatları sunuyor.

Prescaler çipleri vga-hdmi-dvi-DP-Kompozit gibi standart  bağlantılarla lcd arasında dönüşüm yapıyor.

Bu kartta gördüğüm kadarı ile lcd panelin sahip olduğu bağlantıyı mikrokontrolörlerdeki standart bağlantılarla kullanılabilir hale getiriyor.

Ben de yavaş yavaş tftlere geçmeliyim artık. Zamanı gelmiş. Geçen Beti deki liseden arkadaşımla konuşurken artık GLCD devri bitti eskisi gibi değil tftler ucuzladı daha çok tercih edilir oldu diyordu.

Bu tip arabirim kartları yoktu piyasada eskiden,  bende ilk defa gördüm. Böylelikle işin arabirim kısmı da ayağa düşmüş haliyle. Belki uzun zamandır varlar ama alınabilirlik imkanı önemli tabi.

eem7490

#10
Herkese verdiği cevaplar için teşekkür ederim.

Şimdi ben ne anladığımı anlatacağım. Belki benim gibi bu konuda kafası karışmış olanlar olayı anlayabilirler.

Bu tarz bir TFT ekranı sürmek için ya fiziksel katmanı olan bir işlemci kullanmam gerekiyor  ya da araya bir entegre koyup, onunla I2C, SPI veya paralel haberleşip ekrana data basmam gerekiyor.

Peki bunun sebebi ne?
Benim TFT LCD'im de bulunan HX8278-A isimli gömülü IC, her piksele data basmakla görevli iken, basılacak dataları hafızasında tutamıyor. Ekranda düzgün bir görüntü oluşabilmesi için, yani bizim bunu görebilmemiz için, çok yüksek hızlarda o datanın sürekli olarak basılması gerekiyor. Benim bahsettiğim TFT ekranda tam bir görüntüyü basmak için gereken hafıza 480x128x3 = 184320 byte yapıyor. Öncelikle bu data bir bufferda tutulmalı ve bunu sürekli ekrana piksel piksel basılması gerekiyor. Bu yüzden de arada bir tane IC kullanmamız gerekiyor ki bu datayı hafızasında tutsun ve sürekli olarak ekrana bassın.

Yani teknik olarak ekrana görüntü şu şekilde basılıyor anladığım kadarıyla;

Bir Resim (480x128x3 byte data) --> MCU --> Controller IC --> Driver IC;

Burada MCU hangi data basılacaksa Controller IC'sine bir bağlantı ile datayı gönderiyor ve sonra kendi işine bakıyor.
Controller IC aldığı datayı bir bufferda tutup, bu datayı TFT'nin Driver IC'sine sürekli yüksek bir hızla piksel piksel gönderiyor.
Driver IC ise gelen bilgiyi o piksel için renge dönüştürüyor.

STM32F429 gibi bir işlemci için ise MCU ve Controller IC aynı çipte olmuş oluyor.

Doğru mu anlamışım? Yanlışım var ise düzeltin lütfen.






leblebitozu

#11
Üzerinde kontroller olmayan TFT'leri sürmek için ekrandaki görüntüyü barındıracak bellek (frame buffer) ve bu bellekten pixelleri oluşturmak için gerekli pixel clock ve hsync+vsync (ya da pixel clock+de) sinyallerini üretecek çip ya da tft arabirimi olan bir mcu/mpu kullanmak gerekli. Bunlar olmadan yapılır mı,yapılabilir tabi yüksek hızlı işlemci ya da fpga gibi donanımlarla ama iş yükü fazla olacaktır.

tekosis

Diyelimki projemde mcu + ssd1963 kullanacağım bu durumda lcd üzerindeki dahili sürücünün modeli beni bağlar mı?
İlim ilim bilmektir, ilim kendin bilmektir, sen kendin bilmezsin, bu nice okumaktır.

leblebitozu

@tekosis

low level sürücüyü kastediyorsan hayır bağlamaz, ssd1963'ün tarama frekansı ve memory'si kurtarıyorsa hepsini sürebilirsin.

tekosis

İlim ilim bilmektir, ilim kendin bilmektir, sen kendin bilmezsin, bu nice okumaktır.