Bunte Bilder

Moderator: suntri

Antworten
Benutzeravatar
JeanLuc7
Fast schon Admin
Fast schon Admin
Beiträge: 675
Registriert: 09.02.2011, 16:07
Wohnort: Berlin
Kontaktdaten:

Bunte Bilder

Beitrag von JeanLuc7 »

Während des Bildröhrenprojekts kam hier im Forum der Vorschlag, eine Art Frequenzanalyzer zu bauen. Sowas ist einerseits durchaus machbar, andererseits aber eben auch eine gewisse Herausforderung, wenn man auf Philips-Grundplatten beschränkt bleiben will. Dieser Artikel beschäftigt sich zuerst einmal mit der Vorstufe - der Anzeige der Balken auf dem Bildschirm.

Es war recht schnell klar, dass ich nicht mit NE558-Bausteinen operieren wollte (wie beim Videospiel des EE3023), weil das ganze auch nach etwas aussehen sollte. Auf der anderen Seite sollte es aber auch kein hochkomplexer Computer und schon gar kein Fertigbaustein sein. Ich habe immer mal wieder nach Ideen gesucht und bin dann im Mikrocontrollerforum fündig geworden. Dort wurde eine "Farbgrafikkarte" auf Mikrocontrollerbasis (Atmel ATMega) vorgestellt, die sehr gute Voraussetzungen bot: 256 Farben in einer Auflösung von 256x236 Punkten; früher hat man in solchen Auflösungen epische Spiele auf dem C64 gespielt. Ein paar Anpassungen waren nötig, weil der damals (2006) benutzte Speicherbaustein heute schon wieder zum Alteisen gehört.

Die Anleitung barg noch eine Herausforderung: ich wollte das Ausgangssignal als Composite Video haben, da meine Bildröhrenplatine einen passenden Eingang dafür bot. Die "Grafikkarte" führte die drei Farbausgänge und ein Sync-Signal nach außen (RGB). Wenn man das einfach mischt, erhält man dummerweise bloß noch Graustufen. Dafür war daher eine zweite Schaltung auf Basis des AD724 erforderlich, die RGB in Composite Video umwandelt. Wer sich ein bisschen mit Farbfernsehen auskennt, weiß, dass bei Composite Video ein 4,43-MHz-Farbträger benötigt wird, auf den die Farben wechsel- und phasenweise aufmoduliert werden. Die dabei entstandene Wandlerplatine enthält daher einen passenden Quarz und besteht ansonsten nur aus Standardbauteilen.

Das Ergebnis ist, wie ich finde, recht beeindruckend. Die Grafik kann über die im ATMega vorhandene serielle Schnittstelle angesprochen werden, es können Linien, Balken, Texte und sogar ganze Bilder ausgegeben werden. Sie ist zudem auch ausreichend schnell. Und sie funktioniert an jedem Fernseher oder Monitor mit gelbem Cinch-Eingang.

Ich habe nun als Demo einmal einen Balkengenerator programmiert - und ich freue mich sehr drauf, wenn das erste Mal eine echte Frequenzanalyse gezeigt wird. Das steht nun als nächstes auf meiner Liste. Und dann lassen sich damit natürlich ganz tolle andere Sachen machen - wenn ich an die Original-Philips-Schaltungen mit LDR und NTC denke, dann kann man damit schöne Langzeitüberwachungen aufbauen und und und.

Hier gibt's auch ein Video dazu.

Infos zum Bild: Die Platine rechts ist die "Grafikkarte" mit RGB-Ausgang (Flachbandkabel). Die Pins am unteren Rand (direkt am quadratischen Sockel des Mikrocontroller) sind die serielle Schnittstelle. Die kleine Platine unten links ist ebenfalls ein Mikrocontroller - derzeit noch ohne Funktion. Der soll später einmal die Analyse übernehmen. Oben links ist die Wandlerplatine von RGB nach Composite Video - mit einem Huckepack-SMD-IC, weil es das in normaler Bauform nicht gibt.

Es grüßt herzlich
JeanLuc7
Dateianhänge
IMG_5284.JPG
IMG_5284.JPG (212.88 KiB) 4006 mal betrachtet
IMG_5284.JPG
IMG_5284.JPG (212.88 KiB) 4006 mal betrachtet
IMG_5289.JPG
IMG_5289.JPG (148.95 KiB) 4006 mal betrachtet
IMG_5289.JPG
IMG_5289.JPG (148.95 KiB) 4006 mal betrachtet
Benutzeravatar
JeanLuc7
Fast schon Admin
Fast schon Admin
Beiträge: 675
Registriert: 09.02.2011, 16:07
Wohnort: Berlin
Kontaktdaten:

Touchscreen

Beitrag von JeanLuc7 »

Salut Bastelfreunde,

nachdem ich von den Möglichkeiten dieser Farbgrafikkarte recht beeindruckt war, kam schnell der Wunsch auf, es zu einem "Mikrocontroller Lab 2.0" weiterzuentwickeln. Ich habe vor einem Jahr bereits das alte "Master Lab 6400" in einer AVR-Mikrocontroller-Variante nachgebaut, aber es erweist sich im Echteinsatz als zu sperrig - alle Schaltungen müssen auf einer getrennten, zweiten Grundplatte aufgebaut werden. Außerdem benutzt es zu viele Eingänge des Mikrocontrollers für eigene Zwecke, so dass man eben doch sehr eingeschränkt ist in seinen Möglichkeiten.

Das neue Lab sollte alle Ausgänge dem Bastler zur Verfügung stellen und als einziges Ausgabeelement nun einen Farbbildschirm bekommen. Dort kann man Texte und Bilder darstellen, die acht LEDs des Original-Labs können genauso wie die drei bunten LEDs und die Textanzeige komplett auf dem Bildschirm simuliert werden. Zu diesem Thema werde ich bei Gelegenheit - wenn das Projekt die ersten Bilder erlaubt - einen eigenen Thread erstellen.

Der aus China gelieferte Bildschirm enthielt auch eine Touchscreen-Einheit (resistiv, erkennt also nur eine Berührung gleichzeitig), so dass ich zu experimentieren begann, was man denn damit so alles anfangen kann. Das erste Ergebnis möchte ich hier vorstellen - eine touch-bedienbare Aufteilung des Bildschirms in Felder. Später soll sie einmal sechszeilige Menüs erlauben, die man mit dem Finger bedienen kann.

Dafür ist einzig und allein ein Mikrocontroller vom Typ ATMega88 erforderlich. Atmel selbst stellt die Grundlagen für die Ansteuerung bereit - letztlich handelt es sich um die Messung verschiedener Widerstandswerte zwischen den vier Anschlüssen des Touchscreens, von denen je einer eine Seite repräsentiert. Der Mikrocontroller rechnet das dann um in das zugehörige Feld und sendet es an die angeschlossene Grafikeinheit. Raster und bunte Felder werden komplett in der Grafikeinheit erzeugt, der Touch-Controller sendet über seine serielle Schnittstelle nur kurze Befehle, aus denen die Grafikeinheit dann die grün ausgefüllten Felder macht.

Anbei auch ein Link zu einem Youtube-Video, das den Touchscreen in Aktion zeigt. Er ist noch nicht kalibriert - an entsprechender Software arbeite ich gerade. Daher sind die Treffer manchmal auch noch daneben. Insgesamt sieht es aber schon recht gut aus.

Es grüßt
JL7
Dateianhänge
IMG_5333.JPG
IMG_5333.JPG (195.88 KiB) 3894 mal betrachtet
IMG_5333.JPG
IMG_5333.JPG (195.88 KiB) 3894 mal betrachtet
IMG_5316.JPG
IMG_5316.JPG (217.71 KiB) 3894 mal betrachtet
IMG_5316.JPG
IMG_5316.JPG (217.71 KiB) 3894 mal betrachtet
Antworten

Zurück zu „AVR“