RGB Monitor ansteuern

Gast #224348
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
Gast
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.
Gast
> 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
Gast
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.
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.
Gast
"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

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.