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
Gast
#3551258
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.
ahh... danke kann jemand vielleicht noch was zu punkt 3. sagen mfg
Gast
#3551585
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
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.