Hallo zusammen,
es geht darum, dass ich ein vom Logic-Analyser aufgenomme Sequenz näher untersucht habe, mir aber nicht erklären konnte wieso es einen Takt länger dauert.
Da in anderen Foren entweder zu viele Trolle oder aber die Forensoftware nicht so dolle ist, habe ich mich entschlossen hier weiter zu machen.
Die zum LA-Screenshot dazugehörige Codesequenz ist super einfach, aber um herauszufinden wo der eine Takt herkommt muss man sich schon mächtig ins Zeug legen.
[code]
_main:
sbis PINB,
1
rjmp _main
sbi LED_PORT,led
.ge ;LED-Gelb einschalten ( TEST )##################################################
cbi LED_PORT,led.ge ;LED-Gelb ausschalten
[code]
Grundsätzlich ist der Zeitpunkt, wann dass Signal auftaucht sehr entscheidend und deshalb auch ob dass Signal bzw. Pegel überhaupt erkannt wird. Die Signallänge eher zweitrangig.
Denn an Punkt 1 ist die Signallänge nicht wesentlich kürzer als bei Punkt 2. Es ist aber halt kurz nach dem enscheidenen Moment aufgetaucht ( fallende Flanke ).
Warum im DB-Beispiel der Transparante-Teil vom Latch schraffiert dargestellt wird, versteh ich nicht, denn den halte ich für irrelevant.
Jetzt konkret zu der oben aufgeführten Codesequenz :
Wichtig ist dass das
PINxn-Register zum Zeitpunkt,
wenn der Befehl SBIS ausgeführt wird high ist. Sonst kommt es ja zu keinem Überspringen, ergo wird die LED-Gelb nicht eingeschaltet ( 3 ).
Ich habe mir dass Schraffieren des gelatchten Zustands erpart und stattdessen später für den Anfang statt dessen, unten einen Strich gemacht und am Ende oben.
Die kürzeste Zeit auf die auf dass Signal reagiert werden könnte, wäre im Moment des zweiten Taktes, bei der fallenden Flanke, des unbedingten Sprungbefehls rjmp ( 2 ). Dies wären 5 Takte, da ein Befehl ja mindestens einen Takt benötigt und dieser nunmal der zweite Takt des rjmp-Befehls ist.
Die längste Zeit die auf das Reagieren des Signals vergehen würde, wären 7,5Takte. Also kurz nach der fallenden Flanke im 2ten Takt des rjmp-Befehls ( 1 ).
Etwas einfacher wird es wohl hier erklärt :
https://www.roboternetz.de/community/thr…ll=1#post659248
Hier hatte ich nicht die Hife erhalten, die ich mir erhofft hatte :
https://www.mikrocontroller.net/topic/84335#6210286
Beim Worst-Case-Fall sind wir uns da schonmal einig. Der Best-Case-Fall steht noch offen, da dies ja nur meine Ansicht ist.
_Machtwas_