STM32F4xx: Ich weis, dies ist nicht primär ein GCC-Problem! Ein F4-Discovery auf "Open407V-D" BB soll möglichst viel der einzel durchaus lauffähigen Example-Programme menügesteuert (durch Touch-auswahl) unter einem Hauptprogramm ausführen. Dieses HP startet zunächst einen LAN-Server(standalone), als Phy einen DP83846 USE_ENHANCED_DMA_DESCRIPTORS sowie die config einer µSD-card als FatFs module(SDIO) mit DMA_InitTypeDef SDDMA; Bei Auswahl Programm 6 startet die Bild-capture(DCMI) und stellt continious oder als Snapshot den Inhalt auf LCD(FSMC) dar.(DCMI über DMA-stream) UND AB HIER IST SCHLUSS ! „Rien ne va plus.“ Ich kann den Stream nicht unterbrechen, da die CPU die Arbeit eingestellt hat. Alle Versuche, danach irgentetwas aufzurufen, werden ignoriert! Ein Vorläufer des von mir benutzten Programms ist hier: Beitrag "Re: ST-Discovery-Net-IO Anfang" Kann jemand helfen...?
ARGH! Bitte lesen und anwenden, dann besteht auch die Chance, dass jemand helfen kann: http://www.mikrocontroller.net/articles/Netiquette#Klare_Beschreibung_des_Problems Beispiele: - "... da die CPU die Arbeit eingestellt hat." - sehr viel wahrscheinlicher ist ein Programmabsturz bzw. -aufhänger, z. B. durch einen nicht implementierten IRQ-Handler - ist das geprüft? - "Ein Vorläufer des von mir benutzten Programms ist hier:" - Ja, schön... Und wie sieht jetzt Dein aktuelles Programm aus, mit dem der Fehler auftritt? Welcher Compiler (Version) wird benutzt etc.?
Schon eine Suchmaschine probiert? Dann könnte man auch diesen Text finden: http://blog.frankvh.com/2012/01/13/stm32f2xx-stm32f4xx-dma-maximum-transactions/
Bitte, nicht aufregen! Sollte ich gegen "Umgangsformen" verstossen haben, so bitte ich um Entschuldigung! Gleich zu Beginn des verlinkten Beitrages steht, das ich CoIDE verwendet habe. (mit arm-none-eabi-gcc-4.6.2) Ich grüble schon seit längerem und kann einen Programm-Absturz ausschliessen. Mein aktuelles Programm ist nur eine mp3 - Ausgabe auf einem anderen Programm, sowie eine USB-Host Anwendung ebenfalls auf einem anderen Programm. Der beschriebene "Hänger" titt bereits in diesem "Vorgänger", in Programm 6 auf. Ich habe das aktuelle Programm wegen seiner Grösse nicht eingestellt und der kleinere "Vorgänger" das Problem bereits aufzeigt -- Patrick schrieb: > nicht implementierten IRQ-Handler - ist das geprüft? - Ja ! Ich tippe eher auf grundsätzliche Probleme des STM32F4xx mit mehreren DMA-stream's!
B. Scheuert schrieb: > Schon eine Suchmaschine probiert? Dann könnte man auch diesen Text > finden: Entschuldigung das ich die Foren-Eigner gestört habe! Kommt garantiert nicht mehr vor! @B. Scheuert obwohl sicher nicht deine Absicht, -aber der Link hilft tatsächlich --
Sorry, -ich debugge nicht! Ist der Stream erst etabliert, bringt ihn nichts zum stoppen. Auch "Snapshot" beendet nach getaner Arbeit die Verbindung nicht. Ein disable allein macht nichts: DMA_Cmd(DMA2_Stream1, DISABLE); DCMI_Cmd(DISABLE); DCMI_CaptureCmd(DISABLE); -- diese Anweisungen werden schlichtweg nicht ausgeführt -- und alles was folgt wird ignoriert; Ich schreibe auf max. 2 DMA-Stream um -- Danke !
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.