Forum: Digitale Signalverarbeitung / DSP / Machine Learning Blackfin ISR Beispiel gesucht


von hoderlump (Gast)


Lesenswert?

Hi folks,

schimpft mich nicht, aber ich bräuchte ein einfaches Beispiel für eine 
ISR, die von einem internen Timer im BF537 ausgelöst wird. Also, im 
Endeffekt eine Funktion, die alle 20 ms ausgeführt wird.
Das hab ich bisher per polling einer clock()-Funktion realisiert, das 
ist aber so alles andere als schön. Leider ist die Blackfin-Doku für 
mich alles andere als gut lesbar, muss halt den Blackfin verwenden und 
Beispiele finde ich im Netz kaum.

Ich arbeite mit VirtualDSP++ und scheitere schon daran, den Interrupt zu 
initialisieren und in C zu benutzen, also an der C-Syntax.

Habt ihr was da?
Viele Grüsse, vielen Dank
Johannes

von hoderlump (Gast)


Angehängte Dateien:

Lesenswert?

Ich hab jetzt versucht die Datenblätter zu verstehen und die 
erforderlichen Schritte für einen Timer nachzuvollziehen, siehe Anhang.

Der Blackfin hat drei Timermodi:
-Pulse Width Modulation (PWM_OUT) Mode
-Pulse Width Count and Capture (WDTH_CAP) Mode
-External Event (EXT_CLK) Mode

Beim xc164 haben wir immer den capture/compare-modus für solche Zwecke 
(eine ISR alle 20ms aufrufen) verwendet. Welcher der obigen ist dafür 
denn am sinnvollsten?

von hoderlump (Gast)


Angehängte Dateien:

Lesenswert?

Habs jetzt fast gelöst, im Anhang eine Datei, die egtl einen bei jedem 
Interruptaufruf einen counter hochzählen sollte. Leider klappt das grade 
nicht, sollte aber schon fast vollständig sein.

Ich habe Schwierigkeiten, Informationen über das Register IMASK 
(0xFFE02104) im Datenblatt zu finden. Hat jemand mehr Infos? Das 
Register wird ua. in diesem Beispiel benutzt:
http://www.mikrocontroller.net/attachment/highlight/39330

viele Grüsse
Johannes

von Strubi (Gast)


Lesenswert?

Hi,

guck mal hier: http://www.section5.ch/forum/viewtopic.php?f=2&t=118

(irqhandler.asm, irq.c, etc.)

gruss,


- Strubi

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.