PIC Interrupt-Routinen in C

Gast #3162914
Lesenswert?

Hallo und einen schönen Abend an alle Leser,

nachdem ich mich nun schon eine ganze Weile mit dem CANBus und PICs 
beschäftige soll es nun an die Ausführung von Interrupts vom CAN aus 
gehen. Leider stoße ich dabei auf die verschiedensten Ausführungen und 
kann aber bisher keine sinnvoll zum Laufen bekommen. Nun die Frage an 
die Experten: Was ist nötig und gibt es tatsächlich ISRs die 
folgendermaßen aussehen:

1. void interrupt ISR() - scheint mir ein wenig eine Schmalspurlösung!

2. oder sollte es mir _asm durchgeführt werden?

3. oder gibt es sonstige Alternativen zur Programmierung in C18
Gast #3162990
Lesenswert?

Also gut Holger :)) normalerweise kommt jetzt die Antwort - kenn ich 
schon, hab' ich nicht verstanden, find' ich net - aber vielen Dank, das 
kannte ich echt noch nicht und so wie das aussieht hilft mir das auch 
echt weiter!!

Vielen Dank für die Hilfe!!
#3163004
Lesenswert?

> Leider stoße ich dabei auf die verschiedensten Ausführungen und
> kann aber bisher keine sinnvoll zum Laufen bekommen.
und du möchtest jetzt eine weitere von uns in hoffnung, dass du die zum 
laufen kriegst? ...oder schenkst du uns einen glaswürfel, mit dem wir 
dein problem erörtern können? oder, was war nochmals deine frage?
bitte gern geschehen!! (ebenfalls mit zwei ausrufezeichen, dafür von 
herzen)
Gast #3163035
Lesenswert?

Hans schrieb:
> soll es nun an die Ausführung von Interrupts vom CAN aus
> gehen.


Den üblichen Hinweis auf Beispiele und Google mal beiseite, from Prinzip 
ist das megasimpel.

Da kommt n Interrupt und dein Progrämmchen springt in eine Funktion.

Das war's, wat willste noch wissen ;-) ?

Interessant ist vielleicht noch das man selber rausfinden muss wer den 
Interrupt ausgelöst hat, da halten die üblichen verdächtigen n Fähnchen 
hoch und du kannst Sie der Reihe nach abklappern.

Das macht die Sache in C Kinderleicht, eine Loop in der Interrupt 
Funktion bis alle Fähnchen unten sind. Dann ist die Funktion zu Ende und 
macht bei C dann von selbst da weiter wo Sie unterbrochen wurde (daher 
auch der Name).

n zweiten Interrupt für eilige gibt's auch noch, der springt dann die 
Priority Funktion an, wie beim Flieger die FirstClass. Braucht man aber 
noch weniger als die Schnösel welche da rumlungern und sich supertoll 
vorkommen.

Der Rest ist Datenblattstudium in Sachen Interrupts.

Noch Fragen?

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