Forum: Mikrocontroller und Digitale Elektronik RGB Monitor ansteuern


von Mark M (Gast)


Lesenswert?

Existiert eine Möglichkeit einen normalen Computermonitor mit einem
Mikrocontroller anzusteuern?
Ich möchte ein einfaches Oszilloscop bauen und die Anzeige auf einem
Monitor ausgeben.
Schriften oder komplizierte Graphiken müssen nicht angezeigt werden.

Geht das direkt mit einem Controller?
Wenn nicht, gibt es ansteuerungchips für RGB.

Ich habe mir gedacht, wenn selbst ein ZX80 eine Bildschirmausgebe
hatte, müsste es doch ein mit 8MHz getakteter Atmel locker schaffen.

Schon mal vielen Dank

Schöne Grüße

Mark

von A.K. (Gast)


Lesenswert?

Hast Du eine Ahnung wie der ZX80 das machte? War von Sinclair ein echtes
Meisterstück der Minimalistik. Es war zwar kaum Hardware drauf, aber
trotzdem muss man das Verfahren als Hardware-Refresh bezeichnen.
Insofern hinkt der Vergleich.

Allerdings sollte ein 16MHz AVR schon in der Lage sein, einen Monitor
bei niedriger Auflösung in Schwarzweiss oder mit wenigen Farben rein
per Software anzusteuern. Allerdings wird er währenddessen nicht zu
Messungen im Stande sein. Halt wie der ZX80 auch.

Mit Grafik-LCDs statt Computer-Monitor wird es deutlich einfacher. Und
transportabler.

von Mark M (Gast)


Lesenswert?

> Allerdings wird er währenddessen nicht zu
Messungen im Stande sein. Halt wie der ZX80 auch.

Macht nix! Est soll er messen, dann ausgeben.

>Mit Grafik-LCDs statt Computer-Monitor wird es deutlich einfacher. Und
transportabler.

Stimmt schon, leider wird es auch viel teurer.
Und ein 14 Zoll Display ist unbezahlbar.
Röhrenmonitore bekommt man dagegen geschenkt.

Wo kann ich denn nachlesen wie das RGB-Signal aussieht?

Bis dann

Mark

von A.K. (Gast)


Lesenswert?

Nimm einen externen Display-Controller mit seriellem und 8-Bit
parallelem Anschluss. Gibt's ganz günstig, wenn man weiss nach welcher
Bezeichnung man suchen muss: Notebook.

Such dir also ein uraltes Notebook, Pentium-75, 486, was auch immer.
Muss nur DOS drauf laufen können, das Display sollte funktionieren, dir
wichtigsten Tasten, und die Floppy-Disk. Platte und Batterie sind jedoch
egal.

von Thomas K. (thkais)


Lesenswert?

Forensuche +avr +rgb ergibt massenhaft Ergebnisse.
Interessant: http://www.riccibitti.com/bingo.htm

Der ZX-80 konnte nur schwarz-weiß, das ist schon ein Unterschied zu
Farbe. Gelöst wurde das mit einem Schieberegister (parallel zu
seriell). Jedesmal, wenn das 8. Bit gerade herausgeschoben wird, wird
ein Interrupt ausgelöst, der das nächste Byte schreibt.

Erst vor kurzem hat jemand einen AVR an ein normales TV angehängt
(Nickname Kryon2000 oder ähnlich). An Farbe bastelt er wohl noch, ich
kenne den aktuellen Stand der Dinge nicht.

von Benedikt (Gast)


Lesenswert?

Schau dir mal meine Programme an, da findest du sicher einiges
nützliche:
http://www.mikrocontroller.net/forum/read-4-158517.html#new

von A.K. (Gast)


Lesenswert?

"Jedesmal, wenn das 8. Bit gerade herausgeschoben wird, wird
ein Interrupt ausgelöst, der das nächste Byte schreibt."

Bei ZX80/81 kein Interrupt pro Byte, sondern einer pro Zeile.

Bei Pixeltakt 6,5MHz Prozessortakt 3,25MHz blieb pro Byte nur Zeit für
einen einzigen 4-Takt Befehl. Und das war ein NOP, solange bis das Ende
der Zeile im RAM erreicht war. Dieser NOP lieferte das Byte aus dem RAM
an der Adresse vom ROM ab, um dort in das Pixelmuster umgesetzt zu
werden. Bei der CPU kam nur noch ein NOP an. Am Ende der Zeile war's
dann der HLT-Befehl, der bei der Z80 eine 4-Takt Totschleife war, also
ähnlich wie die NOPs. Das Ende der Display-Zeile kam mit einem
Adress-Bit vom Refresh-Counter, mit dem ein Interrupt ausgelöst wurde.
Was nur deshalb so einfach war, weil die Z80-CPU die Interrrupt-Leitung
im DRAM-Refresh-Zyklus auswertete.

Damit also war der Display-Refresh eine geniale Nutzung diverser
spezieller Features der Z80-CPU und mit keiner anderen CPU so machbar.

Bei diesen Zeiten, auch denen im Link, sollte nicht vergessen werden,
dass ein VGA-Display die doppelte Zeilenfrequenz eines TV-Displays hat.
Bei 25µs für die Zeile bleiben bei minimaler Auflösung (320xXXX) pro
Byte also 0,625µs übrig. Rund 25 CPU-Takte pro Byte bei 16MHz Takt,
wenn schwarzweiss. Und die Hälfte bei 4 Farben.

Timing: http://www.epanorama.net/documents/pc/vga_timing.html

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.