mirror of
https://github.com/embassy-rs/embassy.git
synced 2024-11-25 00:02:28 +00:00
Make use of internal BXCAN crate work. Tested on stm32f103 with real bus and HIL tests.
Fix
This commit is contained in:
parent
f736f1b27f
commit
fecb65b988
@ -72,7 +72,6 @@ critical-section = "1.1"
|
||||
#stm32-metapac = { version = "15" }
|
||||
stm32-metapac = { git = "https://github.com/embassy-rs/stm32-data-generated", tag = "stm32-data-e7f91751fbbf856e0cb30e50ae6db79f0409b085" }
|
||||
vcell = "0.1.3"
|
||||
bxcan = "0.7.0"
|
||||
nb = "1.0.0"
|
||||
stm32-fmc = "0.3.0"
|
||||
cfg-if = "1.0.0"
|
||||
@ -84,6 +83,7 @@ document-features = "0.2.7"
|
||||
|
||||
static_assertions = { version = "1.1" }
|
||||
volatile-register = { version = "0.2.1" }
|
||||
bitflags = "2.4.2"
|
||||
|
||||
|
||||
|
||||
@ -104,7 +104,7 @@ default = ["rt"]
|
||||
rt = ["stm32-metapac/rt"]
|
||||
|
||||
## Use [`defmt`](https://docs.rs/defmt/latest/defmt/) for logging
|
||||
defmt = ["dep:defmt", "bxcan/unstable-defmt", "embassy-sync/defmt", "embassy-embedded-hal/defmt", "embassy-hal-internal/defmt", "embedded-io-async/defmt-03", "embassy-usb-driver/defmt", "embassy-net-driver/defmt", "embassy-time?/defmt"]
|
||||
defmt = ["dep:defmt", "embassy-sync/defmt", "embassy-embedded-hal/defmt", "embassy-hal-internal/defmt", "embedded-io-async/defmt-03", "embassy-usb-driver/defmt", "embassy-net-driver/defmt", "embassy-time?/defmt"]
|
||||
|
||||
exti = []
|
||||
low-power = [ "dep:embassy-executor", "embassy-executor?/arch-cortex-m", "time" ]
|
||||
|
@ -2,8 +2,8 @@
|
||||
|
||||
use core::marker::PhantomData;
|
||||
|
||||
use crate::pac::can::RegisterBlock;
|
||||
use crate::{ExtendedId, Fifo, FilterOwner, Id, Instance, MasterInstance, StandardId};
|
||||
use crate::can::bx::pac::can::RegisterBlock;
|
||||
use crate::can::bx::{ExtendedId, Fifo, FilterOwner, Id, Instance, MasterInstance, StandardId};
|
||||
|
||||
const F32_RTR: u32 = 0b010; // set the RTR bit to match remote frames
|
||||
const F32_IDE: u32 = 0b100; // set the IDE bit to match extended identifiers
|
||||
@ -14,19 +14,19 @@ const F16_IDE: u16 = 0b01000;
|
||||
///
|
||||
/// This can match data and remote frames using standard IDs.
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq)]
|
||||
#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
pub struct ListEntry16(u16);
|
||||
|
||||
/// A 32-bit filter list entry.
|
||||
///
|
||||
/// This can match data and remote frames using extended or standard IDs.
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq)]
|
||||
#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
pub struct ListEntry32(u32);
|
||||
|
||||
/// A 16-bit identifier mask.
|
||||
#[derive(Debug, Copy, Clone)]
|
||||
#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
pub struct Mask16 {
|
||||
id: u16,
|
||||
mask: u16,
|
||||
@ -34,7 +34,7 @@ pub struct Mask16 {
|
||||
|
||||
/// A 32-bit identifier mask.
|
||||
#[derive(Debug, Copy, Clone)]
|
||||
#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
pub struct Mask32 {
|
||||
id: u32,
|
||||
mask: u32,
|
||||
@ -170,7 +170,7 @@ impl Mask32 {
|
||||
|
||||
/// The configuration of a filter bank.
|
||||
#[derive(Debug, Copy, Clone)]
|
||||
#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
pub enum BankConfig {
|
||||
List16([ListEntry16; 4]),
|
||||
List32([ListEntry32; 2]),
|
||||
|
@ -1,14 +1,14 @@
|
||||
#[cfg(test)]
|
||||
mod tests;
|
||||
|
||||
use core::cmp::Ordering;
|
||||
use core::ops::{Deref, DerefMut};
|
||||
|
||||
use crate::{Id, IdReg};
|
||||
use crate::can::bx::{Id, IdReg};
|
||||
|
||||
/// A CAN data or remote frame.
|
||||
#[derive(Clone, Debug, Eq)]
|
||||
#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))]
|
||||
//#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
pub struct Frame {
|
||||
pub(crate) id: IdReg,
|
||||
pub(crate) data: Data,
|
||||
@ -128,20 +128,20 @@ pub struct FramePriority(IdReg);
|
||||
/// Ordering is based on the Identifier and frame type (data vs. remote) and can be used to sort
|
||||
/// frames by priority.
|
||||
impl Ord for FramePriority {
|
||||
fn cmp(&self, other: &Self) -> Ordering {
|
||||
fn cmp(&self, other: &Self) -> core::cmp::Ordering {
|
||||
self.0.cmp(&other.0)
|
||||
}
|
||||
}
|
||||
|
||||
impl PartialOrd for FramePriority {
|
||||
fn partial_cmp(&self, other: &Self) -> Option<Ordering> {
|
||||
fn partial_cmp(&self, other: &Self) -> Option<core::cmp::Ordering> {
|
||||
Some(self.cmp(other))
|
||||
}
|
||||
}
|
||||
|
||||
impl PartialEq for FramePriority {
|
||||
fn eq(&self, other: &Self) -> bool {
|
||||
self.cmp(other) == Ordering::Equal
|
||||
self.cmp(other) == core::cmp::Ordering::Equal
|
||||
}
|
||||
}
|
||||
|
||||
@ -227,7 +227,7 @@ impl PartialEq for Data {
|
||||
|
||||
impl Eq for Data {}
|
||||
|
||||
#[cfg(feature = "unstable-defmt")]
|
||||
#[cfg(feature = "defmt")]
|
||||
impl defmt::Format for Data {
|
||||
fn format(&self, fmt: defmt::Formatter<'_>) {
|
||||
self.as_ref().format(fmt)
|
||||
|
@ -3,7 +3,7 @@
|
||||
use core::ops;
|
||||
|
||||
#[allow(unused_imports)] // for intra-doc links only
|
||||
use crate::{Can, Rx0};
|
||||
use crate::can::bx::{Can, Rx0};
|
||||
|
||||
/// bxCAN interrupt sources.
|
||||
///
|
||||
@ -18,7 +18,7 @@ use crate::{Can, Rx0};
|
||||
/// This means that some of the interrupts listed here will result in the same interrupt handler
|
||||
/// being invoked.
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq)]
|
||||
#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
#[non_exhaustive]
|
||||
pub enum Interrupt {
|
||||
/// Fires the **TX** interrupt when one of the transmit mailboxes returns to empty state.
|
||||
|
@ -23,7 +23,7 @@
|
||||
//!
|
||||
//! | Feature | Description |
|
||||
//! |---------|-------------|
|
||||
//! | `unstable-defmt` | Implements [`defmt`]'s `Format` trait for the types in this crate.[^1] |
|
||||
//! | `defmt` | Implements [`defmt`]'s `Format` trait for the types in this crate.[^1] |
|
||||
//!
|
||||
//! [^1]: The specific version of defmt is unspecified and may be updated in a patch release.
|
||||
//!
|
||||
@ -36,7 +36,7 @@
|
||||
#![no_std]
|
||||
#![allow(clippy::unnecessary_operation)] // lint is bugged
|
||||
|
||||
mod embedded_hal;
|
||||
//mod embedded_hal;
|
||||
pub mod filter;
|
||||
mod frame;
|
||||
mod id;
|
||||
@ -47,11 +47,11 @@ mod pac;
|
||||
|
||||
pub use id::{ExtendedId, Id, StandardId};
|
||||
|
||||
pub use crate::frame::{Data, Frame, FramePriority};
|
||||
pub use crate::interrupt::{Interrupt, Interrupts};
|
||||
pub use crate::pac::can::RegisterBlock;
|
||||
pub use crate::can::bx::frame::{Data, Frame, FramePriority};
|
||||
pub use crate::can::bx::interrupt::{Interrupt, Interrupts};
|
||||
pub use crate::can::bx::pac::can::RegisterBlock;
|
||||
|
||||
use crate::filter::MasterFilters;
|
||||
use crate::can::bx::filter::MasterFilters;
|
||||
use core::cmp::{Ord, Ordering};
|
||||
use core::convert::{Infallible, TryInto};
|
||||
use core::marker::PhantomData;
|
||||
@ -124,7 +124,7 @@ pub enum Error {
|
||||
|
||||
/// Error that indicates that an incoming message has been lost due to buffer overrun.
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
|
||||
#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
pub struct OverrunError {
|
||||
_priv: (),
|
||||
}
|
||||
@ -140,7 +140,7 @@ pub struct OverrunError {
|
||||
/// have a higher priority than extended frames and data frames have a higher
|
||||
/// priority than remote frames.
|
||||
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
|
||||
#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
struct IdReg(u32);
|
||||
|
||||
impl IdReg {
|
||||
@ -1060,7 +1060,7 @@ fn receive_fifo(can: &RegisterBlock, fifo_nr: usize) -> nb::Result<Frame, Overru
|
||||
|
||||
/// Identifies one of the two receive FIFOs.
|
||||
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)]
|
||||
#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
pub enum Fifo {
|
||||
Fifo0 = 0,
|
||||
Fifo1 = 1,
|
||||
@ -1068,7 +1068,7 @@ pub enum Fifo {
|
||||
|
||||
/// Identifies one of the three transmit mailboxes.
|
||||
#[derive(Debug, Copy, Clone, Ord, PartialOrd, Eq, PartialEq)]
|
||||
#[cfg_attr(feature = "unstable-defmt", derive(defmt::Format))]
|
||||
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
|
||||
pub enum Mailbox {
|
||||
/// Transmit mailbox 0
|
||||
Mailbox0 = 0,
|
||||
|
@ -79,135 +79,135 @@ pub struct FB {
|
||||
#[doc = r"Register block"]
|
||||
#[doc = "CAN Filter Bank cluster"]
|
||||
pub mod fb;
|
||||
#[doc = "CAN_MCR\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [mcr](mcr) module"]
|
||||
pub type MCR = crate::Reg<u32, _MCR>;
|
||||
#[doc = "CAN_MCR\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [mcr](mcr) module"]
|
||||
pub type MCR = crate::can::bx::Reg<u32, _MCR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _MCR;
|
||||
#[doc = "`read()` method returns [mcr::R](mcr::R) reader structure"]
|
||||
impl crate::Readable for MCR {}
|
||||
impl crate::can::bx::Readable for MCR {}
|
||||
#[doc = "`write(|w| ..)` method takes [mcr::W](mcr::W) writer structure"]
|
||||
impl crate::Writable for MCR {}
|
||||
impl crate::can::bx::Writable for MCR {}
|
||||
#[doc = "CAN_MCR"]
|
||||
pub mod mcr;
|
||||
#[doc = "CAN_MSR\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [msr](msr) module"]
|
||||
pub type MSR = crate::Reg<u32, _MSR>;
|
||||
#[doc = "CAN_MSR\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [msr](msr) module"]
|
||||
pub type MSR = crate::can::bx::Reg<u32, _MSR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _MSR;
|
||||
#[doc = "`read()` method returns [msr::R](msr::R) reader structure"]
|
||||
impl crate::Readable for MSR {}
|
||||
impl crate::can::bx::Readable for MSR {}
|
||||
#[doc = "`write(|w| ..)` method takes [msr::W](msr::W) writer structure"]
|
||||
impl crate::Writable for MSR {}
|
||||
impl crate::can::bx::Writable for MSR {}
|
||||
#[doc = "CAN_MSR"]
|
||||
pub mod msr;
|
||||
#[doc = "CAN_TSR\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tsr](tsr) module"]
|
||||
pub type TSR = crate::Reg<u32, _TSR>;
|
||||
#[doc = "CAN_TSR\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tsr](tsr) module"]
|
||||
pub type TSR = crate::can::bx::Reg<u32, _TSR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _TSR;
|
||||
#[doc = "`read()` method returns [tsr::R](tsr::R) reader structure"]
|
||||
impl crate::Readable for TSR {}
|
||||
impl crate::can::bx::Readable for TSR {}
|
||||
#[doc = "`write(|w| ..)` method takes [tsr::W](tsr::W) writer structure"]
|
||||
impl crate::Writable for TSR {}
|
||||
impl crate::can::bx::Writable for TSR {}
|
||||
#[doc = "CAN_TSR"]
|
||||
pub mod tsr;
|
||||
#[doc = "CAN_RF0R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rfr](rfr) module"]
|
||||
pub type RFR = crate::Reg<u32, _RFR>;
|
||||
#[doc = "CAN_RF0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rfr](rfr) module"]
|
||||
pub type RFR = crate::can::bx::Reg<u32, _RFR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _RFR;
|
||||
#[doc = "`read()` method returns [rfr::R](rfr::R) reader structure"]
|
||||
impl crate::Readable for RFR {}
|
||||
impl crate::can::bx::Readable for RFR {}
|
||||
#[doc = "`write(|w| ..)` method takes [rfr::W](rfr::W) writer structure"]
|
||||
impl crate::Writable for RFR {}
|
||||
impl crate::can::bx::Writable for RFR {}
|
||||
#[doc = "CAN_RF0R"]
|
||||
pub mod rfr;
|
||||
#[doc = "CAN_IER\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [ier](ier) module"]
|
||||
pub type IER = crate::Reg<u32, _IER>;
|
||||
#[doc = "CAN_IER\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [ier](ier) module"]
|
||||
pub type IER = crate::can::bx::Reg<u32, _IER>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _IER;
|
||||
#[doc = "`read()` method returns [ier::R](ier::R) reader structure"]
|
||||
impl crate::Readable for IER {}
|
||||
impl crate::can::bx::Readable for IER {}
|
||||
#[doc = "`write(|w| ..)` method takes [ier::W](ier::W) writer structure"]
|
||||
impl crate::Writable for IER {}
|
||||
impl crate::can::bx::Writable for IER {}
|
||||
#[doc = "CAN_IER"]
|
||||
pub mod ier;
|
||||
#[doc = "CAN_ESR\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [esr](esr) module"]
|
||||
pub type ESR = crate::Reg<u32, _ESR>;
|
||||
#[doc = "CAN_ESR\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [esr](esr) module"]
|
||||
pub type ESR = crate::can::bx::Reg<u32, _ESR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _ESR;
|
||||
#[doc = "`read()` method returns [esr::R](esr::R) reader structure"]
|
||||
impl crate::Readable for ESR {}
|
||||
impl crate::can::bx::Readable for ESR {}
|
||||
#[doc = "`write(|w| ..)` method takes [esr::W](esr::W) writer structure"]
|
||||
impl crate::Writable for ESR {}
|
||||
impl crate::can::bx::Writable for ESR {}
|
||||
#[doc = "CAN_ESR"]
|
||||
pub mod esr;
|
||||
#[doc = "CAN_BTR\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [btr](btr) module"]
|
||||
pub type BTR = crate::Reg<u32, _BTR>;
|
||||
#[doc = "CAN_BTR\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [btr](btr) module"]
|
||||
pub type BTR = crate::can::bx::Reg<u32, _BTR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _BTR;
|
||||
#[doc = "`read()` method returns [btr::R](btr::R) reader structure"]
|
||||
impl crate::Readable for BTR {}
|
||||
impl crate::can::bx::Readable for BTR {}
|
||||
#[doc = "`write(|w| ..)` method takes [btr::W](btr::W) writer structure"]
|
||||
impl crate::Writable for BTR {}
|
||||
impl crate::can::bx::Writable for BTR {}
|
||||
#[doc = "CAN_BTR"]
|
||||
pub mod btr;
|
||||
#[doc = "CAN_FMR\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fmr](fmr) module"]
|
||||
pub type FMR = crate::Reg<u32, _FMR>;
|
||||
#[doc = "CAN_FMR\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fmr](fmr) module"]
|
||||
pub type FMR = crate::can::bx::Reg<u32, _FMR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _FMR;
|
||||
#[doc = "`read()` method returns [fmr::R](fmr::R) reader structure"]
|
||||
impl crate::Readable for FMR {}
|
||||
impl crate::can::bx::Readable for FMR {}
|
||||
#[doc = "`write(|w| ..)` method takes [fmr::W](fmr::W) writer structure"]
|
||||
impl crate::Writable for FMR {}
|
||||
impl crate::can::bx::Writable for FMR {}
|
||||
#[doc = "CAN_FMR"]
|
||||
pub mod fmr;
|
||||
#[doc = "CAN_FM1R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fm1r](fm1r) module"]
|
||||
pub type FM1R = crate::Reg<u32, _FM1R>;
|
||||
#[doc = "CAN_FM1R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fm1r](fm1r) module"]
|
||||
pub type FM1R = crate::can::bx::Reg<u32, _FM1R>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _FM1R;
|
||||
#[doc = "`read()` method returns [fm1r::R](fm1r::R) reader structure"]
|
||||
impl crate::Readable for FM1R {}
|
||||
impl crate::can::bx::Readable for FM1R {}
|
||||
#[doc = "`write(|w| ..)` method takes [fm1r::W](fm1r::W) writer structure"]
|
||||
impl crate::Writable for FM1R {}
|
||||
impl crate::can::bx::Writable for FM1R {}
|
||||
#[doc = "CAN_FM1R"]
|
||||
pub mod fm1r;
|
||||
#[doc = "CAN_FS1R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fs1r](fs1r) module"]
|
||||
pub type FS1R = crate::Reg<u32, _FS1R>;
|
||||
#[doc = "CAN_FS1R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fs1r](fs1r) module"]
|
||||
pub type FS1R = crate::can::bx::Reg<u32, _FS1R>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _FS1R;
|
||||
#[doc = "`read()` method returns [fs1r::R](fs1r::R) reader structure"]
|
||||
impl crate::Readable for FS1R {}
|
||||
impl crate::can::bx::Readable for FS1R {}
|
||||
#[doc = "`write(|w| ..)` method takes [fs1r::W](fs1r::W) writer structure"]
|
||||
impl crate::Writable for FS1R {}
|
||||
impl crate::can::bx::Writable for FS1R {}
|
||||
#[doc = "CAN_FS1R"]
|
||||
pub mod fs1r;
|
||||
#[doc = "CAN_FFA1R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [ffa1r](ffa1r) module"]
|
||||
pub type FFA1R = crate::Reg<u32, _FFA1R>;
|
||||
#[doc = "CAN_FFA1R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [ffa1r](ffa1r) module"]
|
||||
pub type FFA1R = crate::can::bx::Reg<u32, _FFA1R>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _FFA1R;
|
||||
#[doc = "`read()` method returns [ffa1r::R](ffa1r::R) reader structure"]
|
||||
impl crate::Readable for FFA1R {}
|
||||
impl crate::can::bx::Readable for FFA1R {}
|
||||
#[doc = "`write(|w| ..)` method takes [ffa1r::W](ffa1r::W) writer structure"]
|
||||
impl crate::Writable for FFA1R {}
|
||||
impl crate::can::bx::Writable for FFA1R {}
|
||||
#[doc = "CAN_FFA1R"]
|
||||
pub mod ffa1r;
|
||||
#[doc = "CAN_FA1R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fa1r](fa1r) module"]
|
||||
pub type FA1R = crate::Reg<u32, _FA1R>;
|
||||
#[doc = "CAN_FA1R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fa1r](fa1r) module"]
|
||||
pub type FA1R = crate::can::bx::Reg<u32, _FA1R>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _FA1R;
|
||||
#[doc = "`read()` method returns [fa1r::R](fa1r::R) reader structure"]
|
||||
impl crate::Readable for FA1R {}
|
||||
impl crate::can::bx::Readable for FA1R {}
|
||||
#[doc = "`write(|w| ..)` method takes [fa1r::W](fa1r::W) writer structure"]
|
||||
impl crate::Writable for FA1R {}
|
||||
impl crate::can::bx::Writable for FA1R {}
|
||||
#[doc = "CAN_FA1R"]
|
||||
pub mod fa1r;
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register BTR"]
|
||||
pub type R = crate::R<u32, super::BTR>;
|
||||
pub type R = crate::can::bx::R<u32, super::BTR>;
|
||||
#[doc = "Writer for register BTR"]
|
||||
pub type W = crate::W<u32, super::BTR>;
|
||||
pub type W = crate::can::bx::W<u32, super::BTR>;
|
||||
#[doc = "Register BTR `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::BTR {
|
||||
impl crate::can::bx::ResetValue for super::BTR {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -25,7 +25,7 @@ impl From<SILM_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `SILM`"]
|
||||
pub type SILM_R = crate::R<bool, SILM_A>;
|
||||
pub type SILM_R = crate::can::bx::R<bool, SILM_A>;
|
||||
impl SILM_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -100,7 +100,7 @@ impl From<LBKM_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `LBKM`"]
|
||||
pub type LBKM_R = crate::R<bool, LBKM_A>;
|
||||
pub type LBKM_R = crate::can::bx::R<bool, LBKM_A>;
|
||||
impl LBKM_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -161,7 +161,7 @@ impl<'a> LBKM_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `SJW`"]
|
||||
pub type SJW_R = crate::R<u8, u8>;
|
||||
pub type SJW_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `SJW`"]
|
||||
pub struct SJW_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -175,7 +175,7 @@ impl<'a> SJW_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TS2`"]
|
||||
pub type TS2_R = crate::R<u8, u8>;
|
||||
pub type TS2_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `TS2`"]
|
||||
pub struct TS2_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -189,7 +189,7 @@ impl<'a> TS2_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TS1`"]
|
||||
pub type TS1_R = crate::R<u8, u8>;
|
||||
pub type TS1_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `TS1`"]
|
||||
pub struct TS1_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -203,7 +203,7 @@ impl<'a> TS1_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `BRP`"]
|
||||
pub type BRP_R = crate::R<u16, u16>;
|
||||
pub type BRP_R = crate::can::bx::R<u16, u16>;
|
||||
#[doc = "Write proxy for field `BRP`"]
|
||||
pub struct BRP_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register ESR"]
|
||||
pub type R = crate::R<u32, super::ESR>;
|
||||
pub type R = crate::can::bx::R<u32, super::ESR>;
|
||||
#[doc = "Writer for register ESR"]
|
||||
pub type W = crate::W<u32, super::ESR>;
|
||||
pub type W = crate::can::bx::W<u32, super::ESR>;
|
||||
#[doc = "Register ESR `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::ESR {
|
||||
impl crate::can::bx::ResetValue for super::ESR {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,9 +11,9 @@ impl crate::ResetValue for super::ESR {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `REC`"]
|
||||
pub type REC_R = crate::R<u8, u8>;
|
||||
pub type REC_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Reader of field `TEC`"]
|
||||
pub type TEC_R = crate::R<u8, u8>;
|
||||
pub type TEC_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "LEC\n\nValue on reset: 0"]
|
||||
#[derive(Clone, Copy, Debug, PartialEq)]
|
||||
#[repr(u8)]
|
||||
@ -42,7 +42,7 @@ impl From<LEC_A> for u8 {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `LEC`"]
|
||||
pub type LEC_R = crate::R<u8, LEC_A>;
|
||||
pub type LEC_R = crate::can::bx::R<u8, LEC_A>;
|
||||
impl LEC_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -160,11 +160,11 @@ impl<'a> LEC_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `BOFF`"]
|
||||
pub type BOFF_R = crate::R<bool, bool>;
|
||||
pub type BOFF_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `EPVF`"]
|
||||
pub type EPVF_R = crate::R<bool, bool>;
|
||||
pub type EPVF_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `EWGF`"]
|
||||
pub type EWGF_R = crate::R<bool, bool>;
|
||||
pub type EWGF_R = crate::can::bx::R<bool, bool>;
|
||||
impl R {
|
||||
#[doc = "Bits 24:31 - REC"]
|
||||
#[inline(always)]
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register FA1R"]
|
||||
pub type R = crate::R<u32, super::FA1R>;
|
||||
pub type R = crate::can::bx::R<u32, super::FA1R>;
|
||||
#[doc = "Writer for register FA1R"]
|
||||
pub type W = crate::W<u32, super::FA1R>;
|
||||
pub type W = crate::can::bx::W<u32, super::FA1R>;
|
||||
#[doc = "Register FA1R `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::FA1R {
|
||||
impl crate::can::bx::ResetValue for super::FA1R {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,7 +11,7 @@ impl crate::ResetValue for super::FA1R {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT0`"]
|
||||
pub type FACT0_R = crate::R<bool, bool>;
|
||||
pub type FACT0_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT0`"]
|
||||
pub struct FACT0_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -35,7 +35,7 @@ impl<'a> FACT0_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT1`"]
|
||||
pub type FACT1_R = crate::R<bool, bool>;
|
||||
pub type FACT1_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT1`"]
|
||||
pub struct FACT1_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -59,7 +59,7 @@ impl<'a> FACT1_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT2`"]
|
||||
pub type FACT2_R = crate::R<bool, bool>;
|
||||
pub type FACT2_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT2`"]
|
||||
pub struct FACT2_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -83,7 +83,7 @@ impl<'a> FACT2_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT3`"]
|
||||
pub type FACT3_R = crate::R<bool, bool>;
|
||||
pub type FACT3_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT3`"]
|
||||
pub struct FACT3_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -107,7 +107,7 @@ impl<'a> FACT3_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT4`"]
|
||||
pub type FACT4_R = crate::R<bool, bool>;
|
||||
pub type FACT4_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT4`"]
|
||||
pub struct FACT4_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -131,7 +131,7 @@ impl<'a> FACT4_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT5`"]
|
||||
pub type FACT5_R = crate::R<bool, bool>;
|
||||
pub type FACT5_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT5`"]
|
||||
pub struct FACT5_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -155,7 +155,7 @@ impl<'a> FACT5_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT6`"]
|
||||
pub type FACT6_R = crate::R<bool, bool>;
|
||||
pub type FACT6_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT6`"]
|
||||
pub struct FACT6_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -179,7 +179,7 @@ impl<'a> FACT6_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT7`"]
|
||||
pub type FACT7_R = crate::R<bool, bool>;
|
||||
pub type FACT7_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT7`"]
|
||||
pub struct FACT7_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -203,7 +203,7 @@ impl<'a> FACT7_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT8`"]
|
||||
pub type FACT8_R = crate::R<bool, bool>;
|
||||
pub type FACT8_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT8`"]
|
||||
pub struct FACT8_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -227,7 +227,7 @@ impl<'a> FACT8_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT9`"]
|
||||
pub type FACT9_R = crate::R<bool, bool>;
|
||||
pub type FACT9_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT9`"]
|
||||
pub struct FACT9_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -251,7 +251,7 @@ impl<'a> FACT9_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT10`"]
|
||||
pub type FACT10_R = crate::R<bool, bool>;
|
||||
pub type FACT10_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT10`"]
|
||||
pub struct FACT10_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -275,7 +275,7 @@ impl<'a> FACT10_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT11`"]
|
||||
pub type FACT11_R = crate::R<bool, bool>;
|
||||
pub type FACT11_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT11`"]
|
||||
pub struct FACT11_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -299,7 +299,7 @@ impl<'a> FACT11_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT12`"]
|
||||
pub type FACT12_R = crate::R<bool, bool>;
|
||||
pub type FACT12_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT12`"]
|
||||
pub struct FACT12_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -323,7 +323,7 @@ impl<'a> FACT12_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FACT13`"]
|
||||
pub type FACT13_R = crate::R<bool, bool>;
|
||||
pub type FACT13_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FACT13`"]
|
||||
pub struct FACT13_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,22 +1,22 @@
|
||||
#[doc = "Filter bank 0 register 1\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fr1](fr1) module"]
|
||||
pub type FR1 = crate::Reg<u32, _FR1>;
|
||||
#[doc = "Filter bank 0 register 1\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fr1](fr1) module"]
|
||||
pub type FR1 = crate::can::bx::Reg<u32, _FR1>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _FR1;
|
||||
#[doc = "`read()` method returns [fr1::R](fr1::R) reader structure"]
|
||||
impl crate::Readable for FR1 {}
|
||||
impl crate::can::bx::Readable for FR1 {}
|
||||
#[doc = "`write(|w| ..)` method takes [fr1::W](fr1::W) writer structure"]
|
||||
impl crate::Writable for FR1 {}
|
||||
impl crate::can::bx::Writable for FR1 {}
|
||||
#[doc = "Filter bank 0 register 1"]
|
||||
pub mod fr1;
|
||||
#[doc = "Filter bank 0 register 2\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fr2](fr2) module"]
|
||||
pub type FR2 = crate::Reg<u32, _FR2>;
|
||||
#[doc = "Filter bank 0 register 2\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [fr2](fr2) module"]
|
||||
pub type FR2 = crate::can::bx::Reg<u32, _FR2>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _FR2;
|
||||
#[doc = "`read()` method returns [fr2::R](fr2::R) reader structure"]
|
||||
impl crate::Readable for FR2 {}
|
||||
impl crate::can::bx::Readable for FR2 {}
|
||||
#[doc = "`write(|w| ..)` method takes [fr2::W](fr2::W) writer structure"]
|
||||
impl crate::Writable for FR2 {}
|
||||
impl crate::can::bx::Writable for FR2 {}
|
||||
#[doc = "Filter bank 0 register 2"]
|
||||
pub mod fr2;
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register FR1"]
|
||||
pub type R = crate::R<u32, super::FR1>;
|
||||
pub type R = crate::can::bx::R<u32, super::FR1>;
|
||||
#[doc = "Writer for register FR1"]
|
||||
pub type W = crate::W<u32, super::FR1>;
|
||||
pub type W = crate::can::bx::W<u32, super::FR1>;
|
||||
#[doc = "Register FR1 `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::FR1 {
|
||||
impl crate::can::bx::ResetValue for super::FR1 {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,7 +11,7 @@ impl crate::ResetValue for super::FR1 {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FB`"]
|
||||
pub type FB_R = crate::R<u32, u32>;
|
||||
pub type FB_R = crate::can::bx::R<u32, u32>;
|
||||
#[doc = "Write proxy for field `FB`"]
|
||||
pub struct FB_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register FR2"]
|
||||
pub type R = crate::R<u32, super::FR2>;
|
||||
pub type R = crate::can::bx::R<u32, super::FR2>;
|
||||
#[doc = "Writer for register FR2"]
|
||||
pub type W = crate::W<u32, super::FR2>;
|
||||
pub type W = crate::can::bx::W<u32, super::FR2>;
|
||||
#[doc = "Register FR2 `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::FR2 {
|
||||
impl crate::can::bx::ResetValue for super::FR2 {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,7 +11,7 @@ impl crate::ResetValue for super::FR2 {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FB`"]
|
||||
pub type FB_R = crate::R<u32, u32>;
|
||||
pub type FB_R = crate::can::bx::R<u32, u32>;
|
||||
#[doc = "Write proxy for field `FB`"]
|
||||
pub struct FB_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register FFA1R"]
|
||||
pub type R = crate::R<u32, super::FFA1R>;
|
||||
pub type R = crate::can::bx::R<u32, super::FFA1R>;
|
||||
#[doc = "Writer for register FFA1R"]
|
||||
pub type W = crate::W<u32, super::FFA1R>;
|
||||
pub type W = crate::can::bx::W<u32, super::FFA1R>;
|
||||
#[doc = "Register FFA1R `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::FFA1R {
|
||||
impl crate::can::bx::ResetValue for super::FFA1R {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,7 +11,7 @@ impl crate::ResetValue for super::FFA1R {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA0`"]
|
||||
pub type FFA0_R = crate::R<bool, bool>;
|
||||
pub type FFA0_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA0`"]
|
||||
pub struct FFA0_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -35,7 +35,7 @@ impl<'a> FFA0_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA1`"]
|
||||
pub type FFA1_R = crate::R<bool, bool>;
|
||||
pub type FFA1_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA1`"]
|
||||
pub struct FFA1_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -59,7 +59,7 @@ impl<'a> FFA1_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA2`"]
|
||||
pub type FFA2_R = crate::R<bool, bool>;
|
||||
pub type FFA2_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA2`"]
|
||||
pub struct FFA2_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -83,7 +83,7 @@ impl<'a> FFA2_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA3`"]
|
||||
pub type FFA3_R = crate::R<bool, bool>;
|
||||
pub type FFA3_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA3`"]
|
||||
pub struct FFA3_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -107,7 +107,7 @@ impl<'a> FFA3_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA4`"]
|
||||
pub type FFA4_R = crate::R<bool, bool>;
|
||||
pub type FFA4_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA4`"]
|
||||
pub struct FFA4_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -131,7 +131,7 @@ impl<'a> FFA4_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA5`"]
|
||||
pub type FFA5_R = crate::R<bool, bool>;
|
||||
pub type FFA5_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA5`"]
|
||||
pub struct FFA5_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -155,7 +155,7 @@ impl<'a> FFA5_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA6`"]
|
||||
pub type FFA6_R = crate::R<bool, bool>;
|
||||
pub type FFA6_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA6`"]
|
||||
pub struct FFA6_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -179,7 +179,7 @@ impl<'a> FFA6_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA7`"]
|
||||
pub type FFA7_R = crate::R<bool, bool>;
|
||||
pub type FFA7_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA7`"]
|
||||
pub struct FFA7_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -203,7 +203,7 @@ impl<'a> FFA7_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA8`"]
|
||||
pub type FFA8_R = crate::R<bool, bool>;
|
||||
pub type FFA8_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA8`"]
|
||||
pub struct FFA8_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -227,7 +227,7 @@ impl<'a> FFA8_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA9`"]
|
||||
pub type FFA9_R = crate::R<bool, bool>;
|
||||
pub type FFA9_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA9`"]
|
||||
pub struct FFA9_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -251,7 +251,7 @@ impl<'a> FFA9_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA10`"]
|
||||
pub type FFA10_R = crate::R<bool, bool>;
|
||||
pub type FFA10_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA10`"]
|
||||
pub struct FFA10_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -275,7 +275,7 @@ impl<'a> FFA10_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA11`"]
|
||||
pub type FFA11_R = crate::R<bool, bool>;
|
||||
pub type FFA11_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA11`"]
|
||||
pub struct FFA11_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -299,7 +299,7 @@ impl<'a> FFA11_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA12`"]
|
||||
pub type FFA12_R = crate::R<bool, bool>;
|
||||
pub type FFA12_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA12`"]
|
||||
pub struct FFA12_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -323,7 +323,7 @@ impl<'a> FFA12_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFA13`"]
|
||||
pub type FFA13_R = crate::R<bool, bool>;
|
||||
pub type FFA13_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FFA13`"]
|
||||
pub struct FFA13_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register FM1R"]
|
||||
pub type R = crate::R<u32, super::FM1R>;
|
||||
pub type R = crate::can::bx::R<u32, super::FM1R>;
|
||||
#[doc = "Writer for register FM1R"]
|
||||
pub type W = crate::W<u32, super::FM1R>;
|
||||
pub type W = crate::can::bx::W<u32, super::FM1R>;
|
||||
#[doc = "Register FM1R `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::FM1R {
|
||||
impl crate::can::bx::ResetValue for super::FM1R {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,7 +11,7 @@ impl crate::ResetValue for super::FM1R {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM0`"]
|
||||
pub type FBM0_R = crate::R<bool, bool>;
|
||||
pub type FBM0_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM0`"]
|
||||
pub struct FBM0_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -35,7 +35,7 @@ impl<'a> FBM0_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM1`"]
|
||||
pub type FBM1_R = crate::R<bool, bool>;
|
||||
pub type FBM1_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM1`"]
|
||||
pub struct FBM1_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -59,7 +59,7 @@ impl<'a> FBM1_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM2`"]
|
||||
pub type FBM2_R = crate::R<bool, bool>;
|
||||
pub type FBM2_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM2`"]
|
||||
pub struct FBM2_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -83,7 +83,7 @@ impl<'a> FBM2_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM3`"]
|
||||
pub type FBM3_R = crate::R<bool, bool>;
|
||||
pub type FBM3_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM3`"]
|
||||
pub struct FBM3_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -107,7 +107,7 @@ impl<'a> FBM3_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM4`"]
|
||||
pub type FBM4_R = crate::R<bool, bool>;
|
||||
pub type FBM4_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM4`"]
|
||||
pub struct FBM4_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -131,7 +131,7 @@ impl<'a> FBM4_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM5`"]
|
||||
pub type FBM5_R = crate::R<bool, bool>;
|
||||
pub type FBM5_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM5`"]
|
||||
pub struct FBM5_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -155,7 +155,7 @@ impl<'a> FBM5_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM6`"]
|
||||
pub type FBM6_R = crate::R<bool, bool>;
|
||||
pub type FBM6_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM6`"]
|
||||
pub struct FBM6_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -179,7 +179,7 @@ impl<'a> FBM6_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM7`"]
|
||||
pub type FBM7_R = crate::R<bool, bool>;
|
||||
pub type FBM7_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM7`"]
|
||||
pub struct FBM7_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -203,7 +203,7 @@ impl<'a> FBM7_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM8`"]
|
||||
pub type FBM8_R = crate::R<bool, bool>;
|
||||
pub type FBM8_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM8`"]
|
||||
pub struct FBM8_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -227,7 +227,7 @@ impl<'a> FBM8_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM9`"]
|
||||
pub type FBM9_R = crate::R<bool, bool>;
|
||||
pub type FBM9_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM9`"]
|
||||
pub struct FBM9_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -251,7 +251,7 @@ impl<'a> FBM9_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM10`"]
|
||||
pub type FBM10_R = crate::R<bool, bool>;
|
||||
pub type FBM10_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM10`"]
|
||||
pub struct FBM10_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -275,7 +275,7 @@ impl<'a> FBM10_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM11`"]
|
||||
pub type FBM11_R = crate::R<bool, bool>;
|
||||
pub type FBM11_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM11`"]
|
||||
pub struct FBM11_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -299,7 +299,7 @@ impl<'a> FBM11_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM12`"]
|
||||
pub type FBM12_R = crate::R<bool, bool>;
|
||||
pub type FBM12_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM12`"]
|
||||
pub struct FBM12_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -323,7 +323,7 @@ impl<'a> FBM12_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FBM13`"]
|
||||
pub type FBM13_R = crate::R<bool, bool>;
|
||||
pub type FBM13_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FBM13`"]
|
||||
pub struct FBM13_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register FMR"]
|
||||
pub type R = crate::R<u32, super::FMR>;
|
||||
pub type R = crate::can::bx::R<u32, super::FMR>;
|
||||
#[doc = "Writer for register FMR"]
|
||||
pub type W = crate::W<u32, super::FMR>;
|
||||
pub type W = crate::can::bx::W<u32, super::FMR>;
|
||||
#[doc = "Register FMR `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::FMR {
|
||||
impl crate::can::bx::ResetValue for super::FMR {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,7 +11,7 @@ impl crate::ResetValue for super::FMR {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `CAN2SB`"]
|
||||
pub type CAN2SB_R = crate::R<u8, u8>;
|
||||
pub type CAN2SB_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `CAN2SB`"]
|
||||
pub struct CAN2SB_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -25,7 +25,7 @@ impl<'a> CAN2SB_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FINIT`"]
|
||||
pub type FINIT_R = crate::R<bool, bool>;
|
||||
pub type FINIT_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FINIT`"]
|
||||
pub struct FINIT_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register FS1R"]
|
||||
pub type R = crate::R<u32, super::FS1R>;
|
||||
pub type R = crate::can::bx::R<u32, super::FS1R>;
|
||||
#[doc = "Writer for register FS1R"]
|
||||
pub type W = crate::W<u32, super::FS1R>;
|
||||
pub type W = crate::can::bx::W<u32, super::FS1R>;
|
||||
#[doc = "Register FS1R `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::FS1R {
|
||||
impl crate::can::bx::ResetValue for super::FS1R {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,7 +11,7 @@ impl crate::ResetValue for super::FS1R {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC0`"]
|
||||
pub type FSC0_R = crate::R<bool, bool>;
|
||||
pub type FSC0_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC0`"]
|
||||
pub struct FSC0_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -35,7 +35,7 @@ impl<'a> FSC0_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC1`"]
|
||||
pub type FSC1_R = crate::R<bool, bool>;
|
||||
pub type FSC1_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC1`"]
|
||||
pub struct FSC1_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -59,7 +59,7 @@ impl<'a> FSC1_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC2`"]
|
||||
pub type FSC2_R = crate::R<bool, bool>;
|
||||
pub type FSC2_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC2`"]
|
||||
pub struct FSC2_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -83,7 +83,7 @@ impl<'a> FSC2_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC3`"]
|
||||
pub type FSC3_R = crate::R<bool, bool>;
|
||||
pub type FSC3_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC3`"]
|
||||
pub struct FSC3_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -107,7 +107,7 @@ impl<'a> FSC3_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC4`"]
|
||||
pub type FSC4_R = crate::R<bool, bool>;
|
||||
pub type FSC4_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC4`"]
|
||||
pub struct FSC4_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -131,7 +131,7 @@ impl<'a> FSC4_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC5`"]
|
||||
pub type FSC5_R = crate::R<bool, bool>;
|
||||
pub type FSC5_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC5`"]
|
||||
pub struct FSC5_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -155,7 +155,7 @@ impl<'a> FSC5_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC6`"]
|
||||
pub type FSC6_R = crate::R<bool, bool>;
|
||||
pub type FSC6_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC6`"]
|
||||
pub struct FSC6_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -179,7 +179,7 @@ impl<'a> FSC6_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC7`"]
|
||||
pub type FSC7_R = crate::R<bool, bool>;
|
||||
pub type FSC7_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC7`"]
|
||||
pub struct FSC7_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -203,7 +203,7 @@ impl<'a> FSC7_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC8`"]
|
||||
pub type FSC8_R = crate::R<bool, bool>;
|
||||
pub type FSC8_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC8`"]
|
||||
pub struct FSC8_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -227,7 +227,7 @@ impl<'a> FSC8_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC9`"]
|
||||
pub type FSC9_R = crate::R<bool, bool>;
|
||||
pub type FSC9_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC9`"]
|
||||
pub struct FSC9_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -251,7 +251,7 @@ impl<'a> FSC9_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC10`"]
|
||||
pub type FSC10_R = crate::R<bool, bool>;
|
||||
pub type FSC10_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC10`"]
|
||||
pub struct FSC10_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -275,7 +275,7 @@ impl<'a> FSC10_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC11`"]
|
||||
pub type FSC11_R = crate::R<bool, bool>;
|
||||
pub type FSC11_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC11`"]
|
||||
pub struct FSC11_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -299,7 +299,7 @@ impl<'a> FSC11_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC12`"]
|
||||
pub type FSC12_R = crate::R<bool, bool>;
|
||||
pub type FSC12_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC12`"]
|
||||
pub struct FSC12_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -323,7 +323,7 @@ impl<'a> FSC12_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FSC13`"]
|
||||
pub type FSC13_R = crate::R<bool, bool>;
|
||||
pub type FSC13_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `FSC13`"]
|
||||
pub struct FSC13_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register IER"]
|
||||
pub type R = crate::R<u32, super::IER>;
|
||||
pub type R = crate::can::bx::R<u32, super::IER>;
|
||||
#[doc = "Writer for register IER"]
|
||||
pub type W = crate::W<u32, super::IER>;
|
||||
pub type W = crate::can::bx::W<u32, super::IER>;
|
||||
#[doc = "Register IER `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::IER {
|
||||
impl crate::can::bx::ResetValue for super::IER {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -25,7 +25,7 @@ impl From<SLKIE_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `SLKIE`"]
|
||||
pub type SLKIE_R = crate::R<bool, SLKIE_A>;
|
||||
pub type SLKIE_R = crate::can::bx::R<bool, SLKIE_A>;
|
||||
impl SLKIE_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -100,7 +100,7 @@ impl From<WKUIE_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `WKUIE`"]
|
||||
pub type WKUIE_R = crate::R<bool, WKUIE_A>;
|
||||
pub type WKUIE_R = crate::can::bx::R<bool, WKUIE_A>;
|
||||
impl WKUIE_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -175,7 +175,7 @@ impl From<ERRIE_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `ERRIE`"]
|
||||
pub type ERRIE_R = crate::R<bool, ERRIE_A>;
|
||||
pub type ERRIE_R = crate::can::bx::R<bool, ERRIE_A>;
|
||||
impl ERRIE_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -252,7 +252,7 @@ impl From<LECIE_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `LECIE`"]
|
||||
pub type LECIE_R = crate::R<bool, LECIE_A>;
|
||||
pub type LECIE_R = crate::can::bx::R<bool, LECIE_A>;
|
||||
impl LECIE_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -329,7 +329,7 @@ impl From<BOFIE_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `BOFIE`"]
|
||||
pub type BOFIE_R = crate::R<bool, BOFIE_A>;
|
||||
pub type BOFIE_R = crate::can::bx::R<bool, BOFIE_A>;
|
||||
impl BOFIE_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -404,7 +404,7 @@ impl From<EPVIE_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `EPVIE`"]
|
||||
pub type EPVIE_R = crate::R<bool, EPVIE_A>;
|
||||
pub type EPVIE_R = crate::can::bx::R<bool, EPVIE_A>;
|
||||
impl EPVIE_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -479,7 +479,7 @@ impl From<EWGIE_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `EWGIE`"]
|
||||
pub type EWGIE_R = crate::R<bool, EWGIE_A>;
|
||||
pub type EWGIE_R = crate::can::bx::R<bool, EWGIE_A>;
|
||||
impl EWGIE_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -554,7 +554,7 @@ impl From<FOVIE1_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FOVIE1`"]
|
||||
pub type FOVIE1_R = crate::R<bool, FOVIE1_A>;
|
||||
pub type FOVIE1_R = crate::can::bx::R<bool, FOVIE1_A>;
|
||||
impl FOVIE1_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -629,7 +629,7 @@ impl From<FFIE1_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFIE1`"]
|
||||
pub type FFIE1_R = crate::R<bool, FFIE1_A>;
|
||||
pub type FFIE1_R = crate::can::bx::R<bool, FFIE1_A>;
|
||||
impl FFIE1_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -706,7 +706,7 @@ impl From<FMPIE1_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FMPIE1`"]
|
||||
pub type FMPIE1_R = crate::R<bool, FMPIE1_A>;
|
||||
pub type FMPIE1_R = crate::can::bx::R<bool, FMPIE1_A>;
|
||||
impl FMPIE1_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -783,7 +783,7 @@ impl From<FOVIE0_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FOVIE0`"]
|
||||
pub type FOVIE0_R = crate::R<bool, FOVIE0_A>;
|
||||
pub type FOVIE0_R = crate::can::bx::R<bool, FOVIE0_A>;
|
||||
impl FOVIE0_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -858,7 +858,7 @@ impl From<FFIE0_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FFIE0`"]
|
||||
pub type FFIE0_R = crate::R<bool, FFIE0_A>;
|
||||
pub type FFIE0_R = crate::can::bx::R<bool, FFIE0_A>;
|
||||
impl FFIE0_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -935,7 +935,7 @@ impl From<FMPIE0_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FMPIE0`"]
|
||||
pub type FMPIE0_R = crate::R<bool, FMPIE0_A>;
|
||||
pub type FMPIE0_R = crate::can::bx::R<bool, FMPIE0_A>;
|
||||
impl FMPIE0_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -1012,7 +1012,7 @@ impl From<TMEIE_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TMEIE`"]
|
||||
pub type TMEIE_R = crate::R<bool, TMEIE_A>;
|
||||
pub type TMEIE_R = crate::can::bx::R<bool, TMEIE_A>;
|
||||
impl TMEIE_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register MCR"]
|
||||
pub type R = crate::R<u32, super::MCR>;
|
||||
pub type R = crate::can::bx::R<u32, super::MCR>;
|
||||
#[doc = "Writer for register MCR"]
|
||||
pub type W = crate::W<u32, super::MCR>;
|
||||
pub type W = crate::can::bx::W<u32, super::MCR>;
|
||||
#[doc = "Register MCR `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::MCR {
|
||||
impl crate::can::bx::ResetValue for super::MCR {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,7 +11,7 @@ impl crate::ResetValue for super::MCR {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `DBF`"]
|
||||
pub type DBF_R = crate::R<bool, bool>;
|
||||
pub type DBF_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `DBF`"]
|
||||
pub struct DBF_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -35,7 +35,7 @@ impl<'a> DBF_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `RESET`"]
|
||||
pub type RESET_R = crate::R<bool, bool>;
|
||||
pub type RESET_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `RESET`"]
|
||||
pub struct RESET_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -59,7 +59,7 @@ impl<'a> RESET_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TTCM`"]
|
||||
pub type TTCM_R = crate::R<bool, bool>;
|
||||
pub type TTCM_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `TTCM`"]
|
||||
pub struct TTCM_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -83,7 +83,7 @@ impl<'a> TTCM_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `ABOM`"]
|
||||
pub type ABOM_R = crate::R<bool, bool>;
|
||||
pub type ABOM_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `ABOM`"]
|
||||
pub struct ABOM_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -107,7 +107,7 @@ impl<'a> ABOM_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `AWUM`"]
|
||||
pub type AWUM_R = crate::R<bool, bool>;
|
||||
pub type AWUM_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `AWUM`"]
|
||||
pub struct AWUM_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -131,7 +131,7 @@ impl<'a> AWUM_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `NART`"]
|
||||
pub type NART_R = crate::R<bool, bool>;
|
||||
pub type NART_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `NART`"]
|
||||
pub struct NART_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -155,7 +155,7 @@ impl<'a> NART_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `RFLM`"]
|
||||
pub type RFLM_R = crate::R<bool, bool>;
|
||||
pub type RFLM_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `RFLM`"]
|
||||
pub struct RFLM_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -179,7 +179,7 @@ impl<'a> RFLM_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TXFP`"]
|
||||
pub type TXFP_R = crate::R<bool, bool>;
|
||||
pub type TXFP_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `TXFP`"]
|
||||
pub struct TXFP_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -203,7 +203,7 @@ impl<'a> TXFP_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `SLEEP`"]
|
||||
pub type SLEEP_R = crate::R<bool, bool>;
|
||||
pub type SLEEP_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `SLEEP`"]
|
||||
pub struct SLEEP_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -227,7 +227,7 @@ impl<'a> SLEEP_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `INRQ`"]
|
||||
pub type INRQ_R = crate::R<bool, bool>;
|
||||
pub type INRQ_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `INRQ`"]
|
||||
pub struct INRQ_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register MSR"]
|
||||
pub type R = crate::R<u32, super::MSR>;
|
||||
pub type R = crate::can::bx::R<u32, super::MSR>;
|
||||
#[doc = "Writer for register MSR"]
|
||||
pub type W = crate::W<u32, super::MSR>;
|
||||
pub type W = crate::can::bx::W<u32, super::MSR>;
|
||||
#[doc = "Register MSR `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::MSR {
|
||||
impl crate::can::bx::ResetValue for super::MSR {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,15 +11,15 @@ impl crate::ResetValue for super::MSR {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `RX`"]
|
||||
pub type RX_R = crate::R<bool, bool>;
|
||||
pub type RX_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `SAMP`"]
|
||||
pub type SAMP_R = crate::R<bool, bool>;
|
||||
pub type SAMP_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `RXM`"]
|
||||
pub type RXM_R = crate::R<bool, bool>;
|
||||
pub type RXM_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `TXM`"]
|
||||
pub type TXM_R = crate::R<bool, bool>;
|
||||
pub type TXM_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `SLAKI`"]
|
||||
pub type SLAKI_R = crate::R<bool, bool>;
|
||||
pub type SLAKI_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `SLAKI`"]
|
||||
pub struct SLAKI_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -43,7 +43,7 @@ impl<'a> SLAKI_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `WKUI`"]
|
||||
pub type WKUI_R = crate::R<bool, bool>;
|
||||
pub type WKUI_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `WKUI`"]
|
||||
pub struct WKUI_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -67,7 +67,7 @@ impl<'a> WKUI_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `ERRI`"]
|
||||
pub type ERRI_R = crate::R<bool, bool>;
|
||||
pub type ERRI_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `ERRI`"]
|
||||
pub struct ERRI_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -91,9 +91,9 @@ impl<'a> ERRI_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `SLAK`"]
|
||||
pub type SLAK_R = crate::R<bool, bool>;
|
||||
pub type SLAK_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `INAK`"]
|
||||
pub type INAK_R = crate::R<bool, bool>;
|
||||
pub type INAK_R = crate::can::bx::R<bool, bool>;
|
||||
impl R {
|
||||
#[doc = "Bit 11 - RX"]
|
||||
#[inline(always)]
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register RF%sR"]
|
||||
pub type R = crate::R<u32, super::RFR>;
|
||||
pub type R = crate::can::bx::R<u32, super::RFR>;
|
||||
#[doc = "Writer for register RF%sR"]
|
||||
pub type W = crate::W<u32, super::RFR>;
|
||||
pub type W = crate::can::bx::W<u32, super::RFR>;
|
||||
#[doc = "Register RF%sR `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::RFR {
|
||||
impl crate::can::bx::ResetValue for super::RFR {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -23,12 +23,12 @@ impl From<RFOM_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `RFOM`"]
|
||||
pub type RFOM_R = crate::R<bool, RFOM_A>;
|
||||
pub type RFOM_R = crate::can::bx::R<bool, RFOM_A>;
|
||||
impl RFOM_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
pub fn variant(&self) -> crate::Variant<bool, RFOM_A> {
|
||||
use crate::Variant::*;
|
||||
pub fn variant(&self) -> crate::can::bx::Variant<bool, RFOM_A> {
|
||||
use crate::can::bx::Variant::*;
|
||||
match self.bits {
|
||||
true => Val(RFOM_A::RELEASE),
|
||||
i => Res(i),
|
||||
@ -89,7 +89,7 @@ impl From<FOVR_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FOVR`"]
|
||||
pub type FOVR_R = crate::R<bool, FOVR_A>;
|
||||
pub type FOVR_R = crate::can::bx::R<bool, FOVR_A>;
|
||||
impl FOVR_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -171,7 +171,7 @@ impl From<FULL_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FULL`"]
|
||||
pub type FULL_R = crate::R<bool, FULL_A>;
|
||||
pub type FULL_R = crate::can::bx::R<bool, FULL_A>;
|
||||
impl FULL_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -239,7 +239,7 @@ impl<'a> FULL_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `FMP`"]
|
||||
pub type FMP_R = crate::R<u8, u8>;
|
||||
pub type FMP_R = crate::can::bx::R<u8, u8>;
|
||||
impl R {
|
||||
#[doc = "Bit 5 - RFOM0"]
|
||||
#[inline(always)]
|
||||
|
@ -1,36 +1,36 @@
|
||||
#[doc = "CAN_RI0R\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rir](rir) module"]
|
||||
pub type RIR = crate::Reg<u32, _RIR>;
|
||||
#[doc = "CAN_RI0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rir](rir) module"]
|
||||
pub type RIR = crate::can::bx::Reg<u32, _RIR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _RIR;
|
||||
#[doc = "`read()` method returns [rir::R](rir::R) reader structure"]
|
||||
impl crate::Readable for RIR {}
|
||||
impl crate::can::bx::Readable for RIR {}
|
||||
#[doc = "CAN_RI0R"]
|
||||
pub mod rir;
|
||||
#[doc = "CAN_RDT0R\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rdtr](rdtr) module"]
|
||||
pub type RDTR = crate::Reg<u32, _RDTR>;
|
||||
#[doc = "CAN_RDT0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rdtr](rdtr) module"]
|
||||
pub type RDTR = crate::can::bx::Reg<u32, _RDTR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _RDTR;
|
||||
#[doc = "`read()` method returns [rdtr::R](rdtr::R) reader structure"]
|
||||
impl crate::Readable for RDTR {}
|
||||
impl crate::can::bx::Readable for RDTR {}
|
||||
#[doc = "CAN_RDT0R"]
|
||||
pub mod rdtr;
|
||||
#[doc = "CAN_RDL0R\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rdlr](rdlr) module"]
|
||||
pub type RDLR = crate::Reg<u32, _RDLR>;
|
||||
#[doc = "CAN_RDL0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rdlr](rdlr) module"]
|
||||
pub type RDLR = crate::can::bx::Reg<u32, _RDLR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _RDLR;
|
||||
#[doc = "`read()` method returns [rdlr::R](rdlr::R) reader structure"]
|
||||
impl crate::Readable for RDLR {}
|
||||
impl crate::can::bx::Readable for RDLR {}
|
||||
#[doc = "CAN_RDL0R"]
|
||||
pub mod rdlr;
|
||||
#[doc = "CAN_RDH0R\n\nThis register you can [`read`](crate::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rdhr](rdhr) module"]
|
||||
pub type RDHR = crate::Reg<u32, _RDHR>;
|
||||
#[doc = "CAN_RDH0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [rdhr](rdhr) module"]
|
||||
pub type RDHR = crate::can::bx::Reg<u32, _RDHR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _RDHR;
|
||||
#[doc = "`read()` method returns [rdhr::R](rdhr::R) reader structure"]
|
||||
impl crate::Readable for RDHR {}
|
||||
impl crate::can::bx::Readable for RDHR {}
|
||||
#[doc = "CAN_RDH0R"]
|
||||
pub mod rdhr;
|
||||
|
@ -1,13 +1,13 @@
|
||||
#[doc = "Reader of register RDHR"]
|
||||
pub type R = crate::R<u32, super::RDHR>;
|
||||
pub type R = crate::can::bx::R<u32, super::RDHR>;
|
||||
#[doc = "Reader of field `DATA7`"]
|
||||
pub type DATA7_R = crate::R<u8, u8>;
|
||||
pub type DATA7_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Reader of field `DATA6`"]
|
||||
pub type DATA6_R = crate::R<u8, u8>;
|
||||
pub type DATA6_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Reader of field `DATA5`"]
|
||||
pub type DATA5_R = crate::R<u8, u8>;
|
||||
pub type DATA5_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Reader of field `DATA4`"]
|
||||
pub type DATA4_R = crate::R<u8, u8>;
|
||||
pub type DATA4_R = crate::can::bx::R<u8, u8>;
|
||||
impl R {
|
||||
#[doc = "Bits 24:31 - DATA7"]
|
||||
#[inline(always)]
|
||||
|
@ -1,13 +1,13 @@
|
||||
#[doc = "Reader of register RDLR"]
|
||||
pub type R = crate::R<u32, super::RDLR>;
|
||||
pub type R = crate::can::bx::R<u32, super::RDLR>;
|
||||
#[doc = "Reader of field `DATA3`"]
|
||||
pub type DATA3_R = crate::R<u8, u8>;
|
||||
pub type DATA3_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Reader of field `DATA2`"]
|
||||
pub type DATA2_R = crate::R<u8, u8>;
|
||||
pub type DATA2_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Reader of field `DATA1`"]
|
||||
pub type DATA1_R = crate::R<u8, u8>;
|
||||
pub type DATA1_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Reader of field `DATA0`"]
|
||||
pub type DATA0_R = crate::R<u8, u8>;
|
||||
pub type DATA0_R = crate::can::bx::R<u8, u8>;
|
||||
impl R {
|
||||
#[doc = "Bits 24:31 - DATA3"]
|
||||
#[inline(always)]
|
||||
|
@ -1,11 +1,11 @@
|
||||
#[doc = "Reader of register RDTR"]
|
||||
pub type R = crate::R<u32, super::RDTR>;
|
||||
pub type R = crate::can::bx::R<u32, super::RDTR>;
|
||||
#[doc = "Reader of field `TIME`"]
|
||||
pub type TIME_R = crate::R<u16, u16>;
|
||||
pub type TIME_R = crate::can::bx::R<u16, u16>;
|
||||
#[doc = "Reader of field `FMI`"]
|
||||
pub type FMI_R = crate::R<u8, u8>;
|
||||
pub type FMI_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Reader of field `DLC`"]
|
||||
pub type DLC_R = crate::R<u8, u8>;
|
||||
pub type DLC_R = crate::can::bx::R<u8, u8>;
|
||||
impl R {
|
||||
#[doc = "Bits 16:31 - TIME"]
|
||||
#[inline(always)]
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register RIR"]
|
||||
pub type R = crate::R<u32, super::RIR>;
|
||||
pub type R = crate::can::bx::R<u32, super::RIR>;
|
||||
#[doc = "Reader of field `STID`"]
|
||||
pub type STID_R = crate::R<u16, u16>;
|
||||
pub type STID_R = crate::can::bx::R<u16, u16>;
|
||||
#[doc = "Reader of field `EXID`"]
|
||||
pub type EXID_R = crate::R<u32, u32>;
|
||||
pub type EXID_R = crate::can::bx::R<u32, u32>;
|
||||
#[doc = "IDE\n\nValue on reset: 0"]
|
||||
#[derive(Clone, Copy, Debug, PartialEq)]
|
||||
pub enum IDE_A {
|
||||
@ -19,7 +19,7 @@ impl From<IDE_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `IDE`"]
|
||||
pub type IDE_R = crate::R<bool, IDE_A>;
|
||||
pub type IDE_R = crate::can::bx::R<bool, IDE_A>;
|
||||
impl IDE_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -55,7 +55,7 @@ impl From<RTR_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `RTR`"]
|
||||
pub type RTR_R = crate::R<bool, RTR_A>;
|
||||
pub type RTR_R = crate::can::bx::R<bool, RTR_A>;
|
||||
impl RTR_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register TSR"]
|
||||
pub type R = crate::R<u32, super::TSR>;
|
||||
pub type R = crate::can::bx::R<u32, super::TSR>;
|
||||
#[doc = "Writer for register TSR"]
|
||||
pub type W = crate::W<u32, super::TSR>;
|
||||
pub type W = crate::can::bx::W<u32, super::TSR>;
|
||||
#[doc = "Register TSR `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::TSR {
|
||||
impl crate::can::bx::ResetValue for super::TSR {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,21 +11,21 @@ impl crate::ResetValue for super::TSR {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `LOW2`"]
|
||||
pub type LOW2_R = crate::R<bool, bool>;
|
||||
pub type LOW2_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `LOW1`"]
|
||||
pub type LOW1_R = crate::R<bool, bool>;
|
||||
pub type LOW1_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `LOW0`"]
|
||||
pub type LOW0_R = crate::R<bool, bool>;
|
||||
pub type LOW0_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `TME2`"]
|
||||
pub type TME2_R = crate::R<bool, bool>;
|
||||
pub type TME2_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `TME1`"]
|
||||
pub type TME1_R = crate::R<bool, bool>;
|
||||
pub type TME1_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `TME0`"]
|
||||
pub type TME0_R = crate::R<bool, bool>;
|
||||
pub type TME0_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Reader of field `CODE`"]
|
||||
pub type CODE_R = crate::R<u8, u8>;
|
||||
pub type CODE_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Reader of field `ABRQ2`"]
|
||||
pub type ABRQ2_R = crate::R<bool, bool>;
|
||||
pub type ABRQ2_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `ABRQ2`"]
|
||||
pub struct ABRQ2_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -49,7 +49,7 @@ impl<'a> ABRQ2_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TERR2`"]
|
||||
pub type TERR2_R = crate::R<bool, bool>;
|
||||
pub type TERR2_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `TERR2`"]
|
||||
pub struct TERR2_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -73,7 +73,7 @@ impl<'a> TERR2_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `ALST2`"]
|
||||
pub type ALST2_R = crate::R<bool, bool>;
|
||||
pub type ALST2_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `ALST2`"]
|
||||
pub struct ALST2_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -97,7 +97,7 @@ impl<'a> ALST2_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TXOK2`"]
|
||||
pub type TXOK2_R = crate::R<bool, bool>;
|
||||
pub type TXOK2_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `TXOK2`"]
|
||||
pub struct TXOK2_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -121,7 +121,7 @@ impl<'a> TXOK2_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `RQCP2`"]
|
||||
pub type RQCP2_R = crate::R<bool, bool>;
|
||||
pub type RQCP2_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `RQCP2`"]
|
||||
pub struct RQCP2_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -145,7 +145,7 @@ impl<'a> RQCP2_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `ABRQ1`"]
|
||||
pub type ABRQ1_R = crate::R<bool, bool>;
|
||||
pub type ABRQ1_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `ABRQ1`"]
|
||||
pub struct ABRQ1_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -169,7 +169,7 @@ impl<'a> ABRQ1_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TERR1`"]
|
||||
pub type TERR1_R = crate::R<bool, bool>;
|
||||
pub type TERR1_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `TERR1`"]
|
||||
pub struct TERR1_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -193,7 +193,7 @@ impl<'a> TERR1_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `ALST1`"]
|
||||
pub type ALST1_R = crate::R<bool, bool>;
|
||||
pub type ALST1_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `ALST1`"]
|
||||
pub struct ALST1_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -217,7 +217,7 @@ impl<'a> ALST1_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TXOK1`"]
|
||||
pub type TXOK1_R = crate::R<bool, bool>;
|
||||
pub type TXOK1_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `TXOK1`"]
|
||||
pub struct TXOK1_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -241,7 +241,7 @@ impl<'a> TXOK1_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `RQCP1`"]
|
||||
pub type RQCP1_R = crate::R<bool, bool>;
|
||||
pub type RQCP1_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `RQCP1`"]
|
||||
pub struct RQCP1_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -265,7 +265,7 @@ impl<'a> RQCP1_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `ABRQ0`"]
|
||||
pub type ABRQ0_R = crate::R<bool, bool>;
|
||||
pub type ABRQ0_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `ABRQ0`"]
|
||||
pub struct ABRQ0_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -289,7 +289,7 @@ impl<'a> ABRQ0_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TERR0`"]
|
||||
pub type TERR0_R = crate::R<bool, bool>;
|
||||
pub type TERR0_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `TERR0`"]
|
||||
pub struct TERR0_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -313,7 +313,7 @@ impl<'a> TERR0_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `ALST0`"]
|
||||
pub type ALST0_R = crate::R<bool, bool>;
|
||||
pub type ALST0_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `ALST0`"]
|
||||
pub struct ALST0_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -337,7 +337,7 @@ impl<'a> ALST0_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TXOK0`"]
|
||||
pub type TXOK0_R = crate::R<bool, bool>;
|
||||
pub type TXOK0_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `TXOK0`"]
|
||||
pub struct TXOK0_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -361,7 +361,7 @@ impl<'a> TXOK0_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `RQCP0`"]
|
||||
pub type RQCP0_R = crate::R<bool, bool>;
|
||||
pub type RQCP0_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `RQCP0`"]
|
||||
pub struct RQCP0_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,44 +1,44 @@
|
||||
#[doc = "CAN_TI0R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tir](tir) module"]
|
||||
pub type TIR = crate::Reg<u32, _TIR>;
|
||||
#[doc = "CAN_TI0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tir](tir) module"]
|
||||
pub type TIR = crate::can::bx::Reg<u32, _TIR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _TIR;
|
||||
#[doc = "`read()` method returns [tir::R](tir::R) reader structure"]
|
||||
impl crate::Readable for TIR {}
|
||||
impl crate::can::bx::Readable for TIR {}
|
||||
#[doc = "`write(|w| ..)` method takes [tir::W](tir::W) writer structure"]
|
||||
impl crate::Writable for TIR {}
|
||||
impl crate::can::bx::Writable for TIR {}
|
||||
#[doc = "CAN_TI0R"]
|
||||
pub mod tir;
|
||||
#[doc = "CAN_TDT0R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tdtr](tdtr) module"]
|
||||
pub type TDTR = crate::Reg<u32, _TDTR>;
|
||||
#[doc = "CAN_TDT0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tdtr](tdtr) module"]
|
||||
pub type TDTR = crate::can::bx::Reg<u32, _TDTR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _TDTR;
|
||||
#[doc = "`read()` method returns [tdtr::R](tdtr::R) reader structure"]
|
||||
impl crate::Readable for TDTR {}
|
||||
impl crate::can::bx::Readable for TDTR {}
|
||||
#[doc = "`write(|w| ..)` method takes [tdtr::W](tdtr::W) writer structure"]
|
||||
impl crate::Writable for TDTR {}
|
||||
impl crate::can::bx::Writable for TDTR {}
|
||||
#[doc = "CAN_TDT0R"]
|
||||
pub mod tdtr;
|
||||
#[doc = "CAN_TDL0R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tdlr](tdlr) module"]
|
||||
pub type TDLR = crate::Reg<u32, _TDLR>;
|
||||
#[doc = "CAN_TDL0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tdlr](tdlr) module"]
|
||||
pub type TDLR = crate::can::bx::Reg<u32, _TDLR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _TDLR;
|
||||
#[doc = "`read()` method returns [tdlr::R](tdlr::R) reader structure"]
|
||||
impl crate::Readable for TDLR {}
|
||||
impl crate::can::bx::Readable for TDLR {}
|
||||
#[doc = "`write(|w| ..)` method takes [tdlr::W](tdlr::W) writer structure"]
|
||||
impl crate::Writable for TDLR {}
|
||||
impl crate::can::bx::Writable for TDLR {}
|
||||
#[doc = "CAN_TDL0R"]
|
||||
pub mod tdlr;
|
||||
#[doc = "CAN_TDH0R\n\nThis register you can [`read`](crate::generic::Reg::read), [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero), [`modify`](crate::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tdhr](tdhr) module"]
|
||||
pub type TDHR = crate::Reg<u32, _TDHR>;
|
||||
#[doc = "CAN_TDH0R\n\nThis register you can [`read`](crate::can::bx::generic::Reg::read), [`reset`](crate::can::bx::generic::Reg::reset), [`write`](crate::can::bx::generic::Reg::write), [`write_with_zero`](crate::can::bx::generic::Reg::write_with_zero), [`modify`](crate::can::bx::generic::Reg::modify). See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [tdhr](tdhr) module"]
|
||||
pub type TDHR = crate::can::bx::Reg<u32, _TDHR>;
|
||||
#[allow(missing_docs)]
|
||||
#[doc(hidden)]
|
||||
pub struct _TDHR;
|
||||
#[doc = "`read()` method returns [tdhr::R](tdhr::R) reader structure"]
|
||||
impl crate::Readable for TDHR {}
|
||||
impl crate::can::bx::Readable for TDHR {}
|
||||
#[doc = "`write(|w| ..)` method takes [tdhr::W](tdhr::W) writer structure"]
|
||||
impl crate::Writable for TDHR {}
|
||||
impl crate::can::bx::Writable for TDHR {}
|
||||
#[doc = "CAN_TDH0R"]
|
||||
pub mod tdhr;
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register TDHR"]
|
||||
pub type R = crate::R<u32, super::TDHR>;
|
||||
pub type R = crate::can::bx::R<u32, super::TDHR>;
|
||||
#[doc = "Writer for register TDHR"]
|
||||
pub type W = crate::W<u32, super::TDHR>;
|
||||
pub type W = crate::can::bx::W<u32, super::TDHR>;
|
||||
#[doc = "Register TDHR `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::TDHR {
|
||||
impl crate::can::bx::ResetValue for super::TDHR {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,7 +11,7 @@ impl crate::ResetValue for super::TDHR {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `DATA7`"]
|
||||
pub type DATA7_R = crate::R<u8, u8>;
|
||||
pub type DATA7_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `DATA7`"]
|
||||
pub struct DATA7_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -25,7 +25,7 @@ impl<'a> DATA7_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `DATA6`"]
|
||||
pub type DATA6_R = crate::R<u8, u8>;
|
||||
pub type DATA6_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `DATA6`"]
|
||||
pub struct DATA6_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -39,7 +39,7 @@ impl<'a> DATA6_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `DATA5`"]
|
||||
pub type DATA5_R = crate::R<u8, u8>;
|
||||
pub type DATA5_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `DATA5`"]
|
||||
pub struct DATA5_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -53,7 +53,7 @@ impl<'a> DATA5_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `DATA4`"]
|
||||
pub type DATA4_R = crate::R<u8, u8>;
|
||||
pub type DATA4_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `DATA4`"]
|
||||
pub struct DATA4_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register TDLR"]
|
||||
pub type R = crate::R<u32, super::TDLR>;
|
||||
pub type R = crate::can::bx::R<u32, super::TDLR>;
|
||||
#[doc = "Writer for register TDLR"]
|
||||
pub type W = crate::W<u32, super::TDLR>;
|
||||
pub type W = crate::can::bx::W<u32, super::TDLR>;
|
||||
#[doc = "Register TDLR `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::TDLR {
|
||||
impl crate::can::bx::ResetValue for super::TDLR {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,7 +11,7 @@ impl crate::ResetValue for super::TDLR {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `DATA3`"]
|
||||
pub type DATA3_R = crate::R<u8, u8>;
|
||||
pub type DATA3_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `DATA3`"]
|
||||
pub struct DATA3_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -25,7 +25,7 @@ impl<'a> DATA3_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `DATA2`"]
|
||||
pub type DATA2_R = crate::R<u8, u8>;
|
||||
pub type DATA2_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `DATA2`"]
|
||||
pub struct DATA2_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -39,7 +39,7 @@ impl<'a> DATA2_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `DATA1`"]
|
||||
pub type DATA1_R = crate::R<u8, u8>;
|
||||
pub type DATA1_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `DATA1`"]
|
||||
pub struct DATA1_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -53,7 +53,7 @@ impl<'a> DATA1_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `DATA0`"]
|
||||
pub type DATA0_R = crate::R<u8, u8>;
|
||||
pub type DATA0_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `DATA0`"]
|
||||
pub struct DATA0_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register TDTR"]
|
||||
pub type R = crate::R<u32, super::TDTR>;
|
||||
pub type R = crate::can::bx::R<u32, super::TDTR>;
|
||||
#[doc = "Writer for register TDTR"]
|
||||
pub type W = crate::W<u32, super::TDTR>;
|
||||
pub type W = crate::can::bx::W<u32, super::TDTR>;
|
||||
#[doc = "Register TDTR `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::TDTR {
|
||||
impl crate::can::bx::ResetValue for super::TDTR {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,7 +11,7 @@ impl crate::ResetValue for super::TDTR {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TIME`"]
|
||||
pub type TIME_R = crate::R<u16, u16>;
|
||||
pub type TIME_R = crate::can::bx::R<u16, u16>;
|
||||
#[doc = "Write proxy for field `TIME`"]
|
||||
pub struct TIME_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -25,7 +25,7 @@ impl<'a> TIME_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TGT`"]
|
||||
pub type TGT_R = crate::R<bool, bool>;
|
||||
pub type TGT_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `TGT`"]
|
||||
pub struct TGT_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -49,7 +49,7 @@ impl<'a> TGT_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `DLC`"]
|
||||
pub type DLC_R = crate::R<u8, u8>;
|
||||
pub type DLC_R = crate::can::bx::R<u8, u8>;
|
||||
#[doc = "Write proxy for field `DLC`"]
|
||||
pub struct DLC_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -1,9 +1,9 @@
|
||||
#[doc = "Reader of register TIR"]
|
||||
pub type R = crate::R<u32, super::TIR>;
|
||||
pub type R = crate::can::bx::R<u32, super::TIR>;
|
||||
#[doc = "Writer for register TIR"]
|
||||
pub type W = crate::W<u32, super::TIR>;
|
||||
pub type W = crate::can::bx::W<u32, super::TIR>;
|
||||
#[doc = "Register TIR `reset()`'s with value 0"]
|
||||
impl crate::ResetValue for super::TIR {
|
||||
impl crate::can::bx::ResetValue for super::TIR {
|
||||
type Type = u32;
|
||||
#[inline(always)]
|
||||
fn reset_value() -> Self::Type {
|
||||
@ -11,7 +11,7 @@ impl crate::ResetValue for super::TIR {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `STID`"]
|
||||
pub type STID_R = crate::R<u16, u16>;
|
||||
pub type STID_R = crate::can::bx::R<u16, u16>;
|
||||
#[doc = "Write proxy for field `STID`"]
|
||||
pub struct STID_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -25,7 +25,7 @@ impl<'a> STID_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `EXID`"]
|
||||
pub type EXID_R = crate::R<u32, u32>;
|
||||
pub type EXID_R = crate::can::bx::R<u32, u32>;
|
||||
#[doc = "Write proxy for field `EXID`"]
|
||||
pub struct EXID_W<'a> {
|
||||
w: &'a mut W,
|
||||
@ -53,7 +53,7 @@ impl From<IDE_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `IDE`"]
|
||||
pub type IDE_R = crate::R<bool, IDE_A>;
|
||||
pub type IDE_R = crate::can::bx::R<bool, IDE_A>;
|
||||
impl IDE_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -128,7 +128,7 @@ impl From<RTR_A> for bool {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `RTR`"]
|
||||
pub type RTR_R = crate::R<bool, RTR_A>;
|
||||
pub type RTR_R = crate::can::bx::R<bool, RTR_A>;
|
||||
impl RTR_R {
|
||||
#[doc = r"Get enumerated values variant"]
|
||||
#[inline(always)]
|
||||
@ -189,7 +189,7 @@ impl<'a> RTR_W<'a> {
|
||||
}
|
||||
}
|
||||
#[doc = "Reader of field `TXRQ`"]
|
||||
pub type TXRQ_R = crate::R<bool, bool>;
|
||||
pub type TXRQ_R = crate::can::bx::R<bool, bool>;
|
||||
#[doc = "Write proxy for field `TXRQ`"]
|
||||
pub struct TXRQ_W<'a> {
|
||||
w: &'a mut W,
|
||||
|
@ -4,8 +4,9 @@ use core::marker::PhantomData;
|
||||
use core::ops::{Deref, DerefMut};
|
||||
use core::task::Poll;
|
||||
|
||||
pub use bxcan;
|
||||
use bxcan::{Data, ExtendedId, Frame, Id, StandardId};
|
||||
pub mod bx;
|
||||
|
||||
use bx::{Data, ExtendedId, Frame, Id, StandardId};
|
||||
use embassy_hal_internal::{into_ref, PeripheralRef};
|
||||
use futures::FutureExt;
|
||||
|
||||
@ -29,7 +30,7 @@ pub struct Envelope {
|
||||
#[cfg(feature = "time")]
|
||||
pub ts: embassy_time::Instant,
|
||||
/// The actual CAN frame.
|
||||
pub frame: bxcan::Frame,
|
||||
pub frame: crate::can::bx::Frame,
|
||||
}
|
||||
|
||||
/// Interrupt handler.
|
||||
@ -93,7 +94,7 @@ impl<T: Instance> interrupt::typelevel::Handler<T::SCEInterrupt> for SceInterrup
|
||||
|
||||
/// CAN driver
|
||||
pub struct Can<'d, T: Instance> {
|
||||
can: bxcan::Can<BxcanInstance<'d, T>>,
|
||||
can: crate::can::bx::Can<BxcanInstance<'d, T>>,
|
||||
}
|
||||
|
||||
/// Error returned by `try_read`
|
||||
@ -166,7 +167,7 @@ impl<'d, T: Instance> Can<'d, T> {
|
||||
rx.set_as_af(rx.af_num(), AFType::Input);
|
||||
tx.set_as_af(tx.af_num(), AFType::OutputPushPull);
|
||||
|
||||
let can = bxcan::Can::builder(BxcanInstance(peri)).leave_disabled();
|
||||
let can = crate::can::bx::Can::builder(BxcanInstance(peri)).leave_disabled();
|
||||
Self { can }
|
||||
}
|
||||
|
||||
@ -198,19 +199,19 @@ impl<'d, T: Instance> Can<'d, T> {
|
||||
/// Queues the message to be sent.
|
||||
///
|
||||
/// If the TX queue is full, this will wait until there is space, therefore exerting backpressure.
|
||||
pub async fn write(&mut self, frame: &Frame) -> bxcan::TransmitStatus {
|
||||
pub async fn write(&mut self, frame: &Frame) -> crate::can::bx::TransmitStatus {
|
||||
self.split().0.write(frame).await
|
||||
}
|
||||
|
||||
/// Attempts to transmit a frame without blocking.
|
||||
///
|
||||
/// Returns [Err(TryWriteError::Full)] if all transmit mailboxes are full.
|
||||
pub fn try_write(&mut self, frame: &Frame) -> Result<bxcan::TransmitStatus, TryWriteError> {
|
||||
pub fn try_write(&mut self, frame: &Frame) -> Result<crate::can::bx::TransmitStatus, TryWriteError> {
|
||||
self.split().0.try_write(frame)
|
||||
}
|
||||
|
||||
/// Waits for a specific transmit mailbox to become empty
|
||||
pub async fn flush(&self, mb: bxcan::Mailbox) {
|
||||
pub async fn flush(&self, mb: crate::can::bx::Mailbox) {
|
||||
CanTx::<T>::flush_inner(mb).await
|
||||
}
|
||||
|
||||
@ -304,23 +305,23 @@ impl<'d, T: Instance> Can<'d, T> {
|
||||
}
|
||||
}
|
||||
|
||||
impl<'d, T: Instance> AsMut<bxcan::Can<BxcanInstance<'d, T>>> for Can<'d, T> {
|
||||
impl<'d, T: Instance> AsMut<crate::can::bx::Can<BxcanInstance<'d, T>>> for Can<'d, T> {
|
||||
/// Get mutable access to the lower-level driver from the `bxcan` crate.
|
||||
fn as_mut(&mut self) -> &mut bxcan::Can<BxcanInstance<'d, T>> {
|
||||
fn as_mut(&mut self) -> &mut crate::can::bx::Can<BxcanInstance<'d, T>> {
|
||||
&mut self.can
|
||||
}
|
||||
}
|
||||
|
||||
/// CAN driver, transmit half.
|
||||
pub struct CanTx<'c, 'd, T: Instance> {
|
||||
tx: &'c mut bxcan::Tx<BxcanInstance<'d, T>>,
|
||||
tx: &'c mut crate::can::bx::Tx<BxcanInstance<'d, T>>,
|
||||
}
|
||||
|
||||
impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> {
|
||||
/// Queues the message to be sent.
|
||||
///
|
||||
/// If the TX queue is full, this will wait until there is space, therefore exerting backpressure.
|
||||
pub async fn write(&mut self, frame: &Frame) -> bxcan::TransmitStatus {
|
||||
pub async fn write(&mut self, frame: &Frame) -> crate::can::bx::TransmitStatus {
|
||||
poll_fn(|cx| {
|
||||
T::state().tx_waker.register(cx.waker());
|
||||
if let Ok(status) = self.tx.transmit(frame) {
|
||||
@ -335,11 +336,11 @@ impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> {
|
||||
/// Attempts to transmit a frame without blocking.
|
||||
///
|
||||
/// Returns [Err(TryWriteError::Full)] if all transmit mailboxes are full.
|
||||
pub fn try_write(&mut self, frame: &Frame) -> Result<bxcan::TransmitStatus, TryWriteError> {
|
||||
pub fn try_write(&mut self, frame: &Frame) -> Result<crate::can::bx::TransmitStatus, TryWriteError> {
|
||||
self.tx.transmit(frame).map_err(|_| TryWriteError::Full)
|
||||
}
|
||||
|
||||
async fn flush_inner(mb: bxcan::Mailbox) {
|
||||
async fn flush_inner(mb: crate::can::bx::Mailbox) {
|
||||
poll_fn(|cx| {
|
||||
T::state().tx_waker.register(cx.waker());
|
||||
if T::regs().tsr().read().tme(mb.index()) {
|
||||
@ -352,7 +353,7 @@ impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> {
|
||||
}
|
||||
|
||||
/// Waits for a specific transmit mailbox to become empty
|
||||
pub async fn flush(&self, mb: bxcan::Mailbox) {
|
||||
pub async fn flush(&self, mb: crate::can::bx::Mailbox) {
|
||||
Self::flush_inner(mb).await
|
||||
}
|
||||
|
||||
@ -361,9 +362,9 @@ impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> {
|
||||
T::state().tx_waker.register(cx.waker());
|
||||
|
||||
let tsr = T::regs().tsr().read();
|
||||
if tsr.tme(bxcan::Mailbox::Mailbox0.index())
|
||||
|| tsr.tme(bxcan::Mailbox::Mailbox1.index())
|
||||
|| tsr.tme(bxcan::Mailbox::Mailbox2.index())
|
||||
if tsr.tme(crate::can::bx::Mailbox::Mailbox0.index())
|
||||
|| tsr.tme(crate::can::bx::Mailbox::Mailbox1.index())
|
||||
|| tsr.tme(crate::can::bx::Mailbox::Mailbox2.index())
|
||||
{
|
||||
return Poll::Ready(());
|
||||
}
|
||||
@ -383,9 +384,9 @@ impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> {
|
||||
T::state().tx_waker.register(cx.waker());
|
||||
|
||||
let tsr = T::regs().tsr().read();
|
||||
if tsr.tme(bxcan::Mailbox::Mailbox0.index())
|
||||
&& tsr.tme(bxcan::Mailbox::Mailbox1.index())
|
||||
&& tsr.tme(bxcan::Mailbox::Mailbox2.index())
|
||||
if tsr.tme(crate::can::bx::Mailbox::Mailbox0.index())
|
||||
&& tsr.tme(crate::can::bx::Mailbox::Mailbox1.index())
|
||||
&& tsr.tme(crate::can::bx::Mailbox::Mailbox2.index())
|
||||
{
|
||||
return Poll::Ready(());
|
||||
}
|
||||
@ -404,8 +405,8 @@ impl<'c, 'd, T: Instance> CanTx<'c, 'd, T> {
|
||||
/// CAN driver, receive half.
|
||||
#[allow(dead_code)]
|
||||
pub struct CanRx<'c, 'd, T: Instance> {
|
||||
rx0: &'c mut bxcan::Rx0<BxcanInstance<'d, T>>,
|
||||
rx1: &'c mut bxcan::Rx1<BxcanInstance<'d, T>>,
|
||||
rx0: &'c mut crate::can::bx::Rx0<BxcanInstance<'d, T>>,
|
||||
rx1: &'c mut crate::can::bx::Rx1<BxcanInstance<'d, T>>,
|
||||
}
|
||||
|
||||
impl<'c, 'd, T: Instance> CanRx<'c, 'd, T> {
|
||||
@ -478,7 +479,7 @@ impl<'d, T: Instance> Drop for Can<'d, T> {
|
||||
}
|
||||
|
||||
impl<'d, T: Instance> Deref for Can<'d, T> {
|
||||
type Target = bxcan::Can<BxcanInstance<'d, T>>;
|
||||
type Target = crate::can::bx::Can<BxcanInstance<'d, T>>;
|
||||
|
||||
fn deref(&self) -> &Self::Target {
|
||||
&self.can
|
||||
@ -515,7 +516,7 @@ pub(crate) mod sealed {
|
||||
}
|
||||
|
||||
pub trait Instance {
|
||||
const REGISTERS: *mut bxcan::RegisterBlock;
|
||||
const REGISTERS: *mut crate::can::bx::RegisterBlock;
|
||||
|
||||
fn regs() -> crate::pac::can::Can;
|
||||
fn state() -> &'static State;
|
||||
@ -537,14 +538,14 @@ pub trait Instance: sealed::Instance + RccPeripheral + 'static {
|
||||
/// BXCAN instance newtype.
|
||||
pub struct BxcanInstance<'a, T>(PeripheralRef<'a, T>);
|
||||
|
||||
unsafe impl<'d, T: Instance> bxcan::Instance for BxcanInstance<'d, T> {
|
||||
const REGISTERS: *mut bxcan::RegisterBlock = T::REGISTERS;
|
||||
unsafe impl<'d, T: Instance> crate::can::bx::Instance for BxcanInstance<'d, T> {
|
||||
const REGISTERS: *mut crate::can::bx::RegisterBlock = T::REGISTERS;
|
||||
}
|
||||
|
||||
foreach_peripheral!(
|
||||
(can, $inst:ident) => {
|
||||
impl sealed::Instance for peripherals::$inst {
|
||||
const REGISTERS: *mut bxcan::RegisterBlock = crate::pac::$inst.as_ptr() as *mut _;
|
||||
const REGISTERS: *mut crate::can::bx::RegisterBlock = crate::pac::$inst.as_ptr() as *mut _;
|
||||
|
||||
fn regs() -> crate::pac::can::Can {
|
||||
crate::pac::$inst
|
||||
@ -567,7 +568,7 @@ foreach_peripheral!(
|
||||
|
||||
foreach_peripheral!(
|
||||
(can, CAN) => {
|
||||
unsafe impl<'d> bxcan::FilterOwner for BxcanInstance<'d, peripherals::CAN> {
|
||||
unsafe impl<'d> crate::can::bx::FilterOwner for BxcanInstance<'d, peripherals::CAN> {
|
||||
const NUM_FILTER_BANKS: u8 = 14;
|
||||
}
|
||||
};
|
||||
@ -582,19 +583,19 @@ foreach_peripheral!(
|
||||
))] {
|
||||
// Most L4 devices and some F7 devices use the name "CAN1"
|
||||
// even if there is no "CAN2" peripheral.
|
||||
unsafe impl<'d> bxcan::FilterOwner for BxcanInstance<'d, peripherals::CAN1> {
|
||||
unsafe impl<'d> crate::can::bx::FilterOwner for BxcanInstance<'d, peripherals::CAN1> {
|
||||
const NUM_FILTER_BANKS: u8 = 14;
|
||||
}
|
||||
} else {
|
||||
unsafe impl<'d> bxcan::FilterOwner for BxcanInstance<'d, peripherals::CAN1> {
|
||||
unsafe impl<'d> crate::can::bx::FilterOwner for BxcanInstance<'d, peripherals::CAN1> {
|
||||
const NUM_FILTER_BANKS: u8 = 28;
|
||||
}
|
||||
unsafe impl<'d> bxcan::MasterInstance for BxcanInstance<'d, peripherals::CAN1> {}
|
||||
unsafe impl<'d> crate::can::bx::MasterInstance for BxcanInstance<'d, peripherals::CAN1> {}
|
||||
}
|
||||
}
|
||||
};
|
||||
(can, CAN3) => {
|
||||
unsafe impl<'d> bxcan::FilterOwner for BxcanInstance<'d, peripherals::CAN3> {
|
||||
unsafe impl<'d> crate::can::bx::FilterOwner for BxcanInstance<'d, peripherals::CAN3> {
|
||||
const NUM_FILTER_BANKS: u8 = 14;
|
||||
}
|
||||
};
|
||||
@ -607,12 +608,12 @@ trait Index {
|
||||
fn index(&self) -> usize;
|
||||
}
|
||||
|
||||
impl Index for bxcan::Mailbox {
|
||||
impl Index for crate::can::bx::Mailbox {
|
||||
fn index(&self) -> usize {
|
||||
match self {
|
||||
bxcan::Mailbox::Mailbox0 => 0,
|
||||
bxcan::Mailbox::Mailbox1 => 1,
|
||||
bxcan::Mailbox::Mailbox2 => 2,
|
||||
crate::can::bx::Mailbox::Mailbox0 => 0,
|
||||
crate::can::bx::Mailbox::Mailbox1 => 1,
|
||||
crate::can::bx::Mailbox::Mailbox2 => 2,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -3,8 +3,8 @@
|
||||
|
||||
use defmt::*;
|
||||
use embassy_executor::Spawner;
|
||||
use embassy_stm32::can::bxcan::filter::Mask32;
|
||||
use embassy_stm32::can::bxcan::{Fifo, Frame, Id, StandardId};
|
||||
use embassy_stm32::can::bx::filter::Mask32;
|
||||
use embassy_stm32::can::bx::{Fifo, Frame, Id, StandardId};
|
||||
use embassy_stm32::can::{Can, Rx0InterruptHandler, Rx1InterruptHandler, SceInterruptHandler, TxInterruptHandler};
|
||||
use embassy_stm32::peripherals::CAN;
|
||||
use embassy_stm32::{bind_interrupts, Config};
|
||||
|
@ -9,8 +9,8 @@ use common::*;
|
||||
use defmt::assert;
|
||||
use embassy_executor::Spawner;
|
||||
use embassy_stm32::bind_interrupts;
|
||||
use embassy_stm32::can::bxcan::filter::Mask32;
|
||||
use embassy_stm32::can::bxcan::{Fifo, Frame, StandardId};
|
||||
use embassy_stm32::can::bx::filter::Mask32;
|
||||
use embassy_stm32::can::bx::{Fifo, Frame, StandardId};
|
||||
use embassy_stm32::can::{Can, Rx0InterruptHandler, Rx1InterruptHandler, SceInterruptHandler, TxInterruptHandler};
|
||||
use embassy_stm32::gpio::{Input, Pull};
|
||||
use embassy_stm32::peripherals::CAN1;
|
||||
|
Loading…
Reference in New Issue
Block a user