Forum: Mikrocontroller und Digitale Elektronik timer interupt atmega8515L geht nicht


von TiCon (Gast)


Angehängte Dateien:

Lesenswert?

also, ich bin blutiger Anfänger bei uC.

Ich hab folgendes Problem, hab heut mein STK500 bekommen (freu), und da
war auch schon ein ATmega8515L dabei, toll, jetzt hab ich ihn mit AVR
Studio programmiert,und zwar mit dem meinem 1. richtigen programm(na ja
vieles abgeschaut, wie denn auch sonst):
soll nach einer gewissen Zeit ein LED zum leuchten bringen und ein
anderes löschen, so weit so gut, ich hab das versucht mit einem 8bit
timer zu lösen, doch oh wunder auch wenn es in der simulation geht, in
real leuchtet nur das eine LED und das andere bleibt dunkel.
nach vielen tests hab ich bemerkt, das der Timer overflow interupt
nicht ausgelöst wird, warum? mach ich was falsch, ich habs mit 4MHz
simuliert, und der mega is mit 3,68MHz auf em bord ja nicht gerade
langsamer.
also bitte HILFE, bin noch am verzweifeln, das der mist nicht klappt

schaut euch mal das programm an und dann sagt mir das mein mega nicht
kaput ist sondern mein HIRN (=

wenn ihr zeit habt, probiert doch mal das Programm bei euch und sagt ob
es geht

danke schon mal im Voraus

von Bernhard S. (bernhard)


Lesenswert?

Ich vermute, Du hast die Interrupt-Vektoren nicht auf den richtigen µC
umgeschrieben?

Und es wird immer nur eine LED leuchten?

  ldi temp, 0b11111110
  out PORTB, temp


Bernhard

von TiCon (Gast)


Lesenswert?

ja das iust mir klar, aber ich hab den Timer interupt auch schon auf
verschiedene andere adressen gestetzt, und im Datasheet steht sie ja
richtig drin,an der adresse, an der ich sie hab. Folglich der interupt
Vektor stimmt.

und

  ldi temp, 0b11111110
  out PORTB, temp

wird nicht ausgeführt, da die falsche LED leuchtet, also wird nur

  ldi temp, 0b01111111
  out PORTB, temp

ausgeführt;
also das ist wohl doch die richtige Konfiguration,aber da ich heut
abend einen ATmega16 bekomm, probier ich das gleich mal mit dem aus.

von johnny.m (Gast)


Lesenswert?

...Ich hoffe, Du denkst daran, dass beim Mega16 die
Interrupt-Vektortabelle komplett anders ist (v.a. dass die
Interrupt-Vektoren 2 Wort breit sind und demnach ein einzelnes 'reti'
bei nicht verwendeten Vektoren nicht ausreicht...)...

von TiCon (Gast)


Lesenswert?

danke für den hinweis, werd ich jetzt gleich mal ausprobieren

von TiCon (Gast)


Lesenswert?

also mit dem atmega16 geht alles prima, komisch

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.