Hallo Zusammen, ich muss eine Steuerung für einen Motor entwickeln. Dazu habe ich das das TMS320F2812 - Board von TI zur Verfügung. Ich brauche 3 Interruptebenen: 1. Höchste Priorität, soll alle 200µs ausgeführt werden. (z.B. für Drehzahlregelung) 2. Mittlere Priorität, soll alle 2ms ausgeführt werden. (z.B. für feldschwächbereich) 3. niedrigste Priorität, soll ausgeführt werden, wenn grad Zeit ist. (z.B. um Parameter zur Laufzeit zu ändern) Nun gibt es mit PRD und CLK die Möglichkeit, Interrupts periodisch aufzurufen, es kann auch eine Zeit angegeben werden, wann dies geschehen soll. Leider wird bei diesen Objekttypen (PRD und CLK) keine Priorität berücksichtigt. Kann mir jemand sagen, wie ich das bewerkstelligen kann? Weiß jemand, wo ich dazu Hilfe finden kann? (Außer auf der TI-Homepage, da habe ich schon nachgesehen...) Vielen Dank und viele Grüße, Johannes
Du könntest das Bios benutzen, ist ein kleines BS-Kernel für den DSP. Es gibt dann, keine while(1) Schleife mehr... In Deinem Code setzt Du dann am Anfang die benötigten Timer und sonstige Hardware auf. Anschließend muss Deine Software über die main() rauslaufen. Das BIOS fängt an zu arbeiten. Die Interrupt Prioritäten kannst Du mit dem Config Tool einstellen. Genauer Software Interrupts SWI... Ich weiß jetzt leider auch keine Appnote, aber such einfach mal nach DSP/BIOS, Scheduling DSP/BIOS threads... MfG Michael
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.