mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Wie bekomme ich einen schoenen Kreis aufs LCD


Autor: Jochen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also ich hab ein LC-Display der mit nem M16 betrieben wird. Linien und 
Rechtecke und Texte gehen. Aber mit dem Kreis hab ich so meine Probleme. 
So ganz rund schaut er halt nicht aus.
Hat irgendjemand vielleicht schon eine Funktion in C geschrieben die nen 
schoenen Kreis zeichnet.

Danke
Jochen

Autor: Andre Adrian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jochen,

das Problem hatte ich 'damals' auch schon mal, das lag aber einfach 
daran das die Pixel nicht gleich hoch wie breit waren...

Gruss

Andre

Autor: Tipper (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Dein LC-Display muß ein Grafik-Display sein, alpha-numerische Displays 
sind nur für Buchstaben und Zahlen.

Autor: Jochen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tripper:
Das ist schon ein Grafik display. Hast du vielleicht eine Funktion die 
einen Kreis macht

Autor: thkaiser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einen Kreis kann man auf zweierlei Methoden beschreiben:

A) X=SIN(a)*R ; Y=COS(a)*R
X,Y sind die Koordinaten der zu setzenden Punkte, a läßt man von 0..360° 
laufen. Da aber eine Sinus-Funktion nicht immer zur Verfügung steht, 
kann man es auch mit

B) R^2 = X^2+Y^2 versuchen. Allerdings muß man hier 4 Quadranten 
durchlaufen und die Formel entsprechend umstellen. Berechnungsroutinen 
fürs Quadrat oder die Wurzel gibts sogar in Assembler.

Man kann es sich auch vereinfachen, indem man nur einen Viertel-Kreis 
berechnet und dann jeweils über X- und Y-Achse spiegelt - geht 
schneller.

Noch ein kleiner Tipp am Rande: Es reicht, wenn man ca. 90 Punkte des 
Kreises berechnet und diese Punkte via "LINE" miteinander verbindet.
Schlagt mich aber nicht, wenn die o.g. Formeln nicht ganz korrekt sind - 
zuletzt habe ich Kreise "von Hand" mit dem C-64 programmiert.... ist 
schon ne Weile her ;-)

Autor: Sven (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@thkaiser

Kannst Du eine Quelle für gut umgesetzte Berechnungsroutinen für Quadrat 
und Wurzel in Assembler angeben? Ich will zwar keine Kreise malen, es 
würde mich aber sehr interessieren.

Danke, Sven

Autor: thkaiser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sorry, kann ich nicht mit dienen. Aber Google sollte einiges ausspucken.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.