Hallo! Ich möchte gerne ein AVR32-basiertes System (am Anfang habe ich ein EVK1100 mit 32UC3A) zur Darstellung meiner Desktop-Oberfläche benutzen. Dabei soll das eigentliche Programm auf einem per Ethernet verbundenen Client laufen. Spontan fallen mir zwei mehr oder minder "standardkonforme" (im Sinne von kompatibel mit existierenden Clients) Lösungen ein: - uClinux und dann versuchen X11 Server läuffähig zu bekommen - Das X11 Protokoll direkt zu implementieren Letzteres ist sicher schneller und ressourcensparender, aber wahrscheinlich auch aufwendiger? Hat jemand Tipps oder ist jemanden bekannt das sowas schon mal gemacht wurde? Danke! Gruß Jan
Viel Spaß, wenn du die µCLinux-Variante nimmst. Auf den UC3*-µCs läuft Linux nämlich nicht. Und es schaut im Moment nicht danach aus, dass sich das in nächster Zukunft ändert. Deshalb empfehle ich dir, dass X11 Protokoll direkt zu implementieren. Ist wahrscheinlich insgesamt einfacher. Denn selbst wenn du Linux ans Laufen bringst, ist es noch nicht sicher, dass du dann auch den XServer aufsetzen kannst. Von daher lieber den direkteren Weg nehmen. MfG Marius
Der poster moechte einen X11 kompatiblen Grafikdisplay bauen ? Wow. Das beinhaltet zuerst mal die Ansteuerung eines Displays auf pixelebene. Das VGA(XGA..) Signal selbst erzeugen ? Mit Framebuffer usw. Dann kommen dann noch ein Paar library routinen oben drauf. Oder einen Grafik chip ansteuern ? Dann muss man die Informationen zusammentragen. X11 bedeutet, dass es ein Vektordisplay ist, der auf dem display selbst rastert. Und Kommunikation... Viel glueck.
Danke für den hilfreichen (Marius) und den weniger hilfreichen Post. Generell gehe ich davon aus dass die Ansteuerung z.B. eines "PSP Displays" wie hier schon an der ein oder anderen Stelle gezeigt aus dem Framebuffer mit akzeptablem Aufwand möglich ist. Da waren ja einige schon sehr erfolgreich. Mich würde interessieren ob jemand evtl. Erfahrung damit hat, einen auf dem Linux-Kernel aufsetzenden Code in ein Standalone-uC Programm zu wandeln? Dann müsste man nicht X11 neu implementieren sondern "nur" die entsprechenden Systemaufrufe emulieren/bereitstellen. Alles mal aufs Blaue hin gefragt - ich versuche lediglich den besten Startpunkt zu finden. Gruß Jan
Also das mit dem PSP-Display kenne ich bisher nur vom AT32AP7000. Das ist der AVR32-Controller, auf dem auch Linux lauffähig ist. Dieser hat einen integrierten LCD-Controller, der die Ansteuerung des LCDs übernimmt. Soweit ich das jetzt im Datenblatt des AT32UC3A gelesen habe, hat dieser keinen LCD-Controller. Das heißt, du müsstest die Ansteuerung komplett in Software machen. Die Anpassung des Linux-Kernels auf den UC3A halte ich persönlich auch für ein sehr umfangreiches Projekt, was auch nicht ganz trivial ist (sonst hätte es bestimmt schon jemand gemacht). Wenn du dich dafür interessierst, dann solltest du dir die Sourcen des Linux-Kernels mal ansehen. Besonders die Dateien für den AVR32 (AP7000) im arch-Verzeichnis. MfG Marius
Du solltest vielleicht auch in Erwägung ziehen, statt dem X11-Protokoll etwas einfacheres zu implementieren, VNC bietet sich da an. Damit sparst du dir auf Display-Seite z.B. das ganze Font-Handling (truetype etc), und das Protokoll ist recht kompakt und sollte leicht zu implementieren sein. Und vorhandene X11-Applikationen laufen trotzdem, dann halt über einen VNC-X11 Server.
Soweit ich weiß, kann man den Linux Kernel nicht auf die UC3's portieren, die diese unter anderem keine MPU (Memory Protection Unit) haben.
Man kann schon (siehe µCLinux), es hat nur bisher niemand gemacht. Der Linux-Kernel hat nen Config-Flag, welches die MMU-Benutzung aus- oder einschaltet. Allerdings müsste der komplette Hardwarespezifische Code überarbeitet und angepasst werden. Das zu tun ist viel Arbeit. MfG Marius
In der Mailinglist war erst am 20. Dez die Frage auch aufgetaucht, leider finde ich die Antwort nichtmehr, deshalb nur soviel: Ein Uniteam ist dran, aktueller Stand ist, das es einen Hardwarebug im Controller (glaub im Speicherinterface fürs Ram) gibt, was im Moment die Entwicklung bremst. Trotz alledem soll nach den Weinachtferien ein erster bootfähiger Kernel verfügbar sein. Was allerdings nicht heißt das er verwendbar ist ;)
VNC ist einfacher, schneller, ressourcenschonender, vielseitiger und zuverlässiger als X11, egal mit oder ohne Linux.
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.