Qualität der Grafik

Ich möchte eine analoge Uhr in schwarz/weiß auf einem TFT abbilden. Dazu habe ich mit "screnn.circle" in einer Schleife einige schwarze Kreise gelegt. Das Ergebnis ist jedoch qualitativ schlecht, da nicht "deckend".
Ich habe nur Platz für eine 1,8" TFT. Gibt es da Besseres?

Um welches TFT handelt es sich denn, welche Library benutzt du für die Anzeige? Eventuell lässt es eine Bibliothek zu, Grafiken von einer SD-Karte nachzuladen, dies könnte man dann entsprechend mit einem Grafikprogramm anlegen.

Das einfachste wird in der Tat sein den Hintergrund als Bild zu laden und dann zu überschreiben

Das ist kein Fehler des Displays, sondern der Mal-Funktion.

gj99:
Ich möchte eine analoge Uhr in schwarz/weiß auf einem TFT abbilden. Dazu habe ich mit "screnn.circle" in einer Schleife einige schwarze Kreise gelegt.

Ich sehe Deinen Code nicht, aber es sieht ganz so aus, als wenn Du Deinen Kreisring so gemalt hast:

  • viele konzentrische Kreise von außen beginnend
  • im Radius jeweils um 1 kleiner werdend
  • mit Stiftfarbe schwarz und Füllfarbe weiß (oder transparent)

Du wolltest aber den Kreisring wohl eher so zeichnen:

  • einen großen Kreis mit Stiftfarbe schwarz und Füllfarbe schwarz
  • einen kleineren Kreis mit Stiftfarbe schwarz (oder weiß) und Füllfarbe weiß

Schau mal in Deiner Library nach, wie Du gefüllte Kreise malst!

Duh! Klar. Zwei gefüllte Kreise übereinander legen :slight_smile:

Das TFT-Modul ist dieses: http://eckstein-shop.de/18-128X160-SPI-TFT-LCD-Display-Modul-SD-Card

Als Library verwende ich die TFT aus der IDE. Ein Befehl "Gefüllte Kreise" finde ich in dieser Library nicht.
Ich habe daher - wie oben von jurs oben beschrieben - viele Kreise gezogen.

Die Idee mit der Grafik hatte ich auch, aber ich möchte keine SD-Karte verwenden, da das Display mal wasserdicht an einem Lenker montiert werden soll. Ich habe dann erste Versuche mit einem Speichermodul gemacht, bin aber mangels Fähigkeit (Anfänger) an der Bitschieberer gescheitert.

Gibt es eine Library für ein Speichermodul, welches Befehle wie "Bild laden" oder "Bild speichern" - Stichwort: RAMdrive - beinhaltet?

Gibt es eine Library für das Display mit mächtigeren Befehlen (z.B. "gefüllte Kreise" ) ?

gj99:
Als Library verwende ich die TFT aus der IDE. Ein Befehl "Gefüllte Kreise" finde ich in dieser Library nicht.

Also ich schon. Und ich habe weder das Display noch die Library.

Wenn ich mir das Beispielprogramm zum Zeichnen von Kreisen ansehe, dann funktioniert das Malen gefüllter Kreise, indem Du:

  • erst die Strichfarbe für die Umrandung setzt
  • dann die Füllfarbe für die Füllung des Kreises und dann
  • den Kreis malst

Code aus dem Programmbeispiel:

  // set the stroke color to white  ==> Strichfarbe setzen
  screen.stroke(255,255,255);

  // set the fill color to grey  ==> Füllfarbe setzen
  screen.fill(127,127,127);

  // draw a circle in the center of screen ==> Zeichnen
  screen.circle(screen.width()/2, screen.height()/2, 10);

Funktioniert das wirklich nicht so, wie es das Programmbeispiel in der Arduino-Referenz nahelegt?

Laut Doku ist das lediglich eine Erweiterung für die Adafruit TFT Library:

Also ähnlich wie die SD Lib ein Wrapper für SdFat ist

Du solltest also auch die normale Adafruit GFX Library verwenden können:

Siehe hier:

Beachte dass du neben GFX auch die ST7735 Lib brauchst