STM32F429'da LCD yi devre dışı bırakma

Başlatan Mucit23, 22 Temmuz 2015, 10:22:14

Mucit23

Arkadaşlar selamlar.

Elimde Tabletlerden sökülme 7" TFT lcd ekranlar var. Birkaç tanesinin PDF 'ini buldum. Kullanılabilir durumdalar. Bunları nasıl değerlendiririm diye düşünürken aklıma STM32F429'daki LTDC modülüne bağlamak geldi.

Youtube'da örnekler var. LTDC donanımı 7" TFT" ye göre configüre edilirse çalıştırabiliyor. Fakat Kit üzerindeki LCD ekran kafamı karıştırdı. 7"TFT bağlanırsa eğer bu lcd 'nin RGB pinlerine, VSYNC, HSYNC CE, PXCLK, DE gibi pinler ortak olacak.

Youtube'daki örneklerde baktım LCD yi sökmüşler. Ama ben sökmek istemiyorum çünkü LCD çift taraflı yapışkan bant ile kite yapıştırılmış. Hiç yerinden oynamıyor. LCD'ye zarar vermeden sökmem çok zor.

Şunu öğrenmek istiyorum. Kit üzerindeki LCD'nin sürücü çipi ILI9341. Bu çipi İlk açılışta SPI üzerinden configüre etmek gerekiyor. Ben LCD yi sökmesem fakat açılıştada SPI üzerinden configüre etmesem 7" TFT sürerken ILI9341 zarar görürmü? ILI9341'i configüre etmesem kit üzerindeki lcd çalışmayacaktır fakat 7" TFT sürerkende Pxclk frekansı bayağı yükselecek. LCD nin zarar görüp görmeyeceğinden emin değilim.

Ne düşünürsünüz bu konuda?

F493

Görmez. Ben üzerinde kendi LCD'si varken yapmak istediğiniz deneyi yaptım.

Mucit23

Teşekkürler. Siz çalışma yapmışsınız herhalde. Aklıma takılan tek bir konu var. LTDC donanımı hafıza olarak SD_Ram kullanıyor. LTDC yi 7" lcd ye göre configüre ettikten sonra sd_ram ile ilgili ayarlara dokunuyormuyuz? Çünkü boyut büyüyünce gerekli hafızada artacak. Bu ve bunun dışında nelere dikkat etmek gerekiyor?

F493

Ram ile ilgili bir çalışma yapmadım daha. Fakat ben 4.3" için  LCD_Config dosyasi içinde
//  Timing configuration
  //  Configure horizontal synchronization width
  LTDC_InitStruct.LTDC_HorizontalSync = 40;
  //  Configure vertical synchronization height
  LTDC_InitStruct.LTDC_VerticalSync = 9;
  // Configure accumulated horizontal back porch
  LTDC_InitStruct.LTDC_AccumulatedHBP = 42;
  // Configure accumulated vertical back porch
  LTDC_InitStruct.LTDC_AccumulatedVBP = 11;
  // Configure accumulated active width
  LTDC_InitStruct.LTDC_AccumulatedActiveW = 522;
  // Configure accumulated active height
  LTDC_InitStruct.LTDC_AccumulatedActiveH = 283;
  // Configure total width
  LTDC_InitStruct.LTDC_TotalWidth = 524;
  // Configure total height
  LTDC_InitStruct.LTDC_TotalHeigh = 285;

bu kısmı çözünürlüğe göre ayarlamanız gerekiyor. Yukarıdaki ayarlar 4.3" 480*272 için yapıldı siz kendi LCD'nize göre ayarlama yapın.
İlk aşamada Ram ile uğraşmayın sadece TFT'yi çalıştırın yazı yazdırın, 565 formatında 16bit yeterlidir. Ayrıca elinizdeki TFT nin Backligbt ihtiyacı kaç mA o önemli. Ben dışarıdan 12V adaptör ile seri dirençle 40mA'e ayarlamıştım eğer fazla akım verirseniz backlight bozulur ve ekranda bir şey göremezsiniz.

Mucit23

#4
7"TFT modüllerin şemasına bakayım. Yalnız bazı beslemeleri sağlamak lazım. incelediğim şemalarda -7V,+16V gibi gerilimler lcd ye uygulanıyor. Bunları üreten bazı çipler var. Biraz tablet anakartlarına bakayım. Onlarda bulabilirsem süper olur.

Timing konusunda böyle bir site buldum
http://martin.hinner.info/vga/timing.html
Bütün değerler verilmiş. Buradan yardım alabilirim sanırım.

leblebitozu

@Mucit23

Sdram ile ilgili ayarı değiştirmen gerekmiyor verdiğin ofset adresine göre, configürasyonda verilen parametrelere göre kendisi yer ayırıyor. Ama lcd datasheet'e bakıp back,front porch,pixel clock gibi değerleri bulman gerekir. VGA timing'leri LCD'lere uymaz.