Auto Step in AVR Studio 7

OP #5730573
Lesenswert?

Ich programmiere zu Schulungszwecken eine Stoppuhr per timer overflow.
Das ganze Schritt für Schritt durchzusteppen ist doch mehr als lästig.

Also wieso gibt es im Studio 7 keinen autostep?
Kann man den irgendwie nachrüsten?

Wen man einfach die step Taste gedrückt hält, sieht man das Ergebnis ja 
erst wenn man die taste wieder los lässt. was auch ziemlich lästig ist.
(Firma: Anscheinend Corner-Cases ;-)) #5730935
Lesenswert?

Jens N. schrieb:
> Und so das mir die Ausgänge auch in Echtzeit angezeigt werden. Nicht
> erst nach Stopp.
>
Ich fürchte das geht so nicht.
Wie bereits geschrieben, kenn ich nur Breakpoint setzen ( Ganz links am 
Rand in der gewünschten Zeile klicken, dann erscheint der rote 
Breakpoint ).

Gründes Dreieck klicken ( Start Debugging (F5) ).


Bernd_Stein
Gast #5732496
Lesenswert?

Hi

>In Studio 4 gibt es ein autostep. Kann natürlich sein das es manuell
>nach installiert wurde. Zumindest auf unseren Schulrechnern.

Ja, ist offizieller Bestandteil des 4er Studios.

>Wenn es jedoch von Haus aus dabei war, frage ich mich wieso sie es weg
>gepatched haben....

Hat eigentlich niemand wirklich gebraucht. Mit F10/F11 kannst du 
schneller von Hand steppen.

MfG Spess
(Firma: Anscheinend Corner-Cases ;-)) #5801338
Lesenswert?

Warum wird zu diesem Zeitpunkt *ADCSRA.ADIF* schon gesetzt ?

Ich betreibe den AtMega88PA mit dem ATMEL-ICE im DebugWIRE-Mode.
Das Programm lasse ich mit Continue (F5 ) starten und bleibe bei dem 
Breakpoint, wo die Zeile gelb hinterlegt ist, zum ersten mal stehen.

Der Vorteiler für den ADC-Clock ist auf 16 eingestellt und da es sich um 
die Erstwandlung ( First Conversation ) handelt, würde es 25 ADC-Takte 
dauern bis *ADCSRA.ADIF* gesetzt wäre.

Es sind aber bis zu diesem Breakpoint gerade mal mehr als 10 CPU-Takte 
vergangen.
1
;
2
;ADC Erstwandlung im Free Running Mode. Danach Einzelwandlungen mit ADC-ISR.
3
;10-Bit, Aref=AVcc, 115200 Hz, digitale Eingangspuffer alle abschalten 
4
;
5
 ldi  a,$3F                 ;Alle digitalen Eingangspuffer abschalten..
6
 sts  DIDR0,a               ;..(PC0-5), um die Leistungsaufnahme zu reduzieren
7

8
 ldi  a,1<<REFS0            ;Aref = AVcc.. 
9
 sts  ADMUX,a               ;..mit 100nF am Aref-Pin
10

11
 ldi  a,1<<ADEN|1<<ADSC|1<<ADATE|1<<ADPS2;ADC Freigeben, Erstwandlung starten,..
12
 sts  ADCSRA,a              ;..Free Running Mode und Vorteiler auf 16 
13

14
 sei                        ;Globale Interruptfreigabe im CPU-Statusregister
15
;
16
;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
17
;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
18
;H Hauptprogrammschleife
19
;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
20
;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
21
;
22
_main:
23
 lds   a,ADCSRA             ;Nur wenn ADATE und ADIF gesetzt sind, dann ist.. 
24
 sbrc  a,ADATE              ;..die Erstwandlung abgeschlossen. Dieser..
25
 sbrs  a,ADIF               ;..ADC-Wert ist unbrauchbar und wird verworfen.
26
 rjmp  _mwert_check 
27
 ldi   a,1<<ADEN|1<<ADSC|1<<ADIF|1<<ADIE|1<<ADPS2;Einzelwandlung mit ADC-ISR..
28
 sts   ADCSRA,a             ;..starten
29

30
 ;sbrs key_reg,key.actuated  ;Taster betaetigt und entprellt?..
31
 ;rjmp _idle                 ;Programmlaufschleife
32
_mwert_check: 
33
 sbrs flag_reg,mwert.rdy    ;ADC-Mittelwertbildung fertig = Ueberspringen
34
 rjmp _mwert_busy           ;ADC-Mittelwertbildung ist nicht fertig


Bernd_Stein
Angehängte Dateien:
Gast #5871178
Lesenswert?

Bernd S. schrieb:
> Danke, habe es gerade eingestellt. Will jetzt nicht extra neu starten,
> da ich mich immer als Admin anmelden muss.

Jetzt denke dir zu deiner Frage noch einen passenden Titel aus und dann 
wird ein Moderator so freulich sein, dein Thema in einen eigenen Thread 
zu verfrachten.
Mit "Autostep" hat das nur wirklich überhaupt nichts zu tun.

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