Event Manager als Ersatz für eigene Interruptebene??

Gast #204598
Lesenswert?

Hallo zusammen,

für eine Motorsteuerung benötige ich drei Interruptebenen, die ich
bereits auf dem eZdsp TMS320F2812 von Spectrum Digital implementieren
konnte. Nun habe ich in der Dokumentation von TI gesehen, daß es einen
so genannte Event Manager (EV) geben soll, der das schon alles kann.
Kennt sich jemand damit aus? Kann mir jemand sagen, wie man damit
umgeht? In den drei Interruptebene soll folgendes ablaufen.

1. höchste Priorität      Drehzahl- und Stromregelung
2. mittlere Priorität     Feldschwächberechnung
3. niederste Priorität    Parameterberechnung.

Wäre nett wenn mir jemand helfen könnte!

Danke und Gruß
Gast #204599
Lesenswert?

Tag Johannes,

Grundsätzlich besteht EV aus zwei Timern (EVA und EVB) die
grundsätzlich zur Erzeugung von PWM's und Captures verwendet werden.

Du kannst Dir die Prioritäten der Interrupts raussuchen. So hat EVA
einen höhere Priorität als EVB. Also EVA für Deine Drezahl-
Stromregelung...
EVB für Deine Feldschwächberechnung.
Parameterberechnung einfach mit pollen oder irgendwas....

Mit dem DSP/BIOS müßte es aber am besten funktionieren. Das ist eine
tolle Sache habe ich aber nur mal ganz kurz ausprobiert.

Aber hast Du die Frage nicht schon mal gestellt????

Michael
Gast #204600
Lesenswert?

Die Frage habe ich heute schonmal gestellt, ist aber irgendwie abhanden
gekommen.

Nochmal kurz zu Deiner Antwort:
Du meinst also, wenn ich es bereits mit dem DSP/BIOS, sprich mit SWI,
PRD usw. vor mir habe, kann ich den EV links liegen lassen?

Gruß, Johannes
Gast #204602
Lesenswert?

Hallo,

wo ist denn dann genau der Unterschied zwischen den Interrupts, die man
im DSP/BIOS einrichten kann, und den Timern von EVA und EVB.

Kann es sein, daß man mit EVA und EVB nur Hardwareinterrupts erstellen
kann, während man mit dem Configuration Tool Hardware- und
Softwareinterrupts verschiedener Priorität definieren kann?

Wozu kann man die Capture Units gebrauchen?

Gruß vom Johannes
Gast #204603
Lesenswert?

Hallo Johannes,

so wie ich das verstanden habe verhält es sich wie folgt.

Du startest alle DSP Module (z.B EVA, SPI...) zu Beginn Deines Codes.
Dadurch hast Du automatisch die von der Hardware festgelegten
Interruptprioritäten. So weit so gut...

Nun fällst Du aus Deiner main Funktion heraus, weil du keine while(1)
Schleife einbauen darfst.

Nun fängt das DSP/BIOS an Deinen Code zu handlen. Das DSP/BIOS
verwaltet auch die Hardware-Interrupts und führt sie je nach Priorität
aus, die Du im DSP/Bios (neu) eingestellt hast.

Michael
Gast #204604
Lesenswert?

Hallo,

ich arbeite zur Zeit nur mit dem DSP/BIOS (Configurations Tool). Nun
habe ich aber festegestellt, daß ich ein Problem habe, wenn ich die PWM
synchron (d.h. zeitlich gekoppelt) zu einem Interrupt ablaufen lassen
will. Also: Die Ausführung eines Interrupts beginnt und eine fixe Zeit
später, z.B. 10µs, soll die PWM los laufen (innerhalb dieses
Interrupts).
Wenn ich mit EVA, EVB arbeiten würde, müßte das gehen. Aber mit dem
DSP/BIOS habe ich noch nichts gefunden.
Ich habe jetzt Bedenken, daß ich alles bisher über die Haufen werfen
und die kompletten Interrupts neu programmieren muß (eben mit den EVA
und EVB)

Gruß, Johannes

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