AVR Projekt Module

Gast #4893002
Lesenswert?
• ▲
▼
Hallo zusammen,
ich bin gerade dabei ein neues AVR-Projekt zu beginnen und stelle mir 
nun einige Fragen. Ich kann um mein Projekt übersichtlicher zu halten 
viele kleine Module und methoden erstellen. Was mich daran stört ist, 
dass wenn ich für eine kleine Aufgabe direkt eine Methode schreibe und 
diese nur einmal verwendet wird, führt das nicht zu einem 
Delay(Push/Pop-Befehle)?
Gast #4893005
Lesenswert?
• ▲
▼
Dieter N. schrieb:
> Was mich daran stört ist,
> dass wenn ich für eine kleine Aufgabe direkt eine Methode schreibe und
> diese nur einmal verwendet wird, führt das nicht zu einem
> Delay(Push/Pop-Befehle)?

kommt darauf an, ob es in verschiedenen Dateien ist und wie die 
kompilierst. ( Stichwort: LTO (link-time optimization) )
Gast #4893015
Lesenswert?
• ▲
▼
Dieter N. schrieb:
> führt das nicht zu einem
> Delay(Push/Pop-Befehle)?

Ähhmm...
Sorry, aber bei einer solchen Frage, kann ich nur vermuten, dass die 
wirklichen Zeitfresser ganz woanders sind.

Eigentlich kann man immer nur in eine Richtung optimieren.
Entweder Speed, oder Platz.
Du versuchst Richtung "Modular" zu optimieren.
Das ist schön und gut so.
Meist muss man dann aber Abstriche bei Speed, UND Platz machen.

Also:
Bilde einen Kompromiss!
Aber das erst, wenn du wirklich ganz genau weißt, WO es eng wird.

Denn:
Für ungenutzten Speicher und eingesparte Taktzyklen gibts kein Geld 
zurück.
Gast #4893017
Lesenswert?
• ▲
▼
Dieter N. schrieb:
> Was mich daran stört ist,
> dass wenn ich für eine kleine Aufgabe direkt eine Methode schreibe und
> diese nur einmal verwendet wird, führt das nicht zu einem
> Delay(Push/Pop-Befehle)?

Mit diese Frage sollst du dich nur beschaeftigen wenn es wichtig ist.
Wenn zB einen ADC conversion 133.71 statt 133.62 millisekunden dauert, 
ist das nicht wichtig. Aber wenn du ein loop hast der 10000 angerufen 
wird, ja dann ist es wichtig.

Wenn man keine 'Methode' dafuer benutzt, ist es oft schwieriger lesbar 
und ist es schwieriger zum debuggen.
Gast #4896851
Lesenswert?
• ▲
▼
Dieter N. schrieb:
> wenn ich für eine kleine Aufgabe direkt eine Methode schreibe und diese
> nur einmal verwendet wird, führt das nicht zu einem Delay

Arduino macht das genau so. Wenn das schnell genug für dich wäre, 
brauchst du dir keine Gedanken zu machen.

Ansonsten: Erstmal sauber und modular entwickeln, bis funktionale 
Korrektheit erreicht ist. Dann optimieren, falls und wo nötig.

"static inline" Funktionen oder Macros können dabei helfen, Performance 
und Modularität zu vereinen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren