Hallo, ich habe ein paar Schwierigkeiten mit der DMA, deswegen habe ich mal das Beispiel "OneChannelDMA_Escalator" aus den ST Beispielen probiert: Das Funktioniert an sich wie es soll, aber ich dachte ich könnte jetzt testweise einfach mal die DMA Channel von "DMA2_Channel3" auf "DMA2_Channel2" ändern. Dazu habe ich einfach mal alle Channel die diesen Namen tagen umbenannt. Ich habe es sogar noch mal durchsucht und es gibt keinen Channel3 mehr in meiner Main.c. Wo liegt der Fehler? Ich dachte ich kann alle Channel frei wählen von 1 bis 7 bzw. bis 5, je nach dem DMA1 oder 2 genutzt wird. Ich nutze übrigens DMA2. Ich kann den Code auch gern rein stellen, ich wusste nicht ob ich mich damit jetzt zum Eimer mache wenn ich ohnehin bekannten Code poste.
Ohne den Bezug zu deinem Problem und diese Demo kennen: Die Zuordnung zwischen I/O-Funktionen (wie USART1 receive) und DMA-Kanälen ist nicht frei wählbar, sondern von der Hardware vorgegeben und entsprechend dokumentiert.
Ok danke, jetzt wo du es sagst hab ich es sogar im RM0008 gefunden (S.206). Das ganze hörte sich für mich immer so an als könnte ich beliebige Channel nutzen.
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.