Atmel SAM3U (Cortex-M3) PDC "end of transfer interrupt" aktivieren

Gast #3649152
Lesenswert?

Hallo!

ich bin auf der Suche nach einer Möglichkeit das Ende einer fertigen 
PDC(Peripheral DMA Controller) Übertragung zu signalisieren.

Als Basis habe ich das ASF-Projekt des Atmel Studio für den Prozessor 
AT91SAM3U4E von Atmel verwendet (PDC_UART_example) und das Atmel 
Evaluierungs-Board SAM3U-EK.
Dieses habe ich umgeändert, sodass der PDC einen Buffer über den UART 
sendet - dies funktioniert bereits problemlos :)

Im Manual steht dass ein end-of-transfer Interrupt aktiviert werden 
kann, wenn eine PDC-Übertragung fertig ist.
Ich habe jedoch noch keine Möglichkeit entdeckt oder im Netz gefunden, 
wie man den Interrupt aktiviert.

Auch die Suche nach einer anderen Möglichkeit das Ende der Übertragung 
zu singalisieren war bis jetzt erfolglos.


Habt ihr eine Idee wie man dies machen könnte?
Gast #3649166
Lesenswert?

hallo
der pdc sendet nach dem ende einer übertragung ein flag an das 
entsprechende peripheral. dieses flag kann dann einen interrupt 
auslösen.
such mal im handbuch nach den flags ENDRX, ENDTX, RXBUFF, and TXBUFE.

gruss
gerhard
#3652331
Lesenswert?

jippii!

nun funktioniert es :)

die Info, dass nicht der PDC einen Interrupt erzeugt, sondern ein FLAG 
setzt war der Schlüssel.
Der Interrupt wenn der Transfer abgeschlossen wurde, wird nun von dem 
UART erzeugt (UART_IER_ENDTX).

Im Interrupthandler des UARTs können danach die Daten verarbeitet 
werden.

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