Hi Leute,
hab in der Schule eine Aufgabe zu lösen.
Und zwar soll ich beim AN2131 Einen externen Interrupt haben.
Wird der Interrupt ausgeführt soll am anderen Port, zum Beispiel PORTB
ein HIGH auf einen beliebigen PIN rauskommen.
Hier mein C-Programm:
#define ALLOCATE_EXTERN
#include "ezusb.h"
#include "ezregs.h"
void main (void)
{
PORTCCFG=0x04; // Wenn das 0x00 wäre so würden die PINS die
Erstbelegung haben als normale Ein/Ausgänge. Nur der INT0# also der
Interrupt PIN muss auf 1 gesetzt werden daher also die HEX-Zahl 0x04.
PORTBCFG=0x00; //Port B werden die PINS als EIN/AUSGÄNGE verwendet.
OEC=0x00; // Alle PINS am PORT-C sind als Eingang definiert
OEB=0x02; //Nur der zweite PIN am PORT-B ist als Ausgang definiert
while(1)
{
}
}
void Externerinterrupt (void) interrupt 1
{
OEB=0x02; // Also am PORTB-Ausgang 01 soll das HIGH rauskommen, also
die 3,3V die der µC liefert. Aber nur wenn der Interrupt extern gesetzt
wird.
}
Habe am INT0# PIN am PORT-C einen Taster angehängt mit +3,3 V.
Meine Vorstellung ist es das wenn an dem Interrupt-PIN eine Spannung
anliegt das der Interrupt dann ausgeführt wird.
Das C-Programm ist sehr Mager, mehr fällt mir nicht ein, gehört noch was
dazu, iergendwelche Befehle ? Also das Problem ist es liegt zwar am
Interrupt-PIN eine Spannung an (3,3V) doch am anderen PIN wo ein HIGH
rauskommen sollte, kommt nichts raus.
Der Springt also nicht in den Interrupt vermute ich. Hat wer eine Idee,
weiß wer was ich hier falsch mache ?
Liebe Grüße
Beitrag "Interrupt 0 AN2131" Jetzt hat der arme Thorsten extra eine Geschlechtsumwandlung gemacht um das Problem doch noch von jemand anderem lösen zu lassen;)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.