Hallo,
ich besitze das Xlinx Board Spartan 3e Starter Kit:
http://www.xilinx.com/support/documentation/boards_and_kits/ug230.pdf
An diesem Board befindet sich eine VGA-Schnittstelle, die ich gerne
einmal mit Verilog benutzen würde:
Angenommen, ich möchte nur ein einfaches weißes Bild haben, reicht es in
diesem Fall, wenn ich einfach VGA_RED, VGA_GREEN und VGA_BLUE auf high
setze?
Marvin
Danke für die Hilfe.
Ich habe mal auf der Zeichnung, die ich aus den Bildern aus dem Link
zusammengestellt habe, die Signalveräufe aufgezeichnet.
Was passiert, wenn ich das genauso mache und bei den 3 Farben jeweils
zur richtigen Zeit high anlege?
Marvin
Hallo,
ich habe die Signale jetzt in Verilog verwirklicht. Ich habe mal ein
Screenshot von einer Simulation geamacht und angehängt.
Es wäre nett, wenn ihr mir sagen könntet, ob das so richtig ist oder was
verändert werden muss.
Marvin
Danke für die Antwort, aber ich verstehe das nicht ganz:
Wie soll ich HSync und RGB (VGA_Red, VGA_Green und VGA_Blue) auf schwarz
setzen?
Meinst du auf low setzen? Aber das macht nicht wirklich viel Sinn.
Vielen Dank für die Hilfe,
Marvin
Ja, in der Backporch+SyncPuls+Frontporch Zeit darf keine Farbinformation
vorliegen, ergo müssen RGB auf Low/"0" gesetzt werden. In der Zeit wird
der Elektronenstrahl auf die neue Zeile ausgerichtet und verlässt
sozusagen den sichtbaren Bereich des Bildes. Eine Erklärung dazu findet
sich auch in den XilinxBoard Manuals zum S3 und S3AN Board
Anbei noch ein Link zu den SignalTimings, wenn es mal was andere als
640*480 sein soll:
http://www.tinyvga.com/vga-timing
Gruß
"Ja, in der Backporch+SyncPuls+Frontporch Zeit darf keine
Farbinformation
vorliegen, ergo müssen RGB auf Low/"0" gesetzt werden."
Gut, vielen Dank, ich habe es verbessert.
Das gilt aber doch nur bei dem horizontalen Signal, oder?
Marvin
@Marvin:
Nur als Hinweis fürs nächste Mal, das hier steht über der Eingabebox für
jedes Posting:
# JPEG-Dateien (.jpg) nur für Fotos und Scans verwenden
# Schaltpläne, Screenshots usw. als PNG oder GIF anhängen
Hier ist ein Link zu einer leicht verständlichen VGA-Ansteuerung. Für
Dich zwar leider in VHDL, aber es ist eh nicht sehr viel Code :)
http://www.derepas.com/fabrice/hard/
@Marvin
> Gut, vielen Dank, ich habe es verbessert.> Das gilt aber doch nur bei dem horizontalen Signal, oder?
Beim Vsync auch.
Du solltest in jeder Austastlücke das Signal auf 0 setzen. Je nach
Eingangsschaltung des Monitors wird das zur Ermittlung des Bezugspegels
für die restlichen Signalinformationen benötigt. Das Bild könnte
ansonsten nicht deinen Erwartungen entsprechen ;).
http://de.wikipedia.org/wiki/Klemmspannung
Danke für die Antworten.
Mittlerweile glaube ich aber fast, dass der VGA-Port an meinem Board
einfach kaputt ist, alle anderen Schnittstellen kann ich mit
Leichtichkeit ansteuern nur nicht VGA! :-(
Lösungsidee:
Man kann ja leicht eine Erweiterungsplatine an das Board anschließen.
Kann ich einfach 5 Pins von der Platine nehmen und dadran wie im
Dateianhang gezeigt (Verbindungen und Widerstände) einen VGA-Port
dranhängen?
Würde das klappen?
Sind das dann auch die richtigen Spannungen?
Danke für die Hilfe,
Marvin
Vesuch doch einfach mal die RGB/SYNC-Pins per simplen Verilog/VHDL
Programm mit den Buttons/Switches zu verbinden und schau mal mit
LEDs/Oszi/Spannungsmesser, ob Signale bei gedrückten Buttons
anliegen. Falls ja, dann weisst Du, dass wohl Dein Programm
fehlerhaft ist; VGA wird ja nur an den Monitor angeschlossen,
da geht er selten was kaputt.
Gruss
Jörg
Ich habe die Signale mal nach außen gelegt und ein Oszi drangehalten.
Die Signale sehen genauso aus, wie sie aussehen müssen.
Mir ist es wirklich lieber nicht den VGA-Port auf dem Board zu benutzen,
sondern einen eigenen.
Spricht irgendetwas dagegen mit 3 270 Ohm und 2 82,5 Ohm Widerständen
den VGA-Anschluss direkt an die nach außen führenden Anschlüsse des
Bordes anzuschließen?
Kai
Hallo,
@Kai: Wer bist du? Was soll dieser Blödsinn??
@all:
Erst einmal vielen Dank für neuen Antworten.
Ich habe gerade ein paar Verilog-Module geschrieben, die meine 5
VGA-Signale zu der ansteckbaren Platine legen. Nach meinem Messgerät
stimmen die Signale.
Ich habe gerade auch die Verbindungenzwischwen VGA-Port und Controller
getestet, die sind tatsächlich tod, deshalb ist es unmöglich etwas vom
Comtroller zum Port zu senden.
Ich möchte genauso wie ich es schon weiter oben erwähnt habe einen
eigenen VGA-Port an das Board anbauen.
Ich habe auch schon oben den Schlatplan gepostet.
Spricht etwas sagegen?
Marvin
Hast du auch wirklich die richtigen Pins angeschlossen und auch das
passende FPGA eingestellt? Poste mal die *.ucf-Datei.
> Ich möchte genauso wie ich es schon weiter oben erwähnt habe einen> eigenen VGA-Port an das Board anbauen.> Ich habe auch schon oben den Schlatplan gepostet.>> Spricht etwas sagegen?
Nicht wirklich. Die Signalqualität könnte durch den zusätzlichen Stecker
aber etwas leiden. Eventuell würde es sich lohnen gleich noch die
Farbtiefe zu erhöhen. Etwa so wie hier:
http://home.freeuk.com/fpgaarcade/displaytest.htm
Das könntest du aber auch einfach mal so draufspielen um zu schauen ob
ein Bild generiert wird. Dann hast du in deinem Code noch einen Fehler
;).
So, habe ich draufgespielt. Es klappt nicht, also ist wirklich ein
Fehler in der Verbindung.
Eine Frage noch:
wikipedia: "Der Signalpegel beträgt (außer für die Datenleitungen) 0,7
V."
Auf dem Board ist glaube ich eine Spannung von ca. 3V.
Sind die eingebauten Widerstände nur dafür da die Spannung etwas kleiner
zu machen?
Marvin
@ Marvin (Gast)
>wikipedia: "Der Signalpegel beträgt (außer für die Datenleitungen) 0,7>V."
Stimmt.
>Auf dem Board ist glaube ich eine Spannung von ca. 3V.>Sind die eingebauten Widerstände nur dafür da die Spannung etwas kleiner>zu machen?
Wahrscheinlich.
http://javiervalcarce.es/wiki/Binary-Weighted_Digital_To_Analog_Converter
MFG
Falk