Ankündigung

Einklappen
Keine Ankündigung bisher.

ILI9341 (TFT) Lib Konnekting tauglich machen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    ILI9341 (TFT) Lib Konnekting tauglich machen

    Morgen!

    Für die Ansteuerung des TFT auf meinem Controllerboard würde ich gern die Adafruit Lib nutzen, da diese an sich gut funktioniert und einen ordentlichen Funktionsumfang hat.

    Das Problem ist jedoch wie so oft bei Libs das Timing.
    Selbst kleine Operationen brauchen 4-5 ms, große gerne auch mal >100ms.

    Das liegt am SPI Bustakt von max 12MHz (f/4) die der SAMD21 leisten kann und am Lib-Design.

    Grundsätzlich sollte die Last auf meinem Controller beherschbar sein, nur sorgen blockierende Aufrufe eben zu ggf, verlorenen KNX-Telegrammen.

    Daher hatte ich folgende Idee:

    Die Lib so abändern, dass die elementare Grundfunktion "setPixel" nicht mehr direkt ausgeführt wird, sondern in eine Queue läuft. Die Aufrufe, z.B. "fillrect" sind dann sehr schnell, weil sie nur im RAM operieren.

    Dann eine neue, zyklisch zu rufende Funktion die sagen wir 200µs lang die Queue abarbeitet und dann zurückkehrt.

    Was meint ihr? Sollte klappen oder?
    OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

    #2
    ja, sollte.
    Oder, du gibst eine angepasste Version mit dem Sketch aus. Angepasst: in jede Funktion die länger braucht ein paar Knx.task() einbauen... direkt in die Lib.

    Kommentar


      #3
      Ist die Standard SPI.h blocking? Das wäre ja eine Verschwendung....

      Kommentar


        #4
        Zitat von Sonnengruesser Beitrag anzeigen
        Ist die Standard SPI.h blocking? Das wäre ja eine Verschwendung....
        Ja und Ja. Geht wohl auf den kleinen µC wohl auch nicht anders. Mit ESP32 und SAMD51 geht wohl mehr.

        Ist an sich auch kein Drama, Da SPI.Transfer nur ein paar µs braucht.

        Aber in einem "tft.FillRectangle" stecken halt hunderte SPI.Transfer..
        Zuletzt geändert von Ing-Dom; 21.01.2020, 10:08.
        OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

        Kommentar


          #5
          ja da schau her...

          https://blog.adafruit.com/2018/12/12...gfx-gains-dma/
          OpenKNX www.openknx.de | NanoBCU und OpenKNX-HW verfügbar

          Kommentar

          Lädt...
          X