AVR Studio - Breakpoints

Gast #470848
Lesenswert?

hey,


gibt es eine möglichkeit per soucecode einen breakpoint fürs avr-studio 
zu setzen : ála  "BREAK()"

grund :
habe in meinem programm zum debuggen diverse asserts eingebaut, welche 
hoffentlich nie angesprungen werden. sollten diese jedoch doch einmal 
angesprungen werden, möchte ich das der debugger/simulator stehen 
bleibt.

-> sollte wenn möglich für simulator + mkII  funktionieren

thx
neubi
Gast #470866
Lesenswert?

Das habe ich bislang noch nicht gefunden. Was (als Krücke)
aber immer funktionieren sollte, wäre eine IF-Abfrage deiner
ASSERT-Bedingung und danach ein Dummy-Befehl, auf den Du einen 
Breakpoint
setzt. In etwa so:

if(assertcondition == false)
{
    dummy++;    // <-und hier einen Breakpoint setzen
}

Das ganze beeinflußt natürlich immer (wie jeder ASSERT) den 
Programmablauf
(Timing, Speicher)!
Gast #471522
Lesenswert?

hey,

bis dato habe ich den ASSERT eigentlich so gemacht wie du bereits oben 
beschrieben hast. jedoch muss ich jedesmal händisch einen breakpoint auf 
die "dummy++" zeile machen !!

-> in der debugversion würde ich gerne viele solcher asserts einbauen 
und jedesmal zig breakpoints händisch setzen ist da etwas langweilig 
?!??!


Neubi
#472035
Lesenswert?

Dann ruf in deinem assert eine routine auf, in der sich der dummy mit 
breakpoint befindet, und dannach ein rücksprung-befehl. AVR studio 
stoppt am breakpoint, du klickst einen step weiter und springst damit 
wieder in das betreffende assert zurück.

Programmiere eigentlich in asm, hoffe ich habs verständlich ausgedrückt.

Gruß
Matze

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