Struct esp32c3_hal::twai::filter::DualStandardFilter
source · pub struct DualStandardFilter { /* private fields */ }
Expand description
A filter that matches against two standard 11-bit standard ids.
The first filter part can match a packet’s id, rtr bit, and the first byte of the payload. The second filter part can match a packet’s id and rtr bit.
Warning: This is not a perfect filter. Extended ids that match the bit layout of this filter will also be accepted.
Implementations§
source§impl DualStandardFilter
impl DualStandardFilter
sourcepub const fn new(
first_id: &[u8; 11],
first_rtr: &[u8; 1],
first_payload: &[u8; 8],
second_id: &[u8; 11],
second_rtr: &[u8; 1]
) -> DualStandardFilter
pub const fn new( first_id: &[u8; 11], first_rtr: &[u8; 1], first_payload: &[u8; 8], second_id: &[u8; 11], second_rtr: &[u8; 1] ) -> DualStandardFilter
Create a filter that matches against two standard 11-bit standard ids.
The first filter part can match a packet’s id, rtr bit, and the first byte of the payload. The second filter part can match a packet’s id and rtr bit.
Examples
A filter that matches any standard id that ends with a 00 or a 11, with any rtr, and with any payload on the first filter.
const FILTER: twai::filter::DualStandardFilter = twai::filter::DualStandardFilter::new(
b"xxxxxxxxx00",
b"x",
b"xxxxxxxx",
b"xxxxxxxxx11",
b"x",
);
sourcepub fn new_from_code_mask(
first_id_code: StandardId,
first_id_mask: StandardId,
first_rtr_code: bool,
first_rtr_mask: bool,
first_payload_code: u8,
first_payload_mask: u8,
second_id_code: StandardId,
second_id_mask: StandardId,
second_rtr_code: bool,
second_rtr_mask: bool
) -> DualStandardFilter
pub fn new_from_code_mask( first_id_code: StandardId, first_id_mask: StandardId, first_rtr_code: bool, first_rtr_mask: bool, first_payload_code: u8, first_payload_mask: u8, second_id_code: StandardId, second_id_mask: StandardId, second_rtr_code: bool, second_rtr_mask: bool ) -> DualStandardFilter
The masks indicate which bits of the code the filter should match against. Set bits in the mask indicate that the corresponding bit in the code should match.