www.mikrocontroller.net

Forum: Compiler & IDEs compileroptimierung?


Autor: tsun (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
hallo zusammen!

ich hab mir ein paar routinen fuer mein display mit t6963c controller
geschrieben (siehe anhang).
ohne optimierung laeuft alles prima, doch mit optimierung eben
nicht...
tja, die frage ist wo der fehler liegt?

ich hoffe es kann mir jemand helfen.
danke,
tsun

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tut mir leid, aber deinen Code wird sich wohl niemand anschauen.

Du zeigst null Eigeninitiative.
Beschreib den Fehler genauer (Tipp: Niemand kann deine Gedanken lesen).
Dann grenz den Fehler bitte etwas ein (mit einer genauen
Fehlerbeschreibung sollte das in Eigenarbeit möglich sein).
Die relevanten Codeausschnitte postest du. Dann wirst du dich wundern,
wie schnell sinnvolle Antworten kommen.

Im Zweifelsfall lies bitte:
http://www.lugbz.org/documents/smart-questions_de.html

Autor: tsun (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hast recht, eine genauere fehlerbeschreibung waere angebracht.
der fehler tritt schon in lcd_init() auf.
ich habe den verdacht, dass ich in lcd_reset() (oder lcd_read_status())
ein volatile vergessen habe, allerdings kann ich den fehler nicht
finden.
wie gesagt, ohne optimierung laeuft ja alle perfekt.

hier mal der reset-codeausschnitt:

void lcd_reset(void)

{

  volatile uint16_t i;



  cbi(LCD_C_PORT, LCD_RESET);



  for(i=0; i<5000; i++)

  {

    asm volatile("nop");

  }



  sbi(LCD_C_PORT, LCD_RESET);

}

Autor: Marc (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kannst Du bitte noch die Compilerfehler mitschicken, dann wird es
einfacher.

Gruss
Marc

Autor: tsun (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
compilerfehler gibt es keine.
in meinem testprogramm steht folgendes:

...
lcd_init();
lcd_set_address_pointer(0x00, 0x00);
lcd_print_string("blub");
...

das funktioniert ohne optimierung ja auch alles wunderbar, nur mit eben
nicht...

Autor: prx (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mal nachgerechnet ob das Delay mit Optimierung noch ausreicht?
Delay-Loops lieber komplett innerhalb von asm packen - eben deshalb.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.