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

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren