Hallo Zusammen, meine Anwendung läuft auf einem STM32F576VGT6. Es ist ein Datenerfassungssystem mit Ethernet (LwIP, HAL, Keil). Im Hintergrund laufen ein Paar Timer und Interrupts. Per Timer wird ein ADC über Parallelbus abgefragt und die Daten gehen über Ethernet raus. Die Anwendung funktioniert einwandfrei. Um Updates zu ermöglichen, wurde ein Bootloader erstellt, der eine Binärdatei über TFTP zieht und die ab 0x8010000 flasht. Der Bootloader funktioniert auch - zieht und flasht bei Bedarf oder startet das Vorhandene ab 0x8010000. Jetzt kommt mein Problem: Die Anwendung (VECT_TAB_OFFSET 0x00010000U, Targetoptionen -> IROM1 0x8010000) läuft korrekt bis auf Lesen von Parallelbus (ChipSelect kommt einmal beim Starten, und danach nicht wieder), also I/O's, Ethernet, Interrupst - alles da. Nur Chip select und RD werden nicht ausgelöst. Hat jemand schon so etwas gehabt?
Anatoly schrieb: > STM32F7 Parallelbus Problem Anatoly schrieb: > auf einem STM32F576VGT6 Erkenne das Fragezeichen. Anatoly schrieb: > Nur Chip select und RD werden nicht ausgelöst. Da liegt es nahe dass dein Bootloader irgendetwas in der Konfiguration deiner Applikation verstellt was nicht so einfach reversibel ist (z.B. Alternate Functions). Oft ist es hilfreich in der eigenen Applikation die Reset- Funktion (De-Init, "alles auf Anfang") des HAL bzw. des Low-Level-Treibers anzuwenden bevor man die eigentliche Initialisierung startet.
Nach einem erkannten Reset werden durch Bootloader nur I/O's initialisiert (LED's) und Anwendung gestartet. Alternate Functions für Parallelbus habe ich kontrolliert, sind auch korrekt...
DE-Inits ausprobiert - alles Mögliche deinitialisiert vor dem Reset, hat nichts gebracht. Es lag an dem DCACHE - SCB_EnableDCache(); War beim Bootloader aktiviert, in der Anwendung aber deaktiviert. Deaktiviert man DCACHE im Bootloader - läuft alles!
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.