Suche spezial Delayfunktion

Gast #61737
Hi zusammen...
@*USER*: Das Beispiel ist nicht gut! Du legst da eine Funktion an, die
laut definition einen int-Wert nach beendigung zurückliefert. Du
lieferst aber keinen Wert zurück. Also entweder fehlt das das "return
(value);" oder Du musst die Funktion als void deklarieren.

Gruß,
Patrick...
Gast #61738
Hallo
Schau doch einfach mal ins avr-libc-user-manual. Unter 'Related
Pages'->'Inline Asm'->C-Stub-Functions. Da wird eine Delay-Routine
vorgestellt der man den Wert in ms nur zu übergeben braucht.

Gruß - Wolf
#61739
Mit Delays (Nichtstun) >1ms sollte man aber nur äußerst sparsam
umgehen.

Damit versaut man sich nämlich total die Echtzeitfähigkeit und
Erweiterbarkeit seiner Programme.


Besser ist da ein Scheduler, der Aktionen verzögert startet ohne dabei
kostbare Rechenzeit zu vernichten.


Peter
Gast #61740
Ist schon klar Peter, nur in meinem speziellen Fall brauchte ich eine
feste Verzögerung von 5ms und dann mußte ich die Ports wieder tristate
schalten. (bistabile OMRON-Relais zwischen 2 Port-Pins)
In dieser Zeit darf/muß auch nichts anderes passieren.
Gruß
Wolf

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.