You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have written some code to try and modify the fdcan0 filters without success.
My code to configure the can is as follows :
let can1 = {let rx = gpioa.pa11.into_alternate().set_speed(Speed::VeryHigh);let tx = gpioa.pa12.into_alternate().set_speed(Speed::VeryHigh);let can = FdCan::new(dp.FDCAN1, tx, rx,&rcc);letmut can = can.into_config_mode();
can.set_protocol_exception_handling(false);
can.set_nominal_bit_timing(btr);//Create new Standard Filterlet filtre = StandardFilter{filter:FilterType::BitMask{filter:0x004,mask:0x7FF},action:Action::StoreInFifo0,};
can.set_standard_filter(StandardFilterSlot::_0,
filtre,);//Set fdcan to reject all frames that do not match the filter
can.set_global_filter(GlobalFilter::reject_all());hprintln!("-- Current Config: {:#?}", can.get_config());
can.into_normal()};
The code builds without issues or warnings but when I try to print the messages received by the can using the can-echo.rs example I receive everything. The messages I am supposed to get and those that I don't. Also the receiver header does not have the right ID. Sending messages using a Raspberry Pi with different ID, the STM always sends back an ID equal to 0.
Furthermore, using GDB I have looked at the register configuration values at the address 0x4000A480 where the FDCAN_RXGFC (Global FIlter COnfiguration) register is located and the register has the reset value. No configuration has been applied.
Am I doing something wrong ? I some kind of configuration wrong ? I am using a testbench where I used to test the bus CAN using STM32F103 without any problems so it is not a hardware problem. The logic analyzer also reads the correct Standard ID so the problem is also not on the message sent by the Raspberry Pi.
The text was updated successfully, but these errors were encountered:
Hello,
I have written some code to try and modify the fdcan0 filters without success.
My code to configure the can is as follows :
The code builds without issues or warnings but when I try to print the messages received by the can using the can-echo.rs example I receive everything. The messages I am supposed to get and those that I don't. Also the receiver header does not have the right ID. Sending messages using a Raspberry Pi with different ID, the STM always sends back an ID equal to 0.
Furthermore, using GDB I have looked at the register configuration values at the address 0x4000A480 where the FDCAN_RXGFC (Global FIlter COnfiguration) register is located and the register has the reset value. No configuration has been applied.
Am I doing something wrong ? I some kind of configuration wrong ? I am using a testbench where I used to test the bus CAN using STM32F103 without any problems so it is not a hardware problem. The logic analyzer also reads the correct Standard ID so the problem is also not on the message sent by the Raspberry Pi.
The text was updated successfully, but these errors were encountered: