Forum: Mikrocontroller und Digitale Elektronik VHF ATtiny85 NTSC zu PAL


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Lukas J. (Gast)


Bewertung
0 lesenswert
nicht 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?

von Jim M. (turboj)


Bewertung
0 lesenswert
nicht lesenswert
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
von Tom (Gast)


Bewertung
0 lesenswert
nicht 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.

von Rufus Τ. F. (rufus) (Moderator) Benutzerseite


Bewertung
0 lesenswert
nicht 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?

von Tom (Gast)


Bewertung
0 lesenswert
nicht 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?)

von Lukas J. (Gast)


Bewertung
0 lesenswert
nicht 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.

von Tom (Gast)


Bewertung
0 lesenswert
nicht lesenswert
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.

von S. R. (svenska)


Bewertung
0 lesenswert
nicht 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.

von Lukas J. (Gast)


Bewertung
0 lesenswert
nicht 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.

von Tom (Gast)


Bewertung
0 lesenswert
nicht 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.

von Lukas J. (Gast)


Bewertung
0 lesenswert
nicht lesenswert
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.

von Lukas J. (Gast)


Bewertung
0 lesenswert
nicht lesenswert
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.

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]
  • [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.