- 3D-Druck Einstieg und Tipps         
Seite 3 von 6 ErsteErste 12345 ... LetzteLetzte
Ergebnis 21 bis 30 von 57

Thema: Gibt es noch Optimierungspotential? (Mega8 an 320x240 GLCD Textmodus)

  1. #21
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2009
    Beiträge
    437
    Anzeige

    Powerstation Test
    Interesse an einer Interrupt-getriebenen Version ?

  2. #22
    Erfahrener Benutzer Roboter Experte Avatar von ePyx
    Registriert seit
    14.05.2008
    Ort
    Falkensee
    Beiträge
    700
    Hab zwar eigentlich keine Anwendung, lese aber den Thread schon ne Weile mit. Mich würde die IRQ-Version durchaus interessieren. Also antworte ich mal mit : "Ja".
    Grüße,
    Daniel

  3. #23
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2009
    Beiträge
    437
    Zitat Zitat von ePyx Beitrag anzeigen
    Hab zwar eigentlich keine Anwendung
    Da geht's mir nicht besser, hab' nicht mal ein Display. Bei Pollin gibt's die auch nicht mehr, außer einem Modell das aber komplizierter bei der Spannungsversorgung ist.
    Mich würde die IRQ-Version durchaus interessieren. Also antworte ich mal mit : "Ja".
    Ich simuliere den Code immer, aus beschriebenen Grund kann ich's nicht am lebenden Objekt testen. Kann also sein, dass noch ein Wurm drin ist, tatsächlich wissen wir's wenn MisterMou es am Laufen hatte.
    Angehängte Dateien Angehängte Dateien

  4. #24
    Erfahrener Benutzer Roboter Experte Avatar von ePyx
    Registriert seit
    14.05.2008
    Ort
    Falkensee
    Beiträge
    700
    Naja hab auch kein Display, daher auch keine Anwendung. Aber Interesse kann man ja haben. Dabei kann man nur Lernen.

    PS : Das du das ohne Hardware und Anwendung durch simulierst bzw. dir generell den Aufwand machst, ist im Übrigen hoch anzurechnen. Zumindest ich mach das.
    Grüße,
    Daniel

  5. #25
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2009
    Beiträge
    437
    Zitat Zitat von ePyx Beitrag anzeigen
    Aber Interesse kann man ja haben.
    Ja, klar.
    ...dir generell den Aufwand machst, ist im Übrigen hoch anzurechnen.
    Danke, ganz uneigennützig bin ich aber auch nicht, das mach' ich gern wenn ich's als Knobelaufgabe betrachte.
    Das Schreiben von Assembler in 'ner separate .S-Datei ist im Übrigen um Einiges angenehmer als Inline ASM.

    Hatte noch 'ne andere ISR Version gebaut, bei der immer pro ISR-Aufruf eine komplette der 20 Zeilen ausgegeben wurde, die war noch schneller und hätte es auf maximal 115Hz gebracht. Aber sie hätte die Programmausführung recht lange unterbrochen und damit wäre das für UART-Kommunikation ein Problem gewesen.

    Die angehängte Version gibt immer nur eine Scanzeile von 12 aus, hat deswegen mehr Overhead und schafft's auf max 103Hz.
    Geändert von MagicWSmoke (25.04.2012 um 10:31 Uhr)

  6. #26
    Erfahrener Benutzer Roboter Experte Avatar von ePyx
    Registriert seit
    14.05.2008
    Ort
    Falkensee
    Beiträge
    700
    Zitat Zitat von MagicWSmoke Beitrag anzeigen
    Danke, ganz uneigennützig bin ich aber auch nicht, das mach' ich gern wenn ich's als Knobelaufgabe betrachte.
    Das ist aber sehr schlimm.

    Zitat Zitat von MagicWSmoke Beitrag anzeigen
    Das Schreiben von Assembler in 'ner separate .S-Datei ist im Übrigen um Einiges angenehmer als Inline ASM.
    Kann ich mir gut vorstellen. Bisher hab ich mich noch nicht wirklich damit auseinandersetzen müssen. Entweder waren die Sachen in C oder in ASM lösbar. Mischen bzw. Optimieren musste ich da bisher nicht allzu viel. Daher ist halt auch interessant.
    Grüße,
    Daniel

  7. #27
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    31.05.2009
    Ort
    Stralsund
    Alter
    32
    Beiträge
    436
    Soo,
    endlich hatte ich mal wieder etwas Zeit...
    Inzwischen nutze ich ein anderes Display, bei dem "M" manuell geschaltet werden muss. Das heißt, jedes Frame wechselt M zwischen high und low. (1.Frame high | 2.Frame low | ...)
    Das Display flimmert weniger bei niedrigen Frequenzen. Es lässt sich bei 57Hz problemlos betreiben, das andere musste mit mindestens 70Hz gefahren werden.
    Außerdem besitzt dieses eine LED Hintergrundbeleuchtung. Allerdings steigt die Kontrastspannung von -18V auf +23V, aber für mein Labornetzteil ist das kein Problem.
    Der Kontrast ist auch etwas schlechter.
    Der große Bonus ist der Touchscreen
    Sonst bleibt alles beim Alten.

    Zur Zeit habe ich Probleme, dass die Schrift nicht sauber gezeichnet wird. Einige Pixel sind an der falschen Stelle, aber bei dem selben Zeichen immer wieder gleich falsch. Das sieht so aus als würde das Array falsch gespeichert werden.
    Und dann passt auch mal wieder alles, einfach so. Ich gebe aber meinem Rechner die Schuld, der ist zur Zeit etwas zickig.

    Die IRQ Sache ist ne tolle Idee, aber Timer0 unterstützt doch gar keinen Compare-Interrupt, sondern nur einen Overflow-Interrupt.
    Ich sage auch mal "Ja"

    edit: Der Rechner ist es nicht, mein großer ist der selben Meinung O.o
    Geändert von MisterMou (29.04.2012 um 19:58 Uhr)

  8. #28
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2009
    Beiträge
    437
    Zitat Zitat von MisterMou Beitrag anzeigen
    Die IRQ Sache ist ne tolle Idee, aber Timer0 unterstützt doch gar keinen Compare-Interrupt, sondern nur einen Overflow-Interrupt.
    Ich sage auch mal "Ja"
    Irgendwie bin ich da auf den Mega16 gekommen
    Lässt sich aber einfach auf Preload des Timers umbauen, werd's morgen mal ändern und dann einstellen.

  9. #29
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2009
    Beiträge
    437
    Anbei die geänderte Version für den ATMega8, bei dem nun Timer0 vorgeladen wird.
    Es handelt sich aber noch um ungetesteten Code für das ursprüngliche Display, sollte also erst getestet werden ob's auf dem überhaupt hinhaut, sowohl von der prinzipiellen Code-Funktion, als auch mit der Ausgabe jeweils 1 Linie pro ISR-Aufruf.

    Sobald das dort läuft, kannst Du die Änderung
    jedes Frame wechselt M zwischen high und low. (1.Frame high | 2.Frame low | ...)
    selbst in der .S vornehmen, oder C-Beispielcode einstellen, dann schau' ich's mir an.

    Leider musste meine Kalkulation für den Zähler-Topwert über das #define in der .h über Bord gehen. Der GCC hatte kein Problem damit, aber der GNU Assembler war nicht dazu zu bewegen die Rechnung aufzulösen.
    top_val muss also nun selbst ausgerechnet werden, ist für 75Hz bereits erledigt, bei dieser Wiederholrate sind noch ungefähr 27% der Prozessorleistung für anderen Code verfügbar.
    Angehängte Dateien Angehängte Dateien

  10. #30
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    31.05.2009
    Ort
    Stralsund
    Alter
    32
    Beiträge
    436
    Danke für die ganze Arbeit.
    Inzwischen überfordert mich Dein Code komplett
    Er funktioniert trotzdem tadellos.
    Er lässt sich auch am neuen Display testen, allerdings verblasst das Bild nach ein paar Sekunden, daran ist aber M schuld.
    Soweit ich das mitbekommen hab, ändert M die Polarität der Kristalle und hält so den Kontrast aufrecht, deswegen der ständige Wechsel.
    Die Ansteuerung ist sehr einfach. Nach jedem Frame wird gewechselt.
    Code:
    PORTD=~PORTD;
    Ich habe dafür noch den übrigen Port genommen um den original Code nicht ändern zu müssen. M hängt an Pin D0.

    Meine Pixelfehler waren ein gelegentlicher Kurzschluss zwischen D1 und D2...

Seite 3 von 6 ErsteErste 12345 ... LetzteLetzte

Ähnliche Themen

  1. Zusätzlich zu der M32 noch ein mega8?
    Von AsuroPhilip im Forum Robby RP6
    Antworten: 40
    Letzter Beitrag: 04.11.2011, 10:43
  2. Gibt es noch Realismus im Fernsehen?
    Von HannoHupmann im Forum Offtopic und Community Tratsch
    Antworten: 43
    Letzter Beitrag: 03.08.2011, 14:34
  3. GLCD (GDM12864B) mit KS0108B gibt PixelFehler
    Von SvenS im Forum AVR Hardwarethemen
    Antworten: 1
    Letzter Beitrag: 21.04.2011, 10:05
  4. Gibt es noch den Crazy-Car Wettbewerb?
    Von Reinald im Forum Allgemeines zum Thema Roboter / Modellbau
    Antworten: 7
    Letzter Beitrag: 23.10.2008, 11:28
  5. DISAVR - Gibt´s den noch (funktionierend)?
    Von roboguy im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 21.09.2005, 22:59

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

fchao-Sinus-Wechselrichter AliExpress