Forum: Mikrocontroller und Digitale Elektronik Interrupt ccs Compiler


von NaNo (Gast)


Lesenswert?

Suche schon 2 stunden verzweifelt nach Hilfe. Ich habe einen Interrupt
(INT_RB) aktiviert. Nun sollte beim auftreten eines Interrupts der Pic
zur Adresse 0008 springen. Aber... im C gibts diese Adressen nicht mehr
wirklich. Kennt jemand ein Befehl um in die Subrouteine des Interrupts
zu gelangen.

: Gesperrt durch User
von let (Gast)


Lesenswert?

Hallo,

zwar verstehe ich die Frage nicht aber so macht man das eigentlich
mit dem CCS:

#int_rb
rb_interrupt()
{
   // kurz und schnell
}

main()
{
   enable_interrupts(GLOBAL);
   enable_interrupts(int_rb);

   while (1)
   {
      ...
   }
}

  - Michael

von NaNo (Gast)


Lesenswert?

Danke genau das meinte ich :-) .

rb_interrupt()
{
   // kurz und schnell
}

Wie komm ich wieder in main() zurück?

von inoffizieller WM-Rahul (Gast)


Lesenswert?

>Wie komm ich wieder in main() zurück?

Darum kümmert sich in der Regel der Compiler.

von let (Gast)


Lesenswert?

Wichtig ist beim Interrupthandler nur das #int_rb attribut. Der Name
selbst ist egal. Der Handler ist im Grunde genommen eine normale
Funktion (nur bitte nicht direkt aufrufen). Wenn der Code abgearbeitet
wurde geht es an die Stelle zurück an der der Interrupt ausgelöst
wurde.
Man kann den Handler aber auch vorzeitig per 'return' verlassen falls
es gerade nichts für ihn zu tun gibt.


 - Michael

von let (Gast)


Lesenswert?

^ ich meine der Handler kann sich selbst vorzeitig per return beenden.
Wie bei einer normalen Funktion halt.

von christian (Gast)


Lesenswert?

ich habe mehrere probleme  und zwar ich versuche

eine kommunication zwischen einem pic und einem pc    via  einer rs232 
herzustellen ich habe das pc programm unter c++ programmiert was kein 
problem war  nur beim programmieren des pics  18f2620 habe ich mehrere 
probleme  ich habe  vorgegeben das ich mit dem ccs c compiler 
programmieren soll

jedoch schaffe ich es nicht denn pic einzubinden es besteht bereits ein 
programm der für das auslesen und ansteueren eines HTRC 110 (RFID) 
zsutändig ist    dafür habe ich jedoch nicht die datei gebraucht wenn 
ich aber versuche
den pic einzubinden  mit
#Device PIC18f2620    kommt die fehler meldung  23
dies ist eben so wenn ich #include <18f2620.h>

der Pic  soll in folge einen interrupt auslösen wenn etwas über die 
serielle schnittstelle  kommt    die cts  leitung existiert leider nicht

bitte um hilfe     wenn jemand schoin sowas programmiert hat bitte ich 
ihn vlt sich privat bei mir zu melden

chr15.57@live.de

von Karl H. (kbuchegg)


Lesenswert?

christian schrieb:
> ich habe mehrere probleme  und zwar ich versuche

Dann mach bitte einen eigenen Thread auf.
Dein Problem hat nichts, aber auch gar nichts mit dem Thema dieses 
Threads zu tun. Einzige Gemeinsamkeit ist PIC und CCS Compiler. Und das 
ist zu wenig.

Dieser Beitrag ist gesperrt und kann nicht beantwortet werden.