dynamische Zeitschleife

Gast #66471
Hallo, wer kann mir weiter helfen, ich möchte eine dynamische
Zeitschleife programmieren, d. h. so dass ich beliebige Pausenzeiten
bei z.B. High-Signal am I/O Port oder dass die Zeitschleife mit
fortschreitender Zeit also nach mehreren Durchläufen selbstständig
kürzer wird. Möchte ein paar LEDs ansteuern und diese beliebig hell
dimmen, über PWM, deswegen die dynamische Zeitschleife.
Das eigentliche Problem aber ist, dass ich bei der "herkömmlichen"
Software-Zeitschleife (16bit) keine Variablen übergeben kann!
Wer kann mir weiterhelfen und weiss wie man das programmieren könnte?



Zeitschleife:

LDI ZH,HIGH(65535) ;kann in die Klammer keine Variable/Register setzen
LDI ZL,LOW(65535)
count:
SBIW ZL,1
BRNE count


Freu mich über antworten,
Danke im Vorraus, Manuel
Gast
Weil Du den falschen Befehl benutzt; LDI lädt per Definition eine
Konstante. Wenn Du zum Beispiel in den Registern R16 und R17 die
Variable speicherst, kannst Du den Wert mit

MOV ZH,R16
MOV ZL,R17

ins Z-Register schaufeln. Oder, falls das Z-Register nicht noch
zeitweise eine andere Funktion hat, benutze es direkt als
Variablenspeicherplatz.

Gruß, Frank

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.