Hallo, ich habe diesen Code gefunden https://github.com/cnlohr/avr_vhf Nun hab ich das mal ausprobiert. Auch ohne »Antenne« habe ich noch gut 10cm Sendeweite, was für meinen Zweck ausreichend ist. Ein Signal ist eindeutig vorhanden (einschalten des ATtiny85 führt dazu, dass der Schnee sich in ein schwarzes Bild mit Zeilendurchlaufenden Strichen ändert und Ausschalten bzw. Entfernen vom TV wieder zu Schnee). Mein Problem ist jetzt, der Code ist für NTSC und dadurch passt nichts. Da NTSC und PAL ja eigentlich für Farbübertragungen sind und der Code nur für S/W ist, liegt so wie ich das sehe, der Unterschied ja nur in der Bildwiederholrate. Bei NTSC 60Hz und bei PAL 50Hz. Was/Wie muss ich das anpassen, damit ich 50Hz im Ausgangssignal habe?
Da sind jede Menge hart gecodete Werte im Source Code. Davon dürften ca. 50% nicht für PAL passen, da IIRC alle Zeiten (Horizontal, Vertikal etc) nicht passen.
:
Bearbeitet durch User
Grüße, ein PAL (F)BAS Signal hat 625 Zeilen je 64µs. Ein NTSC (F)BAS Signal hat 525 Zeilen je 63.55µs. Timing ist also nahezu identisch und vermutlich nicht das Problem. Der Bildaufbau und damit die Sync-Pulse sind aber anders.
Tom schrieb: > Timing ist also nahezu identisch und vermutlich nicht das Problem. Der > Bildaufbau und damit die Sync-Pulse sind aber anders. Was magst Du damit meinen? Das Timing ist unterschiedlich - 60 statt 50 Hz Bildwechselfrequenz für Halbbilder, das fängt nicht jeder analoge Fernseher, da läuft das Bild durch. Die geringfügige Abweichung bei der Zeilenfrequenz dürfte so eine Analogglotze noch potentiell wegstecken können. Wo siehst Du jetzt Unterschiede im Bildaufbau?
Da das Timing innerhalb der Zeile fast gleich ist, die Zeilenzahl aber anders, sollte es ausreichend sein einfach an einem Limit der einzelnen for-Schleifen der Linien zu schrauben. Er hat 6+6+6+39+2+128+92 = 279 Zeilen im Quellcode... 279 verstehe ich allerdings nicht ganz, ich hätte 262 erwartet?! Hab ich was übersehen? Jedenfalls würde ich für PAL BAS einfach in einem der for-Loops 50 Zeilen drauf legen. (bzw. 33 da er irgendwie schon 17 zuviel hat?)
Tom schrieb: > Jedenfalls würde ich für PAL BAS einfach in einem der for-Loops 50 > Zeilen drauf legen. Nun. So sind wir der Lösung ein Stück näher. Aus dem Beispiel-Video weiß ich ja, wie das Endergebnis aussehen soll und ich muss sagen, so kann man etwas mehr erkennen. ich glaube aber ein Problem ist auch, dass die Zeilen zu kurz sind, also der TV mit dem Signal zu früh in die nächste Zeile springt.
Du solltest übrigens nicht auf die Antennen verzichten. Die zwei Drähte, von denen einer länger sein muss, sind nötig, um die drei unterschiedlichen Signalpegel zu erzeugen.
Sowohl PAL als auch NTSC sind nur Farbstandards und haben an sich nix mit dem Timing zu tun. Man kann die beliebig kombinieren (z.B. nutzt Brasilien PAL-M, also mit 525 Zeilen und 60 Hz). Ältere Spielekonsolen haben oft nur einen zentralen Oszillator, von dem sowohl die CPU als auch die Ausgabe gesteuert wird und arbeiten gerne mit PAL-60. Viele Analogglotzen (zumindest die moderneren) verstehen beide Timings, auch wenn sie das Farbsystem nicht können. Manchmal kann man das auch im Menü einstellen. Ansonsten musst du den Code anpassen, aber das wurde schon gesagt.
Tom schrieb: > Du solltest übrigens nicht auf die Antennen verzichten. Ja gut. Das wusste ich nicht. Wie kurz kann ich die denn ungefähr machen? Ich will möglichst platzsparend arbeiten. Aber danke für den Tipp. Zusammen mit dem addieren von 33 in einer for-Schleife und dem drastischen erhöhen der LINETIME (von 11 auf 550), kann man schon schon recht deutliche Buchstaben erkennen, die in einer dezenten Wellenlinie von oben nach unten flattern. Allerdings habe ich die längere Seite der Antenne mit GND und die kürzere mit 4 verbunden. Wenn ich beide mit 3 und 4 verbinde bekomme ich so ein flattern wie ohne Antenne.
Dass du das nicht selbst wusstest mag schon sein, aber es steht doch deutlich in seiner Anleitung. Mach doch die Kabel so wie er es vorschlägt und in etwa so lang wie in seinem Video. Wenn es mal funktioniert kannst du ja immernoch das Kürzen anfangen. Ausserdem spielt die Orientierung der Antenne schon auch eine Rolle - spiel mal damit. (sieht man ja auch im Video). Das erhöhen der LINETIME auf auf 550 ist vermutlich Blödsinn wenn er schreibt dass 7..20 OK ist. Ausserdem ist Timer0 afaik ein 8 Bit Counter. 550 ist also eigentlich 38.
Tom schrieb: > 550 ist also eigentlich 38. Interessant, dennoch ist es bisher die einzige Zahl mit der es funktioniert. Auch wenn ich bei LINETIME 38 einsetzte hab ich das Ergebnis nicht.
Ich habe noch ein bisschen mit den Werten rumgespielt, aber es scheint keine einfache Möglichkeit zu geben das Signal zu PAL umzuwandeln. Außer flimmernden Buchstaben geht wohl nichts.
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.