VHF ATtiny85 NTSC zu PAL

Gast #4767065
Lesenswert?

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?
Gast #4767162
Lesenswert?

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.
Persönliche Seite #4767185
Lesenswert?

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?
Gast #4767209
Lesenswert?

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?)
Gast #4767244
Lesenswert?

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.
#4767269
Lesenswert?

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.
Gast #4767280
Lesenswert?

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.
Gast #4767297
Lesenswert?

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.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren