- Akku Tests und Balkonkraftwerk Speicher         
Ergebnis 1 bis 10 von 57

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

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    31.05.2009
    Ort
    Stralsund
    Alter
    33
    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...

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2009
    Beiträge
    437
    Zitat Zitat von MisterMou Beitrag anzeigen
    Danke für die ganze Arbeit.
    Bitte. Ich fand's natürlich interessant, auch wenn die einfach zu versorgenden Displays nicht mehr erhältlich sind.
    Inzwischen überfordert mich Dein Code komplett
    Um es in eine .S auszulagern, war der Umbau komplett auf Assembler notwendig.
    Er funktioniert trotzdem tadellos.
    Prima.
    Die Ansteuerung ist sehr einfach. Nach jedem Frame wird gewechselt.
    Ich hatte mich nicht mit der eigentlichen Funktion des Displays auseinandergesetzt, sondern nur Deinen Beispielcode umgesetzt.
    D.h., wenn Du einen funktionierenden Code einstellst, an dem ich sehe wann genau M kommen muss, dann ist's für mich am einfachsten danach meinen Code zu ändern.
    Sind auf dem Kontrollport PORTB noch Pins verfügbar ?

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    31.05.2009
    Ort
    Stralsund
    Alter
    33
    Beiträge
    436
    Ich habe fix mal einen Code fetig gemacht.
    M liegt mit auf PortB, Pin B3 um genau zu sein.

    Läuft mit 114,6 Hz bei -O1.

    Die Versorgung mit den +23V ist doch kein Problem mit einer Spannungspumpe.

    edit: Natürlich meine ich eine Ladungspumpe
    Angehängte Dateien Angehängte Dateien
    Geändert von MisterMou (01.05.2012 um 19:24 Uhr) Grund: B4 nach B3 umbenannt

  4. #4
    Erfahrener Benutzer Roboter Experte Avatar von ePyx
    Registriert seit
    14.05.2008
    Ort
    Falkensee
    Beiträge
    700
    Du meinst sicher eine Ladungspumpe.
    Grüße,
    Daniel

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2009
    Beiträge
    437
    Zitat Zitat von MisterMou Beitrag anzeigen
    M liegt mit auf PortB, Pin B4 um genau zu sein.
    Laut Deinem Code liegt er auf PB3, nicht auf 4.
    Kannst es im .h einfach ändern, wenn's doch PB4 sein sollte.
    Anbei der angepasste Code, sollte theoretisch funktionieren. Basierend auf der momentanen Vorlage unter Verwendung von M wäre man mit den Opcodes CBI/SBI (statt Out) etwas besser gefahren.
    Es dürfte kein großartiger Unterschied sein, hätte aber eine deutliche Veränderung des Codes erfordert, das wollt' ich vermeiden.
    In der momentanen Version ist der Code dagegen einfach auf höhere Port-IO-Adressen anpassbar, was mit CBI/SBI nicht so problemlos ginge, bzw. dann deutlich länger brauchen würde.
    Angehängte Dateien Angehängte Dateien

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    31.05.2009
    Ort
    Stralsund
    Alter
    33
    Beiträge
    436
    Danke, du hast aber noch ne Kleinigkeit in der main() vergessen
    Code:
     CTRL_DDR=0x0F;
    Läuft wunderbar mit 75.0719Hz.

    Es ist in der Tat Pin B3

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    01.10.2009
    Beiträge
    437
    Zitat Zitat von MisterMou Beitrag anzeigen
    Danke, du hast aber noch ne Kleinigkeit in der main() vergessen
    Immer diese groben Schnitzer
    Läuft wunderbar mit 75.0719Hz.
    Das macht er natürlich wegen des Timers. Für Dich sind ja tatsächlich keine 120Hz wichtig, sondern was an Rechenleistung noch über bleibt, es ist mehr als ein Viertel. Also äquivalent einem mit 4MHz betriebenen µC und damit lässt sich ja immer noch Einiges anfangen.

  8. #8
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    31.05.2009
    Ort
    Stralsund
    Alter
    33
    Beiträge
    436
    Zitat Zitat von MagicWSmoke Beitrag anzeigen
    Das macht er natürlich wegen des Timers. Für Dich sind ja tatsächlich keine 120Hz wichtig, sondern was an Rechenleistung noch über bleibt, es ist mehr als ein Viertel. Also äquivalent einem mit 4MHz betriebenen µC und damit lässt sich ja immer noch Einiges anfangen.
    Das ist mir klar
    Ich wollte bloß mal die tatsächliche Frequenz liefern

Ä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
  •  

Solar Speicher und Akkus Tests