Forum: Mikrocontroller und Digitale Elektronik Interrupt vs Event (EXTI, stm32f4)


von Sina A. (sinapse)


Lesenswert?

hallo,

der external interrupt/event controller unterscheidet interrupts und 
events (stm32f4, cortex m4).

1. was zum teufel ist der unterschied zwischen den beiden und was bringt 
einem die unterscheidung???

2. mit einem interrupt wird die zuständige interruptroutine ausgeführt 
(siehe vektortable). was wird bei einem event ausgeführt (wo finde ich 
eine "eventtable")?

3. bei einem externen interrupt wird immer das pending bit auf 1 
gestellt. bei externen event nicht. was soll das?  ich dachte immer das 
pending bit wäre dazu da, um anstehende irqs zu markieren. warum wird 
hier sofort beim ersten das pending bit gesetzt? warum muss man das per 
hand wieder loeschen, kann das nicht die hardware? was passiert, wenn 
ich das pending nicht loesche? irgendwie hab ich das pending bit noch 
nicht so richtig verstanden, glaub ich...

danke

von Uwe (Gast)


Lesenswert?

Events sind in den meißten µCs direkte Datenkanäle zwischen einzelnen 
IO-Komponenten. Das bedeutet wenn man das richtig Konfiguriert wird z.B.
wenn eine Ad-Wandlung fertig ist ein Event ausgelöst und die Daten zum 
UART gesendet ohne CPU oder Interupt, deshalb gibt es dafür auch keinen 
Handler, weils ja automatisch passiert. Es gibt halt irgendwo eine 
Konfigurationsmatrix welche Komponente bei welchem Event Daten an eine 
andere Komponente Sendet bzw. mit ihr verbunden ist.

von Sina A. (sinapse)


Lesenswert?

ahh... danke

kann jemand vielleicht noch was zu punkt 3. sagen

mfg

von Chuck Norris (Gast)


Lesenswert?

Was ist denn dann der Unterschied zwischen Event und DMA? Den DMA kenne 
ich aus Anwendungen wo Peripherien mit dem RAM verbunden werden. Also 
ist DAS der Unterscheid?
DMA für Peripherie=>RAM (oder umgekehrt)  und
EVENT für Peripherie => Peripherie

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
Noch kein Account? Hier anmelden.