Forum: Mikrocontroller und Digitale Elektronik Microcontroller mit VGA Grafik


von Laborratte (Gast)


Lesenswert?

Ich würde mal gerne an einen MSP430F2013 (oder ATTiny 2313) einen VGA 
TFT Monitor anschließen.
Was muss ich machen damit ich ein 640 * 480 Punkte Bild mit mindestens 
16 Farben bekomme?

Der µC soll dem Grafikadapter einfache Kommandos geben.
Zuerst nur setze an der Stelle X,Y einen Punkt in der Farbe Z.

SOS wer kann helfen?

von Sebastian (Gast)


Lesenswert?

Helfen kann hier sicherlich Benedikt, falls er das gerade liest.
Ansonsten: Entweder Ulrich Radig's CPLD-Grafikkarte, oder ein Epson 
S1D7xx Chip.

von Benedikt K. (benedikt)


Lesenswert?

Ich habe schon gelesen, aber das Thema wurde hier schon oft genug 
durchgekaut, irgendwann habe auch ich keine Lust mehr die Fragen zu 
beantworten.

von Sebastian (Gast)


Lesenswert?

Sorry. Übrigens, ich meinte S1D17xx.

von Laborratte (Gast)


Lesenswert?

S1D17000 bringt mich kein Stück weiter da ich
nur einen 19'' TFT Monitor wie man ihn für 199€ in jedem Computerladen 
kaufen kann ansteuern will.

Ich müsste die 3 Signale für R,G,B und Hsync und Vsync erzeugen.

Ich denke mal bei 640 * 480 und 256 Farben brauche ich da 300 kByte 
Bildschirmspeicher.

Nehme ich irgendein kleines RAM um die Farbpalette zu speichern?

Oder z.B. 2 Bit für Grün und jeweils 3 Bit für Rot und Blau?

Brauche ich Dual Ported RAM ???

Alternativ eine alte PC Grafikkarte mit TSENG ET4000 Chip will ich nicht 
nehmen.

Der Microcontroller sollte dem Grafikadapter z.B. über SPI sagen welche 
Punkte in welcher Farbe gesetzt werden sollen.
Naja 8 Bit parallel währe schon schneller.

Könnte mir da ein Protokoll vorstellen das es 8 parallele Leitungen, 
eine WR und eine Clr_register_adr_pointer Leitung gäbe.
Der µC würde zuerst immer die Clr_register_adr_pointer ansprechen.

Dann eine bestimmte Anzahl von Bytes rüberschieben für Command und X/Y 
Daten.

Machbar?

von Kai G. (runtimeterror)


Lesenswert?

>Machbar?

Mit Sicherheit:
Controller mit deiner Anwendung -> Grafikcontroller (optional) -> DPSRAM 
als Framebuffer -> CPLD als RAMDAC (ggf. mit externem RAM als Palette) 
-> Monitor

... und fertig ist der Standardaufbau einer Grafikkarte. Der Teufel 
liegt aber im Detail...

Ich denke, deine Schwierigkeit ist der RAMDAC - mit dem Suchbegriff 
sollten sich aber diverse Bauteile finden lassen.

passt der hier?
http://focus.ti.com/docs/prod/folders/print/tvp3409.html

von Sebastian (Gast)


Lesenswert?

Na ja, die S1D17... Chips können einen DRAM-Baustein ansteuern. Das ist 
der Video-RAM, wie bei einer Grafikkarte. Radig's CPLD-Grafikkarte 
benutzt alte Cache-Bausteine aus einem Mainboard, das ist auch keine 
schlechte Idee. Preislich ist seine Lösung ziemlich unschlagbar, wenn 
man den CPLD programmiert bekommt.
Wenn es wirklich darum geht, die Grafikkarte selbst zu bauen:
http://www.serasidis.gr/circuits/AVR_VGA/avr_vga.htm
Kann allerdings nur Textausgabe.

Übrigens gab es hier im Forum einen Beitrag, der beschreibt, wie man mit 
einem Atmel-Mikrocontroller und SD-RAM eine etwas anspruchsvollere 
"Grafikkarte" zusammenstrickt. Leider finde ich den Thread nicht mehr.

Man kann so was auch kaufen:
http://www.dontronics-shop.com/Micro-VGA-p-1-c-262.html

von Peter X. (vielfrass)


Lesenswert?

Will mir mal die CPLD-Grafikkarte vom Ulrich Radig ansehen.
Ob man die Speicherchips noch kaufen kann?
Welche anderen Alternativen gibt's noch?

von Mathi (Gast)


Lesenswert?

Das sind Standard-SRAMs. Wenn man das Bild vergrößert, sieht man das es 
62256-Derivate sind.
Die bekommt man ganz günstig bei Eba*. Man muss mur auf die 
Geschwindigkeit achten.

von Condi (Gast)


Lesenswert?

640*480 auf nem 19" Monitor werden nicht so toll aussehen. Ansonsten 
kannst du dir ja auch mal den Parallax Propeller MC anschauen

von Gast (Gast)


Lesenswert?

>Ich würde mal gerne an einen MSP430F2013 (oder ATTiny 2313) einen VGA
>TFT Monitor anschließen.
>Was muss ich machen damit ich ein 640 * 480 Punkte Bild mit mindestens
>16 Farben bekomme?

Ich würde einen ATtiny12 nehmen und XP darauf programmieren. Alles kein 
Problem.

Benedikt kann ich gut verstehen, wenn die Fragen doch allzu blöde 
werden.

von Rolf Magnus (Gast)


Lesenswert?

> 640*480 auf nem 19" Monitor werden nicht so toll aussehen.

Das stimmt. Dadurch, daß die 480 Zeilen kein ganzzahliger Teiler der 
Monitor-Auflösung sind, wird's ziemlich matschig, weil er interpolieren 
muß. 640x512 würden ein merklich besseres Bild bringen, wenn's nicht 
gerade ein Widescreen ist.

von mr.chip (Gast)


Lesenswert?

Mit etwas SRAM und einem CPLD kriegt man tatsächlich selbst recht 
hochauflösende Bilder mit vielen Farben raus. Problematisch ist aber, 
den Bildinhalt in vernünftiger Zeit zu wechseln, weil man in die meisten 
SRAMs ja nicht gleichzeitig lesen und schreiben kann.

von Michael P. (desilva)


Lesenswert?

2 nehmen, als Wechselpuffer...

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
Noch kein Account? Hier anmelden.