STM32 USB und CAN gleichzeitig nutzen

OP #1960980
Lesenswert?
• ▲
▼
Beides allein ok.

Wenn ich jedoch bei gemeinsamer Nutzung den CAN Takt freigebe, mit:
1
// CAN1 Periph clock enable
2
RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN1, ENABLE);

geht USB nicht mehr. CAN-Interrupts gebe ich nicht frei.

Vemute, es liegt am gemeinsamen Interruptvektor:
1
USB_LP_CAN1_RX0_IRQHandler

Habe dort schon die verschiedenen Interruptquellen ausgefiltert, ohne 
Erfolg.

Gibts dazu Erfahrungen?
#1960989
Lesenswert?
• ▲
▼
Bei den STM32F103 können USB und CAN nicht gleichzeitig sondern nur 
alternativ genutzt werden. In den STM32F105/7 steckt ein anderes 
USB-Modul drin, damit geht es.

"In medium-, high- and XL-density devices the USB and CAN share a 
dedicated 512-byte SRAM memory for data transmission and reception, and 
so they cannot be used concurrently (the shared SRAM is accessed through 
CAN and USB exclusively). The USB and CAN can be used in the same 
application but not at the same time."

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.