Interrupt PIC18f242

OP (Firma: HellaKG) #1003737
Lesenswert?

Hallo zusammen.

Ich hab ein Programm geschrieben was unter anderem zwei 
Interrupts(INT0,INT1) benutzt.
Das Programm läuft auch wie es soll durch.
Ich kann das ganze Programm im Debugger oder auch in meiner Schaltung 
einmal durchspielen, aber eben nur EINMAL.

Ich spring zwar nach der 2ten ISR wieder zum Anfang des Programms und 
der PIC initialisiert sich neu um wieder von vorn beginnen zu können, 
aber der Interrupt(INT0) läst sich nicht ein 2tes mal auslösen.


Ich weiß zum verrecken nicht woran das liegt.

Bin um jede Antwort dankbar.

Freundlicher Gruß

Florian
#1003744
Lesenswert?

Hi. Ich kenne mich mit PIC´s nicht aus aber bei meinem Mega 2560 war es 
so dass ich return am ende des interrupts einbinden musste.

Frag mich nicht warum.

Der Prozessor Sprang nähmlich durch die gegend, ich nehme an stack 
probleme.

rufst du in deinen Interrupst andere funktionen auf?

ps: Bischen quellcode von dir würde sicher zu mehr antworten führen.
#1003760
Lesenswert?

Florian Weiß wrote:
> Hi,
>
> 1: Ja, ich Springe immer schön mit "refie" aus meinen Interrupts wieder
> raus!

Dann versuch mal das Interrupt flag register manuell zurückzusetzen am 
ende des interrupts.

in ATmega so :

EIFR = EIFR & 0x03; //binär 00000011 für Ex.Int. 1 und Ex.Int. 2
am ende der beiden interrupts.

> 2: Den Quellcode hab ich doch oben angehangen! ;-)

Leider sehe ich da nix :-(

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