Forum: Mikrocontroller und Digitale Elektronik VGA-Controller


von KDSBest (Gast)


Lesenswert?

Guten Tag bzw. für mich jetzt Abend,

ich verzweifle, habe ne VGA Karte gefunden die mit nem ATMEGA16 
monochrom hergestellt wird eigentlich easy, aber ich will nen VGA 
anschluss haben der bund ist.

Eine möglichkeit denke ich wäre D/A wandler und nen dual port RAM, RAM 
wird von CPU (Baue ich später habe ich schon so gut wie fertig) 
gefüttert, Atmega liest ram aus und schreibt ihn durch den D/A wandler 
an den VGA Port.
(Problem ist, dass ist mit 16MHerz bestimmt zu langsam, also will schon 
4 bit r, 4bit g, 4 bit r haben und 640x480 pixel)

dann wäre es noch über einen ramdac möglich, aber ich finde nichts um 
nen ramdac an nen atmega anzuschliessen (Problem bestimmt auch zu 
langsam).

also habe ich mir gedacht es gibt bestimmt einen VGA Controller IC. Der 
das bild immer wieder im VGA automatisch refreshed und der nen bild 
buffer hat den ich beschreiben kann. Gibt es so einen controller den man 
mit nem ATMEGA16 ansteuern kann?
Wenn ja nen Tutorial, schaltplan etc.

Wäre cool wenn ihr mir alle infos dadrüber geben könnt die ihr findet. 
Ich verzweifel langsam.

Wenn mir das projekt halbwegs gelingt oder ich ne gute VGA ansteuerung 
habe, dann werde ich ne Page mit wiki aufstellen, die mein Complettes 
projekt mit schaltplan source etc zeigt.

Wöre cool wenn ihr wisst ob es einen vga Controller mit meinen 
ansprüchen entspricht oder ihr mir sagt wie ich einen VGA Monitor 
anspreche mit mind 640x480 pixel und mind 12 bit Color (4bit r, 4bit g, 
4bit b).

Danke schonmal im vorraus.

von Cheffe (Gast)


Lesenswert?

Kannst Du Dir einem in einem PLD programmieren? - gfs unter Nutzung 
eines RAMS, das Du auch für den Controller bereits hast? Die 4bit 
Auflösung sind leicht mit einem R2R-Filter zu realisieren.

von KDSBest (Gast)


Lesenswert?

was ist ein R2R-Filter?

ja statt nen PLD würde ich gerne nen ATMEGA benutzen. Der Ram wäre ja 
nen Dual Port RAM dadurch kann der ATMEGA für den VGA und meine eigene 
CPU drauf zugreiffen.

von Sebastian Heyn (Gast)


Lesenswert?

mit dem atmega erreichst du nie so ne auflösung. selbst wenn du den mit 
20mhz übertaktest

wenn du nicht cpld willst, musst du auf externe logik zurückgreifen

von Sebastian Heyn (Gast)


Lesenswert?

ich meinte nicht externe logik, das kommt davon wenn man mit den 
kollegen redet.... ich meinte diskrete logik also ein paar zähler usw

von KDSBest (Gast)


Lesenswert?

Also soll ich die VGA schaltung komplett ohne MC machen und mithilfe von 
zählern usw. die sachen aus dem ram lesen und in die VGA ausgang jagen?

von KDSBest (Gast)


Lesenswert?

Hat jemand ne schaltung mit der man nen VGA Adapter baut den ich mit nem 
avr oder der gleichen füttern kann?

PS: Ich habe nichts gegen CPLD aber ich habe keine programmier zeugs 
dafür usw. Wieviel kostet den CPLD wenn ich mir alles noch besorgen 
muss?

von Tobi O. (der_ossi)


Lesenswert?

von was auf was soll der adapter denn gehen? Also von 15 Pin VGA Stecker 
auf ...???

von TheMason (Gast)


Lesenswert?

@kdsbest

also cplds gibt beispielsweise von xilinx. gibts von knapp 3 euros bis 
12 euros.
die programmiersoftware von xilinx ist kostenlos (webpack) und ein 
programmer lässt sich mit einem ic (74hc244 glaube ich) und etwas 
kleinkram drumrum bauen. bleibt nur die einarbeitung in vhdl o.ä.
aber mit einem cpld müsste das machbar sein. schau mal auf die seite von 
ulrich radig (www.ulrichradig.de)

von Michael (Gast)


Lesenswert?

> also cplds gibt beispielsweise von xilinx. gibts von knapp 3 euros bis
> 12 euros.

Ein VGA-Controller darf also auch nicht mehr kosten. Ich hätte nur 
Bedenken, ob jemand mit diesen Bauteilen binnen eines halben Jahres 
etwas zustande bekommt, zumal noch unklar ist, ob es bund oder bunt sein 
soll :-)

von alfsch (Gast)


Lesenswert?

mc6845 war dafür der standard....
guck:
--  S Y N T H E S I Z A B L E    CRTC6845   C O R E 
--
-- 
--
--  www.opencores.org - January 2000 
--
--  This IP core adheres to the GNU public license. 
--
-- 
--
--  VHDL model of MC6845 compatible CRTC 
--
-- 
--
--  This model doesn't implement interlace mode. Everything else is 
--
--  (probably) according to original MC6845 data sheet (except VTOTADJ). 
--
-- 
--
--  Implementation in Xilinx Virtex XCV50-6 runs at 50 MHz (character 
clock).--
--  With external pixel generator this CRTC could handle 450MHz pixel 
rate   --
--  (see MC6845 datasheet for typical application).

von KDSBest (Gast)


Lesenswert?

Ich habe mir überlegt es jetzt lieber mit nen VGA-Controller IC zu 
machen, suche noch einen der für 8bit microcontroller geeignet ist hat 
dann meistens nur 256 farben aber reicht erstmal :)

THX für die vielen schnellen antworten :)

von Benedikt K. (benedikt)


Lesenswert?

Wenn du einen findest, sag bescheid. Sowas suchen viele, aber abgesehen 
von schnellen uCern oder Schaltungen mit CPLDs/FPGAs findet man nicht 
viel in der Richtung was nicht allzuteuer ist.

von Rolf Magnus (Gast)


Lesenswert?

Hast du dir schon mal Gedanken darüber gemacht, wo die darzustellenden 
Bilddaten überhaupt herkommen sollen? Bei 640x480 in 256 Farben braucht 
ein komplettes Bild über 300kB.

von ... (Gast)


Lesenswert?

Hallo KDSBest,
da du dich sicher schwertust, einen VGA-Controller in deine Schaltung zu 
integrieren, habe ich hier ein Projekt gefunden, das dir die Vorarbeit 
abnimmt:
http://wiki.duskglow.com/tiki-index.php?page=Open-Graphics

Wie du siehst, sehr einfach das ganze.

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.