Hallo, ich möchte mir demnächst eine Grafikkarte bauen, mit der ich Fernseh- geräte per RGB(SCART-Kabel) ansteuern kann. Als Kontroller möchte ich einen PIC-Mikrocontroller verwenden. Als Auflösung dachte ich an 256x128 => Das passt genau in 32Kx8 SRAMs. Conrad bietet gerade welche mit 12ns Zugriffszeit für 5,22 Euro an. Wenn ich 2 benutze könnte ich sogar Doublebuffering implementieren. Achja, ich wollte 256 Farben benutzen, wie im Beispiel von Benedikt. Jetzt habe ich noch Fragen zu dem Synchronisationssignal, welches über FBAS gesendet wird. Der Anschluss muss ja auf etwa 0,3V gehalten werden. Für das Sync-Signal wird der Anschluss auf 0V gelegt. Die vordere Schwazschulter ist 1,5us lang, HSync ist 4,7us und hintere Schwarzschulter 5,8usec lang? Stimmt das? Der HSync wird alle 64us gesendet. Die Farbdaten beginnen bei 10,5us nach beginn des HSync und gehen 52us lang. Die Auflösung entspricht dabei einfach, wie schnell ich die Farbdaten sende, richtig? Reicht es, wenn ich eine Auflösung von 0,1us benutze? VSync: geht 2,5 Zeilen lang. Wird FBAS also für 2,5*64us lang auf 0V gelegt? In der Wikipedia steht, dass Fernseher eine Auflösung von 550 Zeilen (eigentlich 625, aber 75 sind nicht zu sehen, wegen VSync) haben. Was passiert, wenn ich schon nach 128 Zeilen einen VSync sende? Passt das Gerät dann die Auflösung an? Oder geht es kaputt? Viele Grüße Sebastian
> Was passiert, wenn ich schon nach 128 Zeilen einen VSync sende? Das Bild "läuft durch". > Passt das Gerät dann die Auflösung an? Nein. > Oder geht es kaputt? Unwahrscheinlich. Einfache Modelle reagieren empfindlich auf ungeeignete Horizontalfrequenzen, aber eine unpassende Vertikalfrequenz sorgt einfach nur für ein vertikal durchlaufendes Bild.
> Das Bild "läuft durch".
Wenn der Fernseher nicht auf meine Sync Signale achtet,
wozu hat man diese dann?
Vergiss mal die Wikipedia, da ist nur die halbe Wahrheit drinne. Diese Seite hat mir bei der Entwicklung eines schwarzweis Pongs weitergeholfen. Ein Teil der Informationen ist aber aus einem anderen im Internet verfügbaren PDF entnommen. Trotzdem gut http://kabelwalter.de/DasFernsehen/videosignal.shtml
Hallo, Sebastian Hepp schrieb: >> Das Bild "läuft durch". > > Wenn der Fernseher nicht auf meine Sync Signale achtet, > wozu hat man diese dann? Damit das Bild syncron aufgebaut werden kann vielleicht? ;-) Der achtet schon auf Deine Sync-Signale. Der ist aber ein PAL-Fernseher für 625 Zeilen/50 Halbbilder und kein Multi-Sync-Monitor für beliebig erfundene Auflösungen. :-) Man kann üblicherweise statt eines Halbbildsignals auch ein Vollbildsignal mit 312,5 Zeilen/50 Vollbildern erzeugen. Selbst die halbe Zeile darf man auf- oder abrunden. Damit kommen übliche Fernseher durchaus zurecht. Gruß aus Berlin Michael
Sebastian Hepp schrieb: >> Das Bild "läuft durch". > > Wenn der Fernseher nicht auf meine Sync Signale achtet, > wozu hat man diese dann? Mit dem Sync wird ein freilaufender Oszillator synchroniert. Dessen Frequenz kannst Du damit nur in kleinen Grenzen anpassen. Den Sync vorher senden bedeutet, dass der Oszillator einfach nach gut Dünken weiterläuft. Das ist aber nicht genau. Daher das "durchlaufen".
Okay, der Link von Niels Keller hat mir schon viel weiter geholfen. Ich sende meine 128 Zeilen einfach doppelt (In jedem Halbbild). Dann habe ich 256 Zeilen, wovon effektiv nur 128 genutzt werden. Unten ist dann zwar ein schwarzer Rand, aber das ist nicht so schlimm. Wenn ich 256 Pixel/Zeile habe, macht das, bei 52us pro Zeile, 0,20...us. Wenn ich also ein 10MHz Oszillator an den Timer0 Anschluss des PICs dranhänge, müsste das doch funktionieren. Ich dachte auch an einen PIC, der alle Signale steuert und an einen weiteren, der den Speicher aus- wählt und schreibt. Wenn ich den Steuer-PIC mit 10MHz betreibe, dann bleibt nicht viel zeit für andere Dinge und mit einem 2. PIC kann ich das schön trennen. Der Steuer-PIC sendet einfach die Sync-Signale und die Adressen, die wiederum vom Multiplexer auf den SRAM gelegt werden. Der Multiplexer wird vom Daten-PIC gesteuert, welcher auch eine 2. Adresse auf den MUX legen kann und steuer, ob die SRAMS gerade ausgeben, oder beschrieben werden. Dabei wird das zu schreibende Signal zwar auch an den Fernseher gesendet, aber das ist ja nur kurz der Fall. Vielen Dank für eure Antworten Viele Grüße Sebastian
Kleine Verbesserung: Ich werde je PIC einen 10MHz Oszillator benutzen, aber nicht als Timer sondern als Takt. Ausserdem werde ich nur einen SRAM benutzen. Ansonsten wird die Platine wegen den Multiplexern und der zusätzlichen Logik zu groß. Ich werde wohl jetzt schon eine 2 seitige Platine benutzen müssen, um die ganzen Leitungen verlegen zu können. Bei einer Einseitigen wird das Layout einfach zu groß. Viele Grüße Sebastian
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.