PIC variable Delay Routine

Gast #4178010
Lesenswert?
• ▲
▼
Hallo,
ich suche eine möglichst einfache Routine, mit der ich einen "Delay" 
erzeugen kann, dessen Länge durch 24 Bit (Also 3 Register) bestimmt 
wird.
Mit anderen Worten, ich stecke einen 24 Bit langen Wert aufgeteilt in 
3x8 Bit in 3 Register und Rufe dann die "Delay" Routine auf, die dann 
genauso viele Takte wartet, wie hoch der Wert in den 3 Registern ist.
Natürlich wäre ein Delay von wenigen Takten nicht möglich (Mindestens 4 
schon mal wegen CALL und RETURN geschweige denn von der eigentlichen 
Delay Logik)
Der Delay sollte auf 1000 bis 1.000.000 Takte funktionieren.
Ich weiß nicht ob jemand so eine Routine kennt oder hat, aber ich komme 
gerade irgendwie nicht selbst drauf.
Ich benutze übrigens den PIC16F887.

Grüße Max
Gast #4178041
Lesenswert?
• ▲
▼
Es geht um Assembler.
Und Zweck des ganzen ist es, dass ich dynamisch im Programm einen Delay 
erzeugen kann.
Interrupts bzw. die Timer kann ich dafür aber nicht benutzen.
Ich brauche die noch für einen anderen Zweck.
#4178151
Lesenswert?
• ▲
▼
Max schrieb:
> Und Zweck des ganzen ist es, dass ich dynamisch im Programm einen Delay
> erzeugen kann.
Ja, das ist klar, wozu braucht man aber ein 1'000'000 Zyklen langes 
Delay mit einer Auflösung von einem Tatzyklus?

Max schrieb:
> Interrupts bzw. die Timer kann ich dafür aber nicht benutzen.
> Ich brauche die noch für einen anderen Zweck.
Achtung, wenn nur ein einziges davon das Delay stört, wird das mit der 
Genauigkeit von einem Tatzyklus auch nichts mehr.
Wenn du das nicht gleichzeitig brauchst könntest du dir vllt. auch kurz 
einen Timer für die Wartezeit ausleihen.

Antwort schreiben

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.

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.