Gast
#1316029
Guten Abend!!! ich Programmiere einen Atmega8 in Assembler. Ich möchte den timer1 für 2 dinge verwenden. mein Problem: bei der simulation im AVR studio springt der timerinterrupt nach auslösung komischerweise auf die adresse 0x000, sprich er startet von anfang an; was natürlich völliger blödsinn ist, da er nach dem "sleep" befehl wieder einspringen sollte. warum tut er das nicht? ob ich den "nop" befehl nun weg mache oder nicht, spielt keine rolle. natürlich funktioniert das programm praktisch in der schaltung ebenfalls nicht. noch ein paar einzelheiten: und zwar wird der timer 1 einmal als sicherheit für eine gewisse zeit programmiert und löst dann einen interrupt aus. als 2. wird er verwendet, um den µC jede 10 min aus dem schlaf zu wecken. (das passt alles noch nicht, will erstmal mein problem lösen) hier mal ein ausschnitt aus dem programm:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
"Haupt" ist das hauptprogramm, indem ein adc einen wert einliest und auswertet. so, ich hoffe ihr könnt damit was anfangen und habt vielleicht ne idee.