Durchlaufzeit berechnen WIE?

Gast #1041514
Lesenswert?

Hallo alle mit einander,

ich sitze hier und überlege wie Ich den Wert für meinen Zähler richtig 
berechne, damit auch die Richtige Zeit dabei rauskommt.

Also, es geht darum, dass ich in meinem Programm einen Portpin auf HIGH 
setze und möchte, das er nur eine bestimmte Zeit gesetzt bleibt und 
diese Zeit möchte ich ausrechnen. Ich möchte, dass wenn die Zeit ( 
Durchläufe) gezählt werden,  das Programm aber weiter arbeitet. Deswegen 
rufe ich ein Unterprogramm in meine main Schleife auf, in der gezählt 
wird wie oft ich schon da drin war. Beim jedem Aufruf wird der Speicher 
um 1 erhöht. Wenn ich jetzt sage, dass mein Speicher nach z.B.: 1ms den 
Wert  erreichen soll, muss ich wissen bis wo ich Zählen muss.

Ich arbeite mit einer internen Frequenz von 24,5 MHz und habe einen 8bit 
µC. Einen Timer will ich dafür nicht nehmen. Die Durchlaufzeit hängt 
doch von der Länge und den Befehlen meine Codes ab oder liege ich da 
Falsch.

Kann mir einer von euch ein Tipp geben, ich wäre euch dankbar!
Gast #1041520
Lesenswert?

>Die Durchlaufzeit hängt
>doch von der Länge und den Befehlen meine Codes ab oder liege ich da
>Falsch.

Soweit korrekt. Aber da du von main sprichst, vermute ich das du in C 
programmierst. Da musst du den entstehenden Assemblercode analysieren 
und Befehle zählen um zu wissen wielange er benötigt für einen 
Durchlauf.



>Einen Timer will ich dafür nicht nehmen.

Das würde ich dir aber stark raten!
Gast #1041538
Lesenswert?

"will" ich dafür nicht nehmen - das ist kein Argument.
Kann ich nicht nehmen, wäre akzeptabel. Das zeugt dann i.a. von 
mangelnder Programmierintelligenz, dem kann man hier abhelfen. Ein Timer 
kann problemlos mehrere Aufgaben steuern.
Gegen "ich will nicht" ist kein Kraut gewachsen, also sinnlos.

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