mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR erzeugt VGA-Signal: Timing VSYNC vs. HSYNC


Autor: Sebastian B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo allerseits,

wie auch schon viele vor mir erzeuge ich mit dem AVR ein VGA-Signal. In 
meinem Fall ist es ein auf 25MHz uebertakteter ATmega644P der 
640x400Pixel @74,irgendwas Hz erzeugt und ausschliesslich Text mit einem 
8x8 Pixel Font darstellt. Das ganze in schwarz/weiss und ueber ein 
externes Schieberegister um ein Pixel je Prozessortakt zu erreichen.

Das Ganze funktioniert soweit auch ganz gut, ich habe mir die 
benoetigten Sync-Timings nach der GTF 
<http://www.vesa.org/public/GTF/GTF_V1R1.xls>; ausgerechnet und nachdem 
ich das Problem mit dem 2 Takte Jitter in der Interruptlatenz verstanden 
habe bekomme ich auch ein sehr schoen stehendes Bild.

Nur ein Problem bleibt: Bei vielen TFTs (komischerweise nicht allen) 
wird das ganze Bild (nach "Auto-Set") um 8-10 Zeichen nach rechts 
verschoben angezeigt... laesst sih natuerlich von Hand korrigieren, aber 
sollte ja eigentlich nicht so sein. Ich bin aber der Meinung das mein 
HSYNC-Puls richtig ist und auch die front/back porches recht genau 
eingehalten werden (<2% Fehler). Werde alles noch ein Paarmal 
durchmessen, aber vielleicht kann mich jemand zu den beiden Fragen die 
ich da noch offen habe aufklaeren:

1. Wann (innerhalb einer Zeile) muss der VSYNC-Puls einsetzen? Im Moment 
mache ich das so grob irgendwann in der richtigen Zeile. Ist das 
wichtig? Habe nichts dazu gefunden.

2. Haben die Sync-Polaritaeten jetzt eine Bedeutung oder nicht? Ich habe 
das so verstanden das sie nur im Zusammenhang mit CVT-Timings Bedeutung 
haben... aber die sind ja auch nur minimal anders...

Wie ihr seht fehlt mir da noch ein bisschen der Ueberblick, fuer den ein 
oder anderen Tipp waere ich sehr dankbar :-)

Sebastian

Autor: Benedikt K. (benedikt) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sebastian B. schrieb:

> Nur ein Problem bleibt: Bei vielen TFTs (komischerweise nicht allen)
> wird das ganze Bild (nach "Auto-Set") um 8-10 Zeichen nach rechts
> verschoben angezeigt...

Der Autoset basiert vor allem auf der Analyse des Bildinhalts. Da die 
meisten Betriebssysteme einen hellen Hintergrund haben, funktioniert die 
Erkennung sehr gut. Bei reinem Text auf schwarzem Hintergrund dagegen 
nicht.

> 2. Haben die Sync-Polaritaeten jetzt eine Bedeutung oder nicht? Ich habe
> das so verstanden das sie nur im Zusammenhang mit CVT-Timings Bedeutung
> haben... aber die sind ja auch nur minimal anders...

Bei heutigen Monitoren nicht mehr. Low Aktiv ist daher mehr oder weniger 
Standard.

Autor: Sebastian B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Benedikt,

wenn's tatsaechlich am Bildinhalt haengt bin ich ja vielleicht aus dem 
Schneider. Ich meine mich zu erinnern das mit mehr Text (= weniger 
schwarz) auf dem Bildschirm das Autoset besser geklappt hat. Ist mir 
aber nicht in den Sinn gekommen das es daran liegen koennte. Werde das 
verifizieren sobald ich Montag wieder an der Schaltung bin!

Danke,
Sebastian

Autor: Charly B. (charly)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Sebasian,

ich wuerde auch gerne damit 'spielen',  besteht die moeglichkeit an
einen schaltplan & soft zu kommen? vielen dank & viele gruesse
Charly

Autor: Sebastian B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Charly,

im Moment bin ich noch heftig am Entwickeln und Aendern, aber naechste 
Woche muss ich das Projekt ohnehin abgeben (ist fuer die Uni), dann kann 
ich's auch gerne mal zeigen.

Heute muss ich aber erstmal rausfinden ob es denn jetzt alles so laeuft 
wie es sollte :-)

Sebastian

Autor: Sebastian B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Benedikt:

Ich habe das ganze heute nochmal verifiziert: die Autoset-Probleme 
rührten doch nicht vom Bildinhalt her sondern von einem Bug im 
Timer-Setup: Die erste Zeile wurde um ca. 25% Zeilendauer verzögert 
ausgegeben. Scheinbar hat sich der Monitor bei der Bildanalyse 
ausschließlich die erste Zeile angeschaut... die war dann auch huebsch 
in der Mitte, nur alle anderen nicht. Mit richtigem Timing klappt auch 
das Autoset und es ist alles hübsch in der Mitte :-)

Sebastian

Autor: Sebastian B. (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hier schonmal ein - leider nicht besonders guter - "Screenshot".

Autor: Sebastian B. (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Und so sieht der Prototyp fuer die Schaltung aus. Eigentlich erfreulich 
simpel :-)

Autor: Dominique Görsch (dgoersch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wow sieht klasse aus. Gibts noch Schaltplan und Source? ;)

Autor: Sebastian B. (sfreak) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Source und Schaltplan: Beitrag "AVR VGA Terminal"

Autor: Dominique Görsch (dgoersch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Super, Danke.

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.