Jump to content

Recommended Posts

Geschrieben

Haben wir auch schon drüber nachgedacht, ist halt viel Aufwand dort eine brauchbare API zu machen. Die Daten pixelweise übergeben wäre ja nicht gerade einfach zu benutzen.

 

Dieses Teil hier hat eine tolle API: http://www.reichelt.de/LCD-Module-Touch-Grafik/EA-EDIP-TFT43A/3/index.html?;ACTION=3;LA=2;ARTICLE=86675;GROUPID=3011;artnr=EA+EDIP-TFT43A

 

Sowas müsste man dann selbst bauen. Das wäre dann natürlich ein Brick, ein Bricklet hat da nicht genug Speicher für.

Geschrieben

Also Displays gehen heute auch deutlich billiger (den Smartphones sei dank^^). Es gibt ne ganze Menge TFT-Displays sowohl als Breakoutboards als auch als fertige Arduino-Shields im Preisbereich von 15€ - 50€. Touchscreen haben auch die meisten (sind ja Handy-Displays).

 

Interessant ist z.B. das hier von Adafruit (gibts als Shield und auch als Breakout-Board, 40€). Da gibts sowohl ne gute Dokumentation dazu als auch einen Haufen Open-Source-Code auf dem man aufbauen könnte.

Geschrieben

Wie gesagt, das LCD selbst ist nicht das Problem.

 

Nur wie soll die API aussehen die ihr nutzt? Einfach ein "SetPixel(x, y, color)" wäre trivial, sowas ist schnell zu machen. Aber ist das wirklich sinnvoll?

 

Dann ist halt die Frage was man an primitiven braucht: Text schreiben, Kreise und Rechtecke malen, Bitmaps übertragen, Bargraphen darstellen, Animationen? Was ist da das Minimum, was muss man haben, was ist nice-to-have?

Geschrieben

So ähnlich wie Canvas bei Lazarus/Delphi:

Es gibt Methoden, wie TextOut, FillRect und der gleichen

 

Und auch die Möglichkeit Pixel direkt zu Setzten.

 

Z.b. könnte man bei TextOut die Position für x und y einfach angeben und dann den Text.

 

Außerdem könnte man hier noch weitere Einstellungs Möglichkeiten über Objekte geben. Z.B. welche Schrift Größe, Schrift Farbe und der gleichen.

 

Z.B. könnte das eine Allgemeine Struktur im Grund Objekt sein, oder man übergibt sein eigene Struktur als Parameter.

 

Ich hoffe ihr könnt mir folgen. Schaut euch mal Canvas von Lazarus/Delphi an. Das ist ein gutes Beispiel, wie einfach sowas gehen könnte.

Geschrieben

Ah okay, darum gehts euch.

Also ich für meinen Teil finde Text und einfache geometrische Formen sind essentiell. Bilder darstellen halte ich auch für wichtig, wird aber viel Aufwand sein. Begrüßen würde ich auch Messwerte von TF-Bausteinen direkt graphisch darzustellen zu können. Animationen z.B. bräuchte ich nicht. Edit: Nice-to-have: Sehr rudimentäres Benutzerinterface, also Buttons (Rechteck mit Text drin), Checkboxen, etc. falls ihr ein Modul mit Touchscreen verwendet.

 

Sehr schön fände ich die Möglichkeit, die API so auszugestalten, dass man selbst einfach neue Funktionen hinzufügen kann.

Also es gibt z.B. die Funktion rechteck(x,y) und ich kann dann die Library erweitern um eine Funktion rechteck_mit_loch(xa, ya, xi, yi, d), die auf rechteck(x,y) aufbaut. Auf die Weise könnte dann auch die Community ihre Funktionen in den Standard-Umfang einpflegen und den so erweitern.

Ist natürlich die Frage, wo ihr das unterbringen wollt. Das Konzept würde ja nur dann einfach funktionieren, wenn diese Funktionen in den Bindings ungesetzt sind (OnDevice-API mal außen vor). Ich weiß jetzt aber nicht, ob das evtl. in den Microcontroller vom Brick gehört, dort wäre es vmtl. performanter, oder?

 

Edit:

Danke pluto, Canvas unter Delphi/Lazarus hatte ich gerade auch als Vorbild im Kopf :D

Geschrieben
Edit: Nice-to-have: Sehr rudimentäres Benutzerinterface, also Buttons (Rechteck mit Text drin), Checkboxen, etc. falls ihr ein Modul mit Touchscreen verwendet.

So ähnlich stelle ich es mir auch vor.

 

Sehr schön fände ich die Möglichkeit, die API so auszugestalten, dass man selbst einfach neue Funktionen hinzufügen kann.

Es könnte Grund Funktionen geben, auf die andere Funktionen wieder aufbauen. Z.b. könnte man so mit der Linen Funktion eine Polygon Funktion erstellen.

 

Danke pluto, Canvas unter Delphi/Lazarus hatte ich gerade auch als Vorbild im Kop

Ich finde, dass ist das beste Beispiel, was mir bis jetzt über den Weg gelaufen ist.

 

Um es kurz zu Sagen: Es muss einfache Methoden/Funktionen geben und Datenstrukturen um eben Einstellungen wie Hintergrund Farbe, Rahmen Farbe und der gleichen zu speichern.

 

Am Anfang würde es ja völlig ausreichen, wenn ich nur Farbigen Text ausgeben kann. Später könnten weitere Funktionen schritt weise hinzugefügt werden.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...