Auf http://www.ags.tu-bs.de/?id=e.lab:projekte:avrvga ist ein VGA Terminal (640*480, monochrom) mit einem ATMega beschrieben. Hier im Forum ist es der Thread Beitrag "AVR VGA Terminal" Für dieses Projekt will ich Platinen beschaffen (80mm*100mm, zweiseitig, Lötstopmaske, kein Bestückungsaufdruck). Der Preis wird vermutlich € 2.- pro Stück plus Versand (Brief) sein. Wer Interesse hat, melde sich bitte per PN. Das Schaltbild hänge ich hier als Info an.
Sorry, aber sind VGA Monitore nicht ein klein wenig veraltet? Kann man die überhaupt noch kaufen?
Ne, ich find VGA schon noch OK. Aber gibts zu dem Projekt denn noch sowas wie Gerber/Boardfiles? Oder designest du die Platine neu?
> Sorry, aber sind VGA Monitore nicht ein klein wenig veraltet? Kann man > die überhaupt noch kaufen? sag' nichts: mein 24-zoller von samsung hat tatsächlich neben hdmi auch noch 'nen vga-eingang.
stefanus schrieb: > Sorry, aber sind VGA Monitore nicht ein klein wenig veraltet? Kann man > die überhaupt noch kaufen? Solange PCs noch im VGA-Modus starten, muss das jeder Monitor können. Was sie nicht mehr können sind TV-Frequenzen. Georg
Georg schrieb: > stefanus schrieb: >> Sorry, aber sind VGA Monitore nicht ein klein wenig veraltet? Kann man >> die überhaupt noch kaufen? > > Solange PCs noch im VGA-Modus starten, muss das jeder Monitor können. > Was sie nicht mehr können sind TV-Frequenzen. Dumm nur das es eigentlich keine analoge Schittstelle mehr dafür gibt, oder glaubst du wirklich dass DVI mit Anlogeingang an digitalen Geräten zukunftsfähig ist? Und ob der PC auch zukünftig noch ein VGA Bild produziert oder nicht ist doch dabei völlig egal.
gvs schrieb: > Dumm nur das es eigentlich keine analoge Schittstelle mehr dafür gibt, > oder glaubst du wirklich dass DVI mit Anlogeingang an digitalen Geräten > zukunftsfähig ist? Naja, so lange 99,999% aller Projektoren in Firmen nur ein VGA-Kabel zum Tisch darunter liegen haben, wird VGA weiter existieren.
matrixstorm schrieb: > Aber gibts zu dem Projekt denn noch sowas wie Gerber/Boardfiles? Es gibt alles dazu auf der Seite der TU-BS oder bei Bedarf von mir. Zu "warum VGA?": Natürlich ist das aus der Steinzeit. Ich nehme das als Debug Terminal für diverse Schaltungen. Ein alter 17" Monitor, ein Hackbrett und diese kleine Zigarettenschachtel. Mit extra serieller Schnittstelle per USB am PC habe ich keine allzu guten Erfahrungen.
Ich stelle mir die Programmierung spannend vor. Das war bestimmt nicht einfach, das richtige Timing für die Ausgabe hinzubekommen. Immerhin muss der Controller alle 8 Takte ein Byte ausgeben. Wann hat er überhaupt Zeit, die auszugebenden Bytes zu berechnen?
stefanus schrieb: > Wann hat er überhaupt Zeit, die auszugebenden Bytes zu berechnen? War der nicht bereits auf 25MHz uebertaktet? MfG
@ stefanus (Gast) >Ich stelle mir die Programmierung spannend vor. Das war bestimmt nicht >einfach, das richtige Timing für die Ausgabe hinzubekommen. Mit dem richtigen Trick7Konzept geht das. Das ist nicht neu. BAS Videosignale wurden auch schon per AVR erzeugt, VGA hat hat mindesten doppelte Zeilenfrequnz. >Wann hat er überhaupt Zeit, die auszugebenden Bytes zu berechnen? Es reicht. Eine Verschnaufpause und deutlich Rechenzeit gibt es kurz zwischen den Zeilen (Horizontale Austastlücke) und länger zwischen den Bildern (vertikale Austastlücke). Bei 31,x kHz Zeilenfrequenz immer noch schnell genung, den UART per Polling abzufragen.
Falk Brunner schrieb: > Mit dem richtigen Trick7Konzept geht das. Jepp. Und das Konzept heißt: Sage dem Controller selber, was er machen soll, überlaß' das nicht dümmlichen C-Compilern, denn die können das längst nicht so gut. Oder anders ausgedrückt: Only ASM rules. > Das ist nicht neu. Das allerdings ist leider nur zu wahr. Leider ist es bis heute nicht möglich, nur mit einem AVR-Controller eine (monochrome) Vollgrafik in VGA-Auflösung anzubieten, weil Atmel einfach keinen im Sortiment hat, der dafür genug SRAM intern bieten würde. Die dafür nötige Rechenleistung hingegen haben sie schon seit langem. So muß man sich leider seit Jahren schon auf einige VGA-Textmodi beschränken. Oder monochrome Vollgrafik in QVGA (allerdings mit VGA-Timing, exakt entsprechend "VGA" (im engeren Sinne) oder auch dem 256Farben-Modus von SVGA). Alles keine große Kunst, wenn man programmieren kann, insbesondere in der einzigen Sprache, die eine optimale Ausnutzung der verfügbaren Resourcen ermöglicht. Und nein, das ist definitiv nicht C...
@ c-hater (Gast) >Only ASM rules. Jaja. Wer einen Controller missbraucht, um die niedere, geradezu triviale Aufgabe eines Zeichengenerators zu übernehmen, frisst auch kleine Kinder. ASM-Programmierer sowieso ;-) >Das allerdings ist leider nur zu wahr. Leider ist es bis heute nicht >möglich, nur mit einem AVR-Controller eine (monochrome) Vollgrafik in >VGA-Auflösung anzubieten, weil Atmel einfach keinen im Sortiment hat, >der dafür genug SRAM intern bieten würde. Wozu auch? Siehe oben. Ausserdem gibt es längst genügend Alternativen. Diese VGA/Terminalgeneratoren sind "nur" eine Leistungsdemonstration der AVRs bzw. anderer Controller, nicht wirklich die Hauptanwendung. > Die dafür nötige >Rechenleistung hingegen haben sie schon seit langem. Für volles VGA? Kaum. >VGA-Timing, exakt entsprechend "VGA" (im engeren Sinne) oder auch dem >256Farben-Modus von SVGA). Kauf dir ein passendes LCD mit Intelligenz und fertig. Du wirst die Unmengen alter VGA Monitore mit diesem Terminal nicht vor der Verschrottung retten. >Alles keine große Kunst, wenn man programmieren kann, insbesondere in >der einzigen Sprache, die eine optimale Ausnutzung der verfügbaren >Resourcen ermöglicht. Und nein, das ist definitiv nicht C... https://de.wikipedia.org/wiki/Fetischismus_%28Religion%29
c-hater schrieb: > Das allerdings ist leider nur zu wahr. Leider ist es bis heute nicht > möglich, nur mit einem AVR-Controller eine (monochrome) Vollgrafik in > VGA-Auflösung anzubieten, weil Atmel einfach keinen im Sortiment hat, > der dafür genug SRAM intern bieten würde. Die dafür nötige > Rechenleistung hingegen haben sie schon seit langem. Dann nimmt man halt was anderes. ZB PIC24FJ256DA206. 96k RAM eingebaut, Grafikcontroller drin, Grafikbeschleuniger drin. Und das alles in einem 64 Pin TQFP. Es gibt auch ein Leben nach dem AVR. fchk
Zur Info: Die erste Charge der Platinen ist vergeben. Die Bestellung läuft.
Hallo Georg! Hast du vlt einen anständigen Schaltplan mit Stückliste erstellt, wo auch die richtigen Bauteile mit ihren entsprechenden Werten verzeichnet sind? Auf der Projektseite ist das ja nicht unbedingt der Fall. Klar kann ich mir selbst erarbeiten und heraussuchen, aber wenn's schon jemand gemacht hat... Danke und LG
Die Platinen sind nach den Unterlagen auf der TU-BS Seite gefertigt. Eagle meint, Schaltbild und Platine seien konsistent. Als muss das Schaltbild (nicht das PDF, das Schaltbild aus dem ZIP!) dort auch zum Bestückungsdruck passen und eine BOM sollte man daraus auch generieren können. Noch ein Hinweis: Der Quelltext auf der Projektseite lässt sich nicht fehlerfrei linken. Im ZIP-File sind aber ein ELF und ein HEX File enthalten, die man auf einen ATMega644 flashen kann und die funktionieren. Momentan ist hier etwas Stress. Eventuell schaffe ich es am Wochenende, einen Satz konsistente Unterlagen zu erstellen.
c-hater schrieb: > Das allerdings ist leider nur zu wahr. Leider ist es bis heute nicht > möglich, nur mit einem AVR-Controller eine (monochrome) Vollgrafik in > VGA-Auflösung anzubieten, weil Atmel einfach keinen im Sortiment hat, > der dafür genug SRAM intern bieten würde. Die dafür nötige > Rechenleistung hingegen haben sie schon seit langem. hast du dir mal den m1284p angesehen ? ich war erstaunt 16kB Ram warum gibts das nicht im m328p ? oder einen Arduino mit dem ? der 1284p hat sogar mehr SRAM als der m2560
Dann mal auf die Schnelle Schaltbild, Bestückungsplan und BoM für die aktuelle Platine. Um die Soft kümmere ich mich später (oder ein anderer tut es).
Noch ein Hinweis: mit einem ATMega644 muss man die Keyboard Routinen aus dem "alten" Thread auf MKC.NET nehmen und anpassen. Der Quältext auf der aktuellen TU-BS Seite möchte einen ATMega mit 2 UARTs sehen, ATMega1284p als Beispiel. Der Linker Fehler lässt sich bei Verwendung eines ATMega1284p beseitigen, wenn man in den Custom Options big_align passend rauf setzt, auf 0x6000 zum Beispiel.
Hallo! Ich hab's noch nicht gebaut und probiert. Aber ich hab mir jetzt mal die Schaltung genauer angesehen. Reset ist ja komplett unbeschaltet-funktioniert das?
Klar tut es das. Jeder AVR kann damit leben (oder vegetieren?). Ein Kondensator und ein Pullup am Reset wären hilfreich gegen Störungen. Ohne alles ist es recht hochohmig. Aber notfalls geht es auch so.
Dann is ja gut ;-) Vlt lässt sich ja die Standard-Reset-Beschaltung dazufriemeln
Statt den 0 Ohm Widerständen funktionieren auch Drahtbrücken oder 1 Ohm?
Harald Nagy schrieb: > Statt den 0 Ohm Widerständen funktionieren auch Drahtbrücken oder > 1 Ohm? Wie viel Ohm hat eine Drahtbrücke? Annähernd 0 würde ich vermuten. Ich habe mit Drahtbrücken bestückt.
Hallo die erste LP macht schon mal die Demo-Seite auf dem Monitor. RS232 und Keyboard tut noch nicht. Liegt wahrscheinlich am falschen Quellcode. Im ELF-File fehlt die Tabelle der Fuses.
karadur schrieb: > Liegt wahrscheinlich am falschen > Quellcode. Wenn du Erfolge hast, bitte posten. Der Kiosk Mode kann ja wohl raus. Welchen Prozessor nimmst du?
Hallo Atmega644P 20 Oszillator 25,175 MHz ( von einer alten VGA-Karte ) Da die Leiterbahnen sehr dünn sind habe ich vorsichtshalber auf der Unterseite der LP zwischen VCC und GND und AVCC und GND jeweils 100n in 0805 eingelötet. Der Rest ist so wie in den Unterlagen. Ich habe es mit drei Monitoren getestet. Der alte Sony erkennt zwar die Sync-Signale aber zeigt kein Bild. Ein Hansol zeigt "Out of Range". Mit dem Samtron geht es. Nach dem Scope passt das Timing bzgl. Abstand der Sync-Impulse. Die Breite habe ich noch nicht getestet.
karadur schrieb: > wo ist der andere Quellcode zu finden? Auf der TU-BS Webseite findest du die "moderne" Version, die mit dem aktuellen GCC fast ohne Warnungen übersetzt wird. In den custom linker options nur big-align passend setzen, beim 644 sollte 0x6000 gut sein (dort wandert der Font hin). Den alten Quelltext (Keyboard ohne Scancode Übersetzung, einlesen nicht via UART) findest du hier im Thread Beitrag "AVR VGA Terminal" (mehrere Versionen, die letzte ist wohl am besten). Ich habe momentan leider wenig Zeit. Aber gemeinsam sollten wir ein "rundum sorglos Paket" hinbekommen.
Joachim B. schrieb: > hast du dir mal den m1284p angesehen ? (640*480)/8 = 38400 16384 << 38400 Alles klar?
c-hater schrieb: > Alles klar? nü, wer muss den Pixelram haben, OK ich hatte VGA Terminal mit TextTerminal verstanden
ohne Bootlader, Takt = externer Oszillator, Brown Out falls gewünscht, Watchdog an die Leine.
Kannst du das näher angeben? Hab die Angst vor den Fuses noch nicht verloren...
Ja, hab aber noch nie für einen Oszillator fusen müssen.... Ext. Clock Startup 6CK + 65ms? Ohne CKDIV8? Das würde dann sein: Low: E0 High: 99 Ext: FF Stimmt das? Hat sich erledigt. Funzt! Anmerkung falls es eine nächste Auflage der Platine gibt: Zwischen VGA- und Serieller Buchse 5 mm mehr Abstand... Bleibt nur noch zu klären wie ich meinen Monitor dazu bringe, das ganze Bild anzuzeigen ;-)
Harald Nagy schrieb: > meinen Monitor dazu bringe, das ganze > Bild anzuzeigen Mein 17" Acer TFT brauchte dazu nur einen Druck auf die Taste "Automatischer Abgleich" :-) Was für einen Monitor hast du? Der verwendete Modus ist eigentlich in jedem Monitor drin, ist was ganz übliches.
Ich verwende das LS-7 TFT Display. Funktioniert sonst ganz gut bei zB Raspberry. Irgendwie fehlt aber der untere Teil. Leider kann man nichts einstellen... Wenn ich am Wochenende dazu komme werd ich das Board mal am TV anstöpseln. Sonst hab ich leider keinen Monitor zur Verfügung. BTW wenn ich versuche Monitor, Keyboard und RS232 anzustecken startet das Board nicht. Evtl zieht das ganze Zeug zu viel Strom? Jeweils nur zwei funktioniert (wenn auch keine Konsole erscheint oder das Keyboard nicht funktioniert.... aber das liegt vermutlich am Code). Ich verwendete das aktuelle mit inkludiertem Hex-File.
Guten Abend, hat zufällig einer von euch noch ein oder zwei Sätze der Anschluss Buchsen übrig.Die in diesem Projekt verwendet werden. Gruß und Danke. Ronny
Zwischenbericht: Der ATMega644 funktioniert nicht, das zweite UART fehlt. Mit dem ATMega644A würde es klappen. Das RAM ist dann aber zu 99% voll. Also sollte man gleich den ATMega1284P nehmen. Die Platine hat einen Fehler. Der Tastatur Takt geht an XCK0 (Pin 1) und nicht an XCK1 (Pin 18),wo er hin sollte. Also bitte die Verbindung von Pin 18 zum MAX232 auf der Unterseite trennen und einen Draht zwischen Pin 1 ud Pin 18 legen. Eine erste lauffähige Software kommt innerhalb der nächsten zwei Wochen - hoffe ich.
Anbei der erste Versuch einer Software. Abweichend vom Original wird ein VT52 Terminal rudimentär emuliert (mein CP/M aus der Steinzeit mag so moderne Terminals wie das VT100 nicht, ich bekomme den Wordmaster nicht dafür gepatcht). Es fehlt die Ansteuerung der LEDs in der Tastatur. Da habe ich noch keine Idee, wie ich das bei dem engen Timing machen kann. Es sind nicht alle Tastenkombinationen dekodiert bzw liefern Codes, die für dumme Systeme unverständlich sind. Es ist noch nicht alles entrümpelt. Diverse Dinge, die vermutlich aus historischen Gründen im Code enthalten waren, sind nur auskommentiert. Fehler bitte melden (am besten gleich mit Reparaturanweisung :-) )
Hi! Endlich mal Zeit gehabt herumzuprobieren... Also 1284P rein, Platine korrigiert Serial Terminal funktioniert, Keyboard funktioniert (interessanterweise nur mit original PS/2; USB-Tastatur mit Adapter funktioniert nicht) Ich hab mir jetzt ehrlicherweise den Quellcode nicht angesehen, aber kann es sein, dass es keinen VGA-Output gibt? Initialisert wird - da sich am Display die Auflösung einstellt. Aber mein Display zeigt dann nichts an. Bei der vorherigen Software hats funktioniert (zwar abgeschnitten aber funktioniert)
Harald Nagy schrieb: > (interessanterweise nur mit original PS/2; USB-Tastatur mit Adapter > funktioniert nicht) "USB-Tastatur mit Adapter" funktioniert nur, wenn die Tastatur bilingual ist, wenn sie also sowohl USB als auch PS/2 unterstützt. Der Adapter ist dumm, der sagt der Tastatur nur, welches Protokoll sie verwenden soll. Und damit ist so ein Adapter für nicht-bilinguale USB-Tastaturen nicht zu gebrauchen. Bei Mäusen ist das übrigens genauso, und war auch "damals" schon so, als der Wechsel von Mäusen für RS232 auf PS/2 stattfand.
Hallo ich habe die letzte Version der Software noch nicht probiert. Die anderen Versionen machen aber nicht VGA ( 640x480) sondern 640x400. Ich habe mit einigen Monitoren getestet. Einige können den Modus, andere nicht. Wenn ich mal wieder Zeit habe für das Projekt such mal im Quelltext. Ich hätte gerne VGA. 640x480 60 Hz.
Hallo! Es ist zwar schon eine ganze Weile her, aber gibt es Neuigkeiten zum Projekt? Lg
Ok. Könntest du deinen aktuellen Quellcode (vieleicht gleich mit Hexfile) und Konfiguration online stellen? Geht's jetzt mit dem ATmega1284P?
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.