Forum: Mikrocontroller und Digitale Elektronik Tiny24A und dWire Timer Problem


von tubie (Gast)


Lesenswert?

Hallo zusammen,

habe seit langem mal wieder ein Projekt am laufen, dazu noch etwas die 
Hard und Software Upgegradet und schon fangen die Probleme an... Ich 
hoffe, ihr könnt mir mal wieder helfen.

Zur Situation:
AVR Studio 6.2, JTAGICE3 über dWire an einen Tiny24A

Programm übertragen klappt wunderbar, nur dann fangen die Probleme an.

Beim Schreiben das Timer Registers TCCR0B wird automatisch das TIFR0 
Register auf $07, also werden alle 3 Interrupts (OCF0B, OCF0A und TOV0) 
ausgelöst und TCNT0 steht auf einem zufälligen Wert.


Das ganze sieht dann im Code so aus:
1
reset:
2
  ldi r16, (2<<CS00)  ; Clk/8
3
  out TCCR0B,r16
4
  
5
  ldi r16, 104        ; OC Match bei 104
6
  out OCR0A,r16
7
8
  ldi r16, (2<<WGM00) ; Clear on Compare
9
  out TCCR0A,r16
10
11
  ldi r16, (1<<OCIE0A); Interrupt bei Compare Match
12
  out TIMSK0,r16
13
 
14
  sei
15
16
l:
17
rjmp l

Ich vermute, das der Timer weiter läuft, während die Daten an den PC 
übertragen werden. Bei meinem alten Mega16 Debugger über RS232 und JTAG 
und Studio 4.x war das kein Problem. Da war alles synchron.

Ein NOP in der Timer0-ISR, welches mit einem Breakpoint versehen wurde 
wird überfahren, erst nachdem ich die NOP Anweisung gegen ein BREAK 
tausche, wird auch wirklich angehalten.

Was ist hier Faul?

Kann man da irgend etwas einstellen? Ist sicherlich nur eine 
Kleinigkeit.

Viele Grüße,

Tubie

von Tubie (Gast)


Lesenswert?

Ich muss mich nochmal melden - so kurz vorm Verzweifeln.

In Studio 6.2 geht einiges nicht, was in 4.x Selbstverständlich war wo 
sind die Schalter versteckt?

Die Funktion "Run to Cursor" funktioniert genauso wenig wie die Break 
Points.

Wenn man während dem Debugging im Editor mit der Maus über ein Register 
oder eine Variable gefahren ist, so wurde der Inhalt oder Adresse 
angezeigt. Wie kann ich das wieder einschalten?

Oder sind das alles Einschränkungen der debugWire???

Viele Grüße,

Tubie

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.