AVR ballar ur vid Interrupt
Postat: 17 mars 2008, 20:55:42
Hej!
Jag har ett problem med en PI reglering.
Har skrivit ett program där en loop skriver är värdet till en led display. Innan loopen återgår till början alternerar en mellan att hämta ärvärdet och börvärdet.
Ärvärdet från AD omvandlaren och börvärdet från ett tumhjul.
I Timer2 interrupten ligger reglerings sekvensen. Räkna ut felet och dela upp det i I-tids portioner.
Styrignalen är OCR1A
Mitt problem är:
När den hoppar till interrupten så slocknar displayen och ingenting fungerar. Inte ens om jag bara skriver reti i interrupten. Jag har kört debuggen 3 miljoner varv och där fungerar skiten.
Har haft det här problemet förrut när jag programerat jätte simpla grejer i Assembler 4. Det verkar som att så fort jag har ett program som hoppar mellan en loop och lite subrutiner så kan jag inte använda interrupts.
Är det någon som vet vad detta beror på?
Till saken hör nog att jag använder Algorithm Builder 5.26, en AtMega8535. Och att jag är jävligt grön och självlärd vad det gäller microcontrolers...
Tack på förhand!
//John
Jag har ett problem med en PI reglering.
Har skrivit ett program där en loop skriver är värdet till en led display. Innan loopen återgår till början alternerar en mellan att hämta ärvärdet och börvärdet.
Ärvärdet från AD omvandlaren och börvärdet från ett tumhjul.
I Timer2 interrupten ligger reglerings sekvensen. Räkna ut felet och dela upp det i I-tids portioner.
Styrignalen är OCR1A
Mitt problem är:
När den hoppar till interrupten så slocknar displayen och ingenting fungerar. Inte ens om jag bara skriver reti i interrupten. Jag har kört debuggen 3 miljoner varv och där fungerar skiten.
Har haft det här problemet förrut när jag programerat jätte simpla grejer i Assembler 4. Det verkar som att så fort jag har ett program som hoppar mellan en loop och lite subrutiner så kan jag inte använda interrupts.
Är det någon som vet vad detta beror på?
Till saken hör nog att jag använder Algorithm Builder 5.26, en AtMega8535. Och att jag är jävligt grön och självlärd vad det gäller microcontrolers...
Tack på förhand!
//John