Gast
#3177760
Hallo, bei meinem AT91SAM9261 Board möchte ich jetzt die USART mit PDC nutzen. Hier habe ich jetzt ein paar Fragen bezüglich der richtigen Implementierung. 1.) Sollte man den Empfang und das Senden über den Interrupt steuern lassen? Damit meine ich, dass das USART Modul zwei große Buffer (TX und RX) hat, die aus der main heraus gelesen oder gefüllt werden. In der ISR werden dann Chunks aus/in den Modulbuffer von/aus den PDC Banken kopiert. Das sind meiner Meinung nach ziemlich viele Kopieroperationen, welche die Performance schwächen. 2.) Ist es besser, eventuell nur den RXBUFF und Timeout Interrupt zu behandeln und das Senden manuell zu handeln? Zum Beispiel:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
28 | |
29 | |
30 | |
31 | |
32 | |
3.) Wie handelt ihr eventuelle Übertragungsabbrüche? Damit meine ich, wenn zum Beispiel die Datenkommunikation interrupted wird. Fangt ihr das in der Protokollschicht ab? Habt ihr eventuell direkte Resetkommandos, die der PC zum µC schickt um das Interface zu löschen? Danke Roger