3 Commits

Author SHA1 Message Date
Robin Mueller
72d89790c3 typo 2025-08-01 11:55:44 +02:00
Robin Mueller
3ab3c2fe13 readme fix 2025-08-01 11:55:02 +02:00
Robin Mueller
a33f71217c add pwm test app 2025-08-01 11:37:37 +02:00
532 changed files with 6604 additions and 2351 deletions

View File

@@ -13,7 +13,7 @@ jobs:
- run: cargo check --target thumbv7em-none-eabihf - run: cargo check --target thumbv7em-none-eabihf
- run: cargo check --target thumbv7em-none-eabihf --examples - run: cargo check --target thumbv7em-none-eabihf --examples
- run: cargo check -p va416xx --target thumbv7em-none-eabihf --all-features - run: cargo check -p va416xx --target thumbv7em-none-eabihf --all-features
- run: cargo check -p va416xx-hal --target thumbv7em-none-eabihf --features "defmt va41630" - run: cargo check -p va416xx-hal --target thumbv7em-none-eabihf --examples --features "defmt va41630"
test: test:
name: Run Tests name: Run Tests

View File

@@ -40,7 +40,7 @@ Some parts of the HAL implementation and the Embassy-rs support are contained in
Use the following command to have a starting `config.toml` file Use the following command to have a starting `config.toml` file
```sh ```sh
cp .cargo/config.toml.template .cargo/config.toml cp .cargo/def-config.toml .cargo/config.toml
``` ```
You then can adapt the `config.toml` to your needs. For example, you can configure runners You then can adapt the `config.toml` to your needs. For example, you can configure runners
@@ -56,27 +56,20 @@ cp -rT vscode .vscode
You can then adapt the files in `.vscode` to your needs. You can then adapt the files in `.vscode` to your needs.
## Building projects
Building an application requires the `thumbv7em-none-eabihf` cross-compiler toolchain.
If you have not installed it yet, you can do so with
```sh
rustup target add thumbv7em-none-eabihf
```
After that, you can use `cargo build` to build the development version of the crate.
For example, you can use
```sh
cargo build --example blinky
```
to build a simple blinky app.
## Flashing, running and debugging the software ## Flashing, running and debugging the software
You can use CLI or VS Code for flashing, running and debugging. You can use CLI or VS Code for flashing, running and debugging. In any case, take
care of installing the pre-requisites first.
### Pre-Requisites
1. [SEGGER J-Link tools](https://www.segger.com/downloads/jlink/) installed
2. [Rust `thumbv7em-none-eaibhf` toolchain](https://doc.rust-lang.org/nightly/rustc/platform-support/thumbv7em-none-eabi.html).
Use the following command to install it:
```sh
rustup target add thumbv7em-none-eabihf
```
### Using CLI with probe-rs ### Using CLI with probe-rs
@@ -99,12 +92,6 @@ convenience. `probe-rs` is also able to process and display `defmt` strings dire
### Using VS Code ### Using VS Code
Following tools are required:
1. [SEGGER J-Link tools](https://www.segger.com/downloads/jlink/) installed
2. [gdb-multiarch](https://packages.debian.org/sid/gdb-multiarch) or similar
cross-architecture debugger installed. All commands here assume `gdb-multiarch`.
Assuming a working debug connection to your VA416xx board, you can debug using VS Code with Assuming a working debug connection to your VA416xx board, you can debug using VS Code with
the [`Cortex-Debug` plugin](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug). the [`Cortex-Debug` plugin](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug).
Please make sure that [`objdump-multiarch` and `nm-multiarch`](https://forums.raspberrypi.com/viewtopic.php?t=333146) Please make sure that [`objdump-multiarch` and `nm-multiarch`](https://forums.raspberrypi.com/viewtopic.php?t=333146)
@@ -128,7 +115,7 @@ work properly, `objdump-multiarch` and `nm-multiarch` need to be installed.
### Using CLI with GDB and Segger J-Link Tools ### Using CLI with GDB and Segger J-Link Tools
Following tools are required: Install the following two tools first:
1. [SEGGER J-Link tools](https://www.segger.com/downloads/jlink/) installed 1. [SEGGER J-Link tools](https://www.segger.com/downloads/jlink/) installed
2. [gdb-multiarch](https://packages.debian.org/sid/gdb-multiarch) or similar 2. [gdb-multiarch](https://packages.debian.org/sid/gdb-multiarch) or similar

View File

@@ -13,6 +13,6 @@ crc = "3"
static_assertions = "1" static_assertions = "1"
[dependencies.va416xx-hal] [dependencies.va416xx-hal]
version = "0.6" version = "0.5"
features = ["va41630", "defmt"] features = ["va41630", "defmt"]
path = "../va416xx-hal" path = "../va416xx-hal"

View File

@@ -10,7 +10,7 @@ use crc::{Crc, CRC_32_ISO_HDLC};
use defmt_rtt as _; use defmt_rtt as _;
use panic_probe as _; use panic_probe as _;
use va416xx_hal::{ use va416xx_hal::{
clock::{pll_setup_delay, ClockConfigurator, ClockDivisorSelect, ClockSelect}, clock::{pll_setup_delay, ClkDivSel, ClkselSys, ClockConfigurator},
edac, edac,
nvm::Nvm, nvm::Nvm,
pac::{self, interrupt}, pac::{self, interrupt},
@@ -266,11 +266,11 @@ fn boot_app(app_sel: AppSel, cp: &cortex_m::Peripherals) -> ! {
let clkgen = unsafe { pac::Clkgen::steal() }; let clkgen = unsafe { pac::Clkgen::steal() };
clkgen clkgen
.ctrl0() .ctrl0()
.modify(|_, w| unsafe { w.clksel_sys().bits(ClockSelect::Hbo as u8) }); .modify(|_, w| unsafe { w.clksel_sys().bits(ClkselSys::Hbo as u8) });
pll_setup_delay(); pll_setup_delay();
clkgen clkgen
.ctrl0() .ctrl0()
.modify(|_, w| unsafe { w.clk_div_sel().bits(ClockDivisorSelect::Div1 as u8) }); .modify(|_, w| unsafe { w.clk_div_sel().bits(ClkDivSel::Div1 as u8) });
// Clear all interrupts set. // Clear all interrupts set.
unsafe { unsafe {
cp.NVIC.icer[0].write(0xFFFFFFFF); cp.NVIC.icer[0].write(0xFFFFFFFF);

View File

@@ -11,7 +11,7 @@ embedded-io = "0.6"
embedded-hal-async = "1" embedded-hal-async = "1"
embedded-io-async = "0.6" embedded-io-async = "0.6"
heapless = "0.9" heapless = "0.8"
defmt-rtt = "1" defmt-rtt = "1"
defmt = "1" defmt = "1"
panic-probe = { version = "1", features = ["print-defmt"] } panic-probe = { version = "1", features = ["print-defmt"] }
@@ -21,14 +21,14 @@ ringbuf = { version = "0.4", default-features = false }
nb = "1" nb = "1"
embassy-sync = "0.7" embassy-sync = "0.7"
embassy-time = "0.5" embassy-time = "0.4"
embassy-executor = { version = "0.9", features = [ embassy-executor = { version = "0.7", features = [
"arch-cortex-m", "arch-cortex-m",
"executor-thread", "executor-thread",
"executor-interrupt" "executor-interrupt"
]} ]}
va416xx-hal = { version = "0.6", path = "../../va416xx-hal", features = ["defmt"] } va416xx-hal = { version = "0.5", path = "../../va416xx-hal", features = ["defmt"] }
va416xx-embassy = { version = "0.1", path = "../../va416xx-embassy", default-features = false } va416xx-embassy = { version = "0.1", path = "../../va416xx-embassy", default-features = false }
[features] [features]

View File

@@ -42,7 +42,7 @@ use va416xx_hal::{
static QUEUE_UART_A: static_cell::ConstStaticCell<Queue<u8, 256>> = static QUEUE_UART_A: static_cell::ConstStaticCell<Queue<u8, 256>> =
static_cell::ConstStaticCell::new(Queue::new()); static_cell::ConstStaticCell::new(Queue::new());
static PRODUCER_UART_A: Mutex<RefCell<Option<Producer<u8>>>> = Mutex::new(RefCell::new(None)); static PRODUCER_UART_A: Mutex<RefCell<Option<Producer<u8, 256>>>> = Mutex::new(RefCell::new(None));
#[embassy_executor::main] #[embassy_executor::main]
async fn main(_spawner: Spawner) { async fn main(_spawner: Spawner) {

View File

@@ -9,7 +9,7 @@ defmt-rtt = "1"
defmt = "1" defmt = "1"
panic-probe = { version = "1", features = ["defmt"] } panic-probe = { version = "1", features = ["defmt"] }
va416xx-hal = { version = "0.6", path = "../../va416xx-hal", features = ["va41630"] } va416xx-hal = { version = "0.5", path = "../../va416xx-hal", features = ["va41630"] }
[dependencies.rtic] [dependencies.rtic]
version = "2" version = "2"

View File

@@ -17,7 +17,7 @@ embedded-io = "0.6"
panic-halt = "1" panic-halt = "1"
accelerometer = "0.12" accelerometer = "0.12"
va416xx-hal = { version = "0.6", path = "../../va416xx-hal", features = ["va41630", "defmt"] } va416xx-hal = { version = "0.5", path = "../../va416xx-hal", features = ["va41630", "defmt"] }
[dependencies.vorago-peb1] [dependencies.vorago-peb1]
path = "../../vorago-peb1" path = "../../vorago-peb1"

View File

@@ -14,7 +14,7 @@ use cortex_m_rt::entry;
use critical_section::Mutex; use critical_section::Mutex;
use embedded_hal::delay::DelayNs; use embedded_hal::delay::DelayNs;
use simple_examples::peb1; use simple_examples::peb1;
use va416xx_hal::dma::{Dma, DmaChannel, DmaConfig, DmaCtrlBlock}; use va416xx_hal::dma::{Dma, DmaCfg, DmaChannel, DmaCtrlBlock};
use va416xx_hal::irq_router::enable_and_init_irq_router; use va416xx_hal::irq_router::enable_and_init_irq_router;
use va416xx_hal::pac::{self, interrupt}; use va416xx_hal::pac::{self, interrupt};
use va416xx_hal::timer::CountdownTimer; use va416xx_hal::timer::CountdownTimer;
@@ -49,7 +49,7 @@ fn main() -> ! {
// statically. // statically.
let dma = Dma::new( let dma = Dma::new(
dp.dma, dp.dma,
DmaConfig::default(), DmaCfg::default(),
core::ptr::addr_of_mut!(DMA_CTRL_BLOCK), core::ptr::addr_of_mut!(DMA_CTRL_BLOCK),
) )
.expect("error creating DMA"); .expect("error creating DMA");

View File

@@ -0,0 +1,44 @@
//! Simple PWM example
//!
//! Outputs a PWM waveform on pin PG2.
#![no_main]
#![no_std]
use cortex_m_rt::entry;
use embedded_hal::pwm::SetDutyCycle;
// Import panic provider.
use panic_probe as _;
// Import logger.
use defmt_rtt as _;
use simple_examples::peb1;
use va416xx_hal::{
clock::ClockConfigurator,
pac,
pins::PinsG,
prelude::*,
pwm::{get_duty_from_percent, PwmPin},
};
#[entry]
fn main() -> ! {
defmt::println!("-- VA108xx PWM example application--");
let dp = pac::Peripherals::take().unwrap();
// Use the external clock connected to XTAL_N.
let clocks = ClockConfigurator::new(dp.clkgen)
.xtal_n_clk_with_src_freq(peb1::EXTCLK_FREQ)
.freeze()
.unwrap();
let pinsg = PinsG::new(dp.portg);
let mut pwm = PwmPin::new(pinsg.pg2, dp.tim9, &clocks, 10.kHz()).unwrap();
//let mut delay_timer = CountdownTimer::new(dp.tim0, &clocks);
//let mut current_duty_cycle = 0.0;
pwm.set_duty_cycle(get_duty_from_percent(0.5)).unwrap();
pwm.enable();
// Delete type information, increased code readibility for the rest of the code
loop {
cortex_m::asm::nop();
}
}

View File

@@ -13,7 +13,7 @@ use cortex_m_rt::entry;
use embedded_hal::spi::{Mode, SpiBus, MODE_0}; use embedded_hal::spi::{Mode, SpiBus, MODE_0};
use simple_examples::peb1; use simple_examples::peb1;
use va416xx_hal::clock::ClockConfigurator; use va416xx_hal::clock::ClockConfigurator;
use va416xx_hal::spi::{Spi, SpiClockConfig}; use va416xx_hal::spi::{Spi, SpiClkConfig};
use va416xx_hal::timer::CountdownTimer; use va416xx_hal::timer::CountdownTimer;
use va416xx_hal::{ use va416xx_hal::{
pac, pac,
@@ -52,7 +52,7 @@ fn main() -> ! {
let mut spi_cfg = SpiConfig::default() let mut spi_cfg = SpiConfig::default()
.clk_cfg( .clk_cfg(
SpiClockConfig::from_clks(&clocks, Hertz::from_raw(SPI_SPEED_KHZ)) SpiClkConfig::from_clks(&clocks, Hertz::from_raw(SPI_SPEED_KHZ))
.expect("invalid target clock"), .expect("invalid target clock"),
) )
.mode(SPI_MODE) .mode(SPI_MODE)

View File

@@ -16,7 +16,7 @@ once_cell = { version = "1", default-features = false, features = ["critical-sec
spacepackets = { version = "0.15", default-features = false, features = ["defmt"] } spacepackets = { version = "0.15", default-features = false, features = ["defmt"] }
cobs = { version = "0.4", default-features = false } cobs = { version = "0.4", default-features = false }
va416xx-hal = { version = "0.6", features = ["va41630", "defmt"], path = "../va416xx-hal" } va416xx-hal = { version = "0.5", features = ["va41630", "defmt"], path = "../va416xx-hal" }
rtic = { version = "2", features = ["thumbv7-backend"] } rtic = { version = "2", features = ["thumbv7-backend"] }
rtic-monotonics = { version = "2", features = ["cortex-m-systick"] } rtic-monotonics = { version = "2", features = ["cortex-m-systick"] }

View File

@@ -7,8 +7,8 @@ edition = "2021"
[dependencies] [dependencies]
cortex-m-rt = "0.7" cortex-m-rt = "0.7"
panic-rtt-target = { version = "0.2" } panic-rtt-target = { version = "0.1.3" }
rtt-target = { version = "0.6" } rtt-target = { version = "0.5" }
cortex-m = { version = "0.7", features = ["critical-section-single-core"] } cortex-m = { version = "0.7", features = ["critical-section-single-core"] }
embedded-hal = "1" embedded-hal = "1"
va416xx-hal = { path = "0.4", features = ["va41630"] } va416xx-hal = { path = "0.4", features = ["va41630"] }

View File

@@ -7,8 +7,8 @@ edition = "2021"
[dependencies] [dependencies]
cortex-m-rt = "0.7" cortex-m-rt = "0.7"
panic-rtt-target = { version = "0.2" } panic-rtt-target = { version = "0.1.3" }
rtt-target = { version = "0.6" } rtt-target = { version = "0.5" }
cortex-m = { version = "0.7", features = ["critical-section-single-core"] } cortex-m = { version = "0.7", features = ["critical-section-single-core"] }
embedded-hal = "1" embedded-hal = "1"
va416xx-hal = { path = "0.4", features = ["va41630"] } va416xx-hal = { path = "0.4", features = ["va41630"] }

View File

@@ -108,7 +108,7 @@ mod app {
}; };
use va416xx_hal::clock::ClockConfigurator; use va416xx_hal::clock::ClockConfigurator;
use va416xx_hal::irq_router::enable_and_init_irq_router; use va416xx_hal::irq_router::enable_and_init_irq_router;
use va416xx_hal::uart::InterruptContextTimeoutOrMaxSize; use va416xx_hal::uart::IrqContextTimeoutOrMaxSize;
use va416xx_hal::{ use va416xx_hal::{
edac, edac,
nvm::Nvm, nvm::Nvm,
@@ -131,7 +131,7 @@ mod app {
struct Local { struct Local {
uart_rx: uart::RxWithInterrupt, uart_rx: uart::RxWithInterrupt,
uart_tx: uart::Tx, uart_tx: uart::Tx,
rx_context: InterruptContextTimeoutOrMaxSize, rx_context: IrqContextTimeoutOrMaxSize,
rom_spi: Option<pac::Spi3>, rom_spi: Option<pac::Spi3>,
// We handle all TM in one task. // We handle all TM in one task.
tm_cons: DataConsumer<BUF_RB_SIZE_TM, SIZES_RB_SIZE_TM>, tm_cons: DataConsumer<BUF_RB_SIZE_TM, SIZES_RB_SIZE_TM>,
@@ -195,7 +195,7 @@ mod app {
CLOCKS.set(clocks).unwrap(); CLOCKS.set(clocks).unwrap();
let mut rx = rx.into_rx_with_irq(); let mut rx = rx.into_rx_with_irq();
let mut rx_context = InterruptContextTimeoutOrMaxSize::new(MAX_TC_FRAME_SIZE); let mut rx_context = IrqContextTimeoutOrMaxSize::new(MAX_TC_FRAME_SIZE);
rx.read_fixed_len_or_timeout_based_using_irq(&mut rx_context) rx.read_fixed_len_or_timeout_based_using_irq(&mut rx_context)
.expect("initiating UART RX failed"); .expect("initiating UART RX failed");
pus_tc_handler::spawn().unwrap(); pus_tc_handler::spawn().unwrap();

View File

@@ -11,7 +11,7 @@ keywords = ["no-std", "hal", "cortex-m", "vorago", "va416xx"]
categories = ["aerospace", "embedded", "no-std", "hardware-support"] categories = ["aerospace", "embedded", "no-std", "hardware-support"]
[dependencies] [dependencies]
vorago-shared-hal = { version = "0.2", features = ["vor4x"] } vorago-shared-periphs = { git = "https://egit.irs.uni-stuttgart.de/rust/vorago-shared-periphs.git", rev = "c8e475cbba820a4b235b46f3d284e23d72396855", features = ["vor4x"] }
va416xx-hal = { path = "../va416xx-hal" } va416xx-hal = { path = "../va416xx-hal" }
[features] [features]

View File

@@ -42,9 +42,9 @@ use va416xx_hal::{
clock::Clocks, clock::Clocks,
irq_router::enable_and_init_irq_router, irq_router::enable_and_init_irq_router,
pac::{self, interrupt}, pac::{self, interrupt},
timer::{TimInstance, TIM_IRQ_OFFSET}, timer::{TimMarker, TIM_IRQ_OFFSET},
}; };
use vorago_shared_hal::embassy::time_driver; use vorago_shared_periphs::embassy::time_driver;
/// Macro to define the IRQ handlers for the time driver. /// Macro to define the IRQ handlers for the time driver.
/// ///
@@ -95,7 +95,7 @@ embassy_time_driver_irqs!(timekeeper_irq = TIM23, alarm_irq = TIM22);
/// used TIM peripherals has to match the ID of the passed timer peripherals. Currently, this /// used TIM peripherals has to match the ID of the passed timer peripherals. Currently, this
/// can only be checked at run-time, and a run-time assertion will panic on the embassy /// can only be checked at run-time, and a run-time assertion will panic on the embassy
/// initialization in case of a missmatch. /// initialization in case of a missmatch.
pub fn init<TimekeeperTim: TimInstance, AlarmTim: TimInstance>( pub fn init<TimekeeperTim: TimMarker, AlarmTim: TimMarker>(
timekeeper: TimekeeperTim, timekeeper: TimekeeperTim,
alarm: AlarmTim, alarm: AlarmTim,
clocks: &Clocks, clocks: &Clocks,

View File

@@ -8,15 +8,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
# [unreleased] # [unreleased]
# [v0.6.0] 2025-09-03
- Use `vorago-shared-hal` dependency to provide shared peripherals.
- Bump `va416xx` to v0.5
## Changed
- Replaced `*Cfg`, `*Clk`, `*Sel` abbreviations in names by written out variant.
# [v0.5.1] 2025-03-10 # [v0.5.1] 2025-03-10
## Fixed ## Fixed
@@ -127,8 +118,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
- Initial release with basic HAL drivers - Initial release with basic HAL drivers
[unreleased]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-hal-v0.6.0...HEAD [unreleased]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-hal-v0.5.0...HEAD
[v0.6.0]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-hal-v0.5.1...va416xx-hal-v0.6.0
[v0.5.1]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-hal-v0.5.0...va416xx-hal-v0.5.1 [v0.5.1]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-hal-v0.5.0...va416xx-hal-v0.5.1
[v0.5.0]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-hal-v0.4.1...va416xx-hal-v0.5.0 [v0.5.0]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-hal-v0.4.1...va416xx-hal-v0.5.0
[v0.4.1]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-hal-v0.4.0...va416xx-hal-v0.4.1 [v0.4.1]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-hal-v0.4.0...va416xx-hal-v0.4.1

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "va416xx-hal" name = "va416xx-hal"
version = "0.6.0" version = "0.5.1"
authors = ["Robin Mueller <muellerr@irs.uni-stuttgart.de>"] authors = ["Robin Mueller <muellerr@irs.uni-stuttgart.de>"]
edition = "2021" edition = "2021"
description = "HAL for the Vorago VA416xx family of MCUs" description = "HAL for the Vorago VA416xx family of MCUs"
@@ -12,10 +12,10 @@ categories = ["embedded", "no-std", "hardware-support"]
[dependencies] [dependencies]
cortex-m = { version = "0.7", features = ["critical-section-single-core"] } cortex-m = { version = "0.7", features = ["critical-section-single-core"] }
va416xx = { version = "0.5", features = ["critical-section"], default-features = false } va416xx = { version = "0.4", features = ["critical-section"], default-features = false }
derive-mmio = "0.6.1" derive-mmio = { git = "https://github.com/knurling-rs/derive-mmio.git", version = "0.6" }
static_assertions = "1.1" static_assertions = "1.1"
vorago-shared-hal = { version = "0.2", features = ["vor4x"] } vorago-shared-periphs = { git = "https://egit.irs.uni-stuttgart.de/rust/vorago-shared-periphs.git", rev = "c8e475cbba820a4b235b46f3d284e23d72396855", features = ["vor4x"] }
libm = "0.2" libm = "0.2"
nb = "1" nb = "1"
@@ -23,7 +23,7 @@ embedded-hal = "1"
num_enum = { version = "0.7", default-features = false } num_enum = { version = "0.7", default-features = false }
bitflags = "2" bitflags = "2"
bitbybit = "1.3" bitbybit = "1.3"
arbitrary-int = "2" arbitrary-int = "1.3"
fugit = "0.3" fugit = "0.3"
embedded-can = "0.4" embedded-can = "0.4"
embassy-sync = "0.7" embassy-sync = "0.7"
@@ -35,13 +35,13 @@ defmt = { version = "1", optional = true }
default = ["rt", "revb"] default = ["rt", "revb"]
rt = ["va416xx/rt"] rt = ["va416xx/rt"]
alloc = [] alloc = []
defmt = ["dep:defmt", "fugit/defmt", "vorago-shared-hal/defmt"] defmt = ["dep:defmt", "fugit/defmt", "vorago-shared-periphs/defmt"]
va41630 = ["device-selected"] va41630 = ["device-selected"]
va41620 = ["device-selected"] va41620 = ["device-selected"]
va41629 = ["device-selected"] va41629 = ["device-selected"]
va41628 = ["device-selected", "vorago-shared-hal/va41628"] va41628 = ["device-selected", "vorago-shared-periphs/va41628"]
device-selected = [] device-selected = []
revb = [] revb = []

View File

@@ -10,7 +10,7 @@ use crate::clock::Clocks;
use crate::pac; use crate::pac;
use crate::time::Hertz; use crate::time::Hertz;
use num_enum::{IntoPrimitive, TryFromPrimitive}; use num_enum::{IntoPrimitive, TryFromPrimitive};
use vorago_shared_hal::{enable_peripheral_clock, PeripheralSelect}; use vorago_shared_periphs::{enable_peripheral_clock, PeripheralSelect};
pub const ADC_MIN_CLK: Hertz = Hertz::from_raw(2_000_000); pub const ADC_MIN_CLK: Hertz = Hertz::from_raw(2_000_000);
pub const ADC_MAX_CLK: Hertz = Hertz::from_raw(12_500_000); pub const ADC_MAX_CLK: Hertz = Hertz::from_raw(12_500_000);
@@ -54,7 +54,6 @@ pub enum ChannelSelect {
bitflags::bitflags! { bitflags::bitflags! {
/// This structure is used by the ADC multi-select API to /// This structure is used by the ADC multi-select API to
/// allow selecting multiple channels in a convenient manner. /// allow selecting multiple channels in a convenient manner.
#[derive(Debug)]
pub struct MultiChannelSelect: u16 { pub struct MultiChannelSelect: u16 {
const AnIn0 = 1; const AnIn0 = 1;
const AnIn1 = 1 << 1; const AnIn1 = 1 << 1;

View File

@@ -102,7 +102,7 @@ pub fn on_interrupt_can(
super::regs::CanInterruptId::Buffer(idx) => { super::regs::CanInterruptId::Buffer(idx) => {
let mut channel = unsafe { CanChannelLowLevel::steal_unchecked(id, idx) }; let mut channel = unsafe { CanChannelLowLevel::steal_unchecked(id, idx) };
let status = channel.read_state(); let status = channel.read_state();
if let Err(e) = status { if status.is_err() {
let mut clr = InterruptClear::new_with_raw_value(0); let mut clr = InterruptClear::new_with_raw_value(0);
clr.set_buffer(idx, true); clr.set_buffer(idx, true);
regs.write_iclr(clr); regs.write_iclr(clr);
@@ -110,7 +110,7 @@ pub fn on_interrupt_can(
val.set_buffer(idx, false); val.set_buffer(idx, false);
val val
}); });
return Err(InterruptError::InvalidStatus(e)); return Err(InterruptError::InvalidStatus(status.unwrap_err()));
} }
let buf_state = status.unwrap(); let buf_state = status.unwrap();
if buf_state == BufferState::TxNotActive { if buf_state == BufferState::TxNotActive {

View File

@@ -1,10 +1,9 @@
use arbitrary_int::{prelude::*, u11, u15, u3, u4}; use arbitrary_int::{u11, u15, u3, u4, Number};
use embedded_can::Frame; use embedded_can::Frame;
use super::{ use super::{
regs::{ regs::{
self, BaseId, BufStatusAndControl, BufferState, ExtendedId, MmioCanMessageBuffer, self, BaseId, BufStatusAndControl, BufferState, ExtendedId, MmioCanMsgBuf, TwoBytesData,
TwoBytesData,
}, },
CanFrame, CanFrameNormal, CanFrameRtr, CanId, InvalidBufferIndexError, CanFrame, CanFrameNormal, CanFrameRtr, CanId, InvalidBufferIndexError,
}; };
@@ -13,7 +12,7 @@ pub struct CanChannelLowLevel {
id: CanId, id: CanId,
/// Message buffer index. /// Message buffer index.
idx: usize, idx: usize,
msg_buf: MmioCanMessageBuffer<'static>, msg_buf: MmioCanMsgBuf<'static>,
} }
impl core::fmt::Debug for CanChannelLowLevel { impl core::fmt::Debug for CanChannelLowLevel {

View File

@@ -19,11 +19,11 @@
//! - [CAN example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/embassy/src/bin/can.rs) //! - [CAN example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/embassy/src/bin/can.rs)
use core::sync::atomic::AtomicBool; use core::sync::atomic::AtomicBool;
use arbitrary_int::{prelude::*, u11, u15, u2, u3, u4, u7}; use arbitrary_int::{u11, u15, u2, u3, u4, u7, Number};
use embedded_can::Frame; use embedded_can::Frame;
use ll::CanChannelLowLevel; use ll::CanChannelLowLevel;
use regs::{BaseId, BufferState, Control, MmioCan, TimingConfig}; use regs::{BaseId, BufferState, Control, MmioCan, TimingConfig};
use vorago_shared_hal::enable_nvic_interrupt; use vorago_shared_periphs::enable_nvic_interrupt;
use crate::{clock::Clocks, enable_peripheral_clock, time::Hertz, PeripheralSelect}; use crate::{clock::Clocks, enable_peripheral_clock, time::Hertz, PeripheralSelect};
use libm::roundf; use libm::roundf;
@@ -50,7 +50,6 @@ pub const MAX_BITRATE_DEVIATION: f32 = 0.005;
static CHANNELS_TAKEN: [AtomicBool; 2] = [AtomicBool::new(false), AtomicBool::new(false)]; static CHANNELS_TAKEN: [AtomicBool; 2] = [AtomicBool::new(false), AtomicBool::new(false)];
#[derive(Debug, PartialEq, Eq, Clone, Copy)] #[derive(Debug, PartialEq, Eq, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum CanId { pub enum CanId {
Can0 = 0, Can0 = 0,
Can1 = 1, Can1 = 1,
@@ -86,7 +85,6 @@ pub const fn calculate_sample_point(tseg1: u8, tseg2: u8) -> f32 {
} }
#[derive(Debug, Clone, Copy)] #[derive(Debug, Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub struct ClockConfig { pub struct ClockConfig {
prescaler: u8, prescaler: u8,
tseg1: u8, tseg1: u8,
@@ -282,19 +280,19 @@ pub const fn calculate_bitrate_deviation(actual_bitrate: f32, target_bitrate: He
(actual_bitrate - target_bitrate.raw() as f32).abs() / target_bitrate.raw() as f32 (actual_bitrate - target_bitrate.raw() as f32).abs() / target_bitrate.raw() as f32
} }
pub trait CanInstance { pub trait CanMarker {
const ID: CanId; const ID: CanId;
const IRQ: va416xx::Interrupt; const IRQ: va416xx::Interrupt;
const PERIPH_SEL: PeripheralSelect; const PERIPH_SEL: PeripheralSelect;
} }
impl CanInstance for va416xx::Can0 { impl CanMarker for va416xx::Can0 {
const ID: CanId = CanId::Can0; const ID: CanId = CanId::Can0;
const IRQ: va416xx::Interrupt = va416xx::Interrupt::CAN0; const IRQ: va416xx::Interrupt = va416xx::Interrupt::CAN0;
const PERIPH_SEL: PeripheralSelect = PeripheralSelect::Can0; const PERIPH_SEL: PeripheralSelect = PeripheralSelect::Can0;
} }
impl CanInstance for va416xx::Can1 { impl CanMarker for va416xx::Can1 {
const ID: CanId = CanId::Can1; const ID: CanId = CanId::Can1;
const IRQ: va416xx::Interrupt = va416xx::Interrupt::CAN1; const IRQ: va416xx::Interrupt = va416xx::Interrupt::CAN1;
const PERIPH_SEL: PeripheralSelect = PeripheralSelect::Can1; const PERIPH_SEL: PeripheralSelect = PeripheralSelect::Can1;
@@ -312,14 +310,12 @@ pub struct InvalidSjwError(u8);
#[derive(Debug, thiserror::Error)] #[derive(Debug, thiserror::Error)]
#[error("invalid sample point {sample_point}")] #[error("invalid sample point {sample_point}")]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub struct InvalidSamplePointError { pub struct InvalidSamplePointError {
/// Sample point, should be larger than 0.5 (50 %) but was not. /// Sample point, should be larger than 0.5 (50 %) but was not.
sample_point: f32, sample_point: f32,
} }
#[derive(Debug, thiserror::Error)] #[derive(Debug, thiserror::Error)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum ClockConfigError { pub enum ClockConfigError {
#[error("invalid sjw: {0}")] #[error("invalid sjw: {0}")]
InvalidSjw(#[from] InvalidSjwError), InvalidSjw(#[from] InvalidSjwError),
@@ -346,7 +342,7 @@ pub struct Can {
} }
impl Can { impl Can {
pub fn new<CanI: CanInstance>(_can: CanI, clk_config: ClockConfig) -> Self { pub fn new<CanI: CanMarker>(_can: CanI, clk_config: ClockConfig) -> Self {
enable_peripheral_clock(CanI::PERIPH_SEL); enable_peripheral_clock(CanI::PERIPH_SEL);
let id = CanI::ID; let id = CanI::ID;
let mut regs = if id == CanId::Can0 { let mut regs = if id == CanId::Can0 {

View File

@@ -1,7 +1,7 @@
//! Custom register definitions for the CAN register block to circumvent PAC API / SVD //! Custom register definitions for the CAN register block to circumvent PAC API / SVD
//! shortcomings. //! shortcomings.
use arbitrary_int::{prelude::*, u11, u15, u2, u3, u4, u6, u7}; use arbitrary_int::{u11, u15, u2, u3, u4, u6, u7, Number};
pub const CAN_0_BASE: usize = 0x4001_4000; pub const CAN_0_BASE: usize = 0x4001_4000;
pub const CAN_1_BASE: usize = 0x4001_4400; pub const CAN_1_BASE: usize = 0x4001_4400;
@@ -37,7 +37,8 @@ pub enum BufferState {
} }
/// Status control register for individual message buffers. /// Status control register for individual message buffers.
#[bitbybit::bitfield(u32, default = 0x0, debug, defmt_fields(feature = "defmt"))] #[bitbybit::bitfield(u32, default = 0x0)]
#[derive(Debug)]
pub struct BufStatusAndControl { pub struct BufStatusAndControl {
/// Data length code. /// Data length code.
#[bits(12..=15, rw)] #[bits(12..=15, rw)]
@@ -64,7 +65,8 @@ impl Timestamp {
} }
} }
#[bitbybit::bitfield(u32, default = 0x0, debug, defmt_bitfields(feature = "defmt"))] #[bitbybit::bitfield(u32, default = 0x0)]
#[derive(Debug)]
pub struct TwoBytesData { pub struct TwoBytesData {
#[bits(0..=7, rw)] #[bits(0..=7, rw)]
data_lower_byte: u8, data_lower_byte: u8,
@@ -74,7 +76,7 @@ pub struct TwoBytesData {
#[derive(derive_mmio::Mmio)] #[derive(derive_mmio::Mmio)]
#[repr(C)] #[repr(C)]
pub struct CanMessageBuffer { pub struct CanMsgBuf {
stat_ctrl: BufStatusAndControl, stat_ctrl: BufStatusAndControl,
timestamp: Timestamp, timestamp: Timestamp,
data3: TwoBytesData, data3: TwoBytesData,
@@ -85,9 +87,9 @@ pub struct CanMessageBuffer {
id1: BaseId, id1: BaseId,
} }
static_assertions::const_assert_eq!(core::mem::size_of::<CanMessageBuffer>(), 0x20); static_assertions::const_assert_eq!(core::mem::size_of::<CanMsgBuf>(), 0x20);
impl MmioCanMessageBuffer<'_> { impl MmioCanMsgBuf<'_> {
pub fn reset(&mut self) { pub fn reset(&mut self) {
self.write_stat_ctrl(BufStatusAndControl::new_with_raw_value(0)); self.write_stat_ctrl(BufStatusAndControl::new_with_raw_value(0));
self.write_timestamp(Timestamp::new(0)); self.write_timestamp(Timestamp::new(0));
@@ -102,7 +104,6 @@ impl MmioCanMessageBuffer<'_> {
#[bitbybit::bitenum(u1, exhaustive = true)] #[bitbybit::bitenum(u1, exhaustive = true)]
#[derive(Debug)] #[derive(Debug)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum PinLogicLevel { pub enum PinLogicLevel {
DominantIsZero = 0b0, DominantIsZero = 0b0,
DominantIsOne = 0b1, DominantIsOne = 0b1,
@@ -110,7 +111,6 @@ pub enum PinLogicLevel {
#[bitbybit::bitenum(u1, exhaustive = true)] #[bitbybit::bitenum(u1, exhaustive = true)]
#[derive(Debug)] #[derive(Debug)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum ErrorInterruptType { pub enum ErrorInterruptType {
/// EIPND bit is set on every error. /// EIPND bit is set on every error.
EveryError = 0b0, EveryError = 0b0,
@@ -121,13 +121,12 @@ pub enum ErrorInterruptType {
#[bitbybit::bitenum(u1, exhaustive = true)] #[bitbybit::bitenum(u1, exhaustive = true)]
#[derive(Debug)] #[derive(Debug)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum DataDirection { pub enum DataDirection {
FirstByteAtHighestAddr = 0b0, FirstByteAtHighestAddr = 0b0,
LastByteAtHighestAddr = 0b1, LastByteAtHighestAddr = 0b1,
} }
#[bitbybit::bitfield(u32, debug, defmt_fields(feature = "defmt"))] #[bitbybit::bitfield(u32)]
pub struct Control { pub struct Control {
#[bit(11, rw)] #[bit(11, rw)]
error_interrupt_type: ErrorInterruptType, error_interrupt_type: ErrorInterruptType,
@@ -161,7 +160,8 @@ pub struct Control {
enable: bool, enable: bool,
} }
#[bitbybit::bitfield(u32, default = 0x0, debug, defmt_bitfields(feature = "defmt"))] #[bitbybit::bitfield(u32, default = 0x0)]
#[derive(Debug)]
pub struct TimingConfig { pub struct TimingConfig {
#[bits(0..=2, rw)] #[bits(0..=2, rw)]
tseg2: u3, tseg2: u3,
@@ -209,7 +209,9 @@ pub enum CanInterruptId {
Buffer(usize), Buffer(usize),
} }
#[bitbybit::bitfield(u32, debug, defmt_bitfields(feature = "defmt"))] #[bitbybit::bitfield(u32)]
#[derive(Debug)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub struct StatusPending { pub struct StatusPending {
#[bits(5..=7, r)] #[bits(5..=7, r)]
ns: u3, ns: u3,
@@ -235,7 +237,8 @@ impl StatusPending {
} }
} }
#[bitbybit::bitfield(u32, debug, defmt_bitfields(feature = "defmt"))] #[bitbybit::bitfield(u32)]
#[derive(Debug)]
pub struct ErrorCounter { pub struct ErrorCounter {
#[bits(0..=7, r)] #[bits(0..=7, r)]
transmit: u8, transmit: u8,
@@ -244,7 +247,8 @@ pub struct ErrorCounter {
} }
/// This register is unused for standard frames. /// This register is unused for standard frames.
#[bitbybit::bitfield(u32, default = 0x0, debug, defmt_bitfields(feature = "defmt"))] #[bitbybit::bitfield(u32, default = 0x0)]
#[derive(Debug)]
pub struct ExtendedId { pub struct ExtendedId {
/// Mask for ID bits \[14:0\] of extended frames. /// Mask for ID bits \[14:0\] of extended frames.
#[bits(1..=15, rw)] #[bits(1..=15, rw)]
@@ -254,7 +258,8 @@ pub struct ExtendedId {
xrtr: bool, xrtr: bool,
} }
#[bitbybit::bitfield(u32, default = 0x0, debug, defmt_bitfields(feature = "defmt"))] #[bitbybit::bitfield(u32, default = 0x0)]
#[derive(Debug)]
pub struct BaseId { pub struct BaseId {
/// This will contain ID\[10:0\] for standard frames and bits \[28:18\] for extended frames. /// This will contain ID\[10:0\] for standard frames and bits \[28:18\] for extended frames.
#[bits(5..=15, rw)] #[bits(5..=15, rw)]
@@ -292,7 +297,7 @@ pub enum ErrorFieldId {
Crc = 0b1111, Crc = 0b1111,
} }
#[bitbybit::bitfield(u32, debug, defmt_bitfields(feature = "defmt"))] #[bitbybit::bitfield(u32)]
pub struct DiagnosticRegister { pub struct DiagnosticRegister {
/// Shows the output value on the CAN TX pin at the time of the error. /// Shows the output value on the CAN TX pin at the time of the error.
#[bit(14, r)] #[bit(14, r)]
@@ -317,15 +322,46 @@ pub struct DiagnosticRegister {
efid: ErrorFieldId, efid: ErrorFieldId,
} }
impl core::fmt::Debug for DiagnosticRegister {
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
f.debug_struct("DiagnosticRegister")
.field("efid", &self.efid())
.field("ebid", &self.ebid())
.field("txe", &self.txe())
.field("stuff", &self.stuff())
.field("crc", &self.crc())
.field("mon", &self.mon())
.field("drive", &self.drive())
.finish()
}
}
#[cfg(feature = "defmt")]
impl defmt::Format for DiagnosticRegister {
fn format(&self, fmt: defmt::Formatter) {
defmt::write!(
fmt,
"DiagnosticRegister {{ efid: {}, ebid: {}, txe: {}, stuff: {}, crc: {}, mon: {}, drive: {} }}",
self.efid(),
self.ebid(),
self.txe(),
self.stuff(),
self.crc(),
self.mon(),
self.drive()
)
}
}
#[derive(derive_mmio::Mmio)] #[derive(derive_mmio::Mmio)]
#[mmio(const_inner)] #[mmio(const_inner)]
#[repr(C)] #[repr(C)]
pub struct Can { pub struct Can {
#[mmio(Inner)] #[mmio(Inner)]
cmbs: [CanMessageBuffer; 15], cmbs: [CanMsgBuf; 15],
/// Hidden CAN message buffer. Only allowed to be used internally by the peripheral. /// Hidden CAN message buffer. Only allowed to be used internally by the peripheral.
#[mmio(Inner)] #[mmio(Inner)]
_hcmb: CanMessageBuffer, _hcmb: CanMsgBuf,
control: Control, control: Control,
timing: TimingConfig, timing: TimingConfig,
/// Global mask extension used for buffers 0 to 13. /// Global mask extension used for buffers 0 to 13.

View File

@@ -15,14 +15,14 @@ use crate::adc::ADC_MAX_CLK;
use crate::pac; use crate::pac;
use crate::time::Hertz; use crate::time::Hertz;
pub use vorago_shared_hal::clock::{Clocks, HBO_FREQ}; pub use vorago_shared_periphs::clock::{Clocks, HBO_FREQ};
use vorago_shared_hal::{enable_peripheral_clock, PeripheralSelect}; use vorago_shared_periphs::{enable_peripheral_clock, PeripheralSelect};
pub const XTAL_OSC_TSTART_MS: u32 = 15; pub const XTAL_OSC_TSTART_MS: u32 = 15;
#[derive(Debug, PartialEq, Eq)] #[derive(Debug, PartialEq, Eq)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))] #[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum FilterClockSelect { pub enum FilterClkSel {
SysClk = 0, SysClk = 0,
Clk1 = 1, Clk1 = 1,
Clk2 = 2, Clk2 = 2,
@@ -36,7 +36,7 @@ pub enum FilterClockSelect {
/// Refer to chapter 8 (p.57) of the programmers guide for detailed information. /// Refer to chapter 8 (p.57) of the programmers guide for detailed information.
#[derive(Debug, Copy, Clone, PartialEq, Eq)] #[derive(Debug, Copy, Clone, PartialEq, Eq)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))] #[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum ClockSelect { pub enum ClkselSys {
// Internal Heart-Beat Osciallator. Not tightly controlled (+/-20 %). Not recommended as the regular clock! // Internal Heart-Beat Osciallator. Not tightly controlled (+/-20 %). Not recommended as the regular clock!
Hbo = 0b00, Hbo = 0b00,
// External clock signal on XTAL_N line, 1-100 MHz // External clock signal on XTAL_N line, 1-100 MHz
@@ -55,7 +55,7 @@ pub enum ClockSelect {
/// Refer to chapter 8 (p.57) of the programmers guide for detailed information. /// Refer to chapter 8 (p.57) of the programmers guide for detailed information.
#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)] #[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))] #[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum ReferenceClockSelect { pub enum RefClkSel {
#[default] #[default]
None = 0b00, None = 0b00,
XtalOsc = 0b01, XtalOsc = 0b01,
@@ -64,7 +64,7 @@ pub enum ReferenceClockSelect {
#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)] #[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))] #[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum ClockDivisorSelect { pub enum ClkDivSel {
#[default] #[default]
Div1 = 0b00, Div1 = 0b00,
Div2 = 0b01, Div2 = 0b01,
@@ -74,7 +74,7 @@ pub enum ClockDivisorSelect {
#[derive(Debug, Copy, Clone, PartialEq, Eq)] #[derive(Debug, Copy, Clone, PartialEq, Eq)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))] #[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum AdcClockDivisorSelect { pub enum AdcClkDivSel {
Div8 = 0b00, Div8 = 0b00,
Div4 = 0b01, Div4 = 0b01,
Div2 = 0b10, Div2 = 0b10,
@@ -83,7 +83,7 @@ pub enum AdcClockDivisorSelect {
#[derive(Debug, Default, Copy, Clone, PartialEq, Eq)] #[derive(Debug, Default, Copy, Clone, PartialEq, Eq)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))] #[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub struct PllConfig { pub struct PllCfg {
/// Reference clock divider. /// Reference clock divider.
pub clkr: u8, pub clkr: u8,
/// Clock divider on feedback path /// Clock divider on feedback path
@@ -94,13 +94,12 @@ pub struct PllConfig {
pub bwadj: u8, pub bwadj: u8,
} }
#[inline] pub fn clk_after_div(clk: Hertz, div_sel: ClkDivSel) -> Hertz {
pub const fn clock_after_division(clk: Hertz, div_sel: ClockDivisorSelect) -> Hertz {
match div_sel { match div_sel {
ClockDivisorSelect::Div1 => clk, ClkDivSel::Div1 => clk,
ClockDivisorSelect::Div2 => Hertz::from_raw(clk.raw() / 2), ClkDivSel::Div2 => clk / 2,
ClockDivisorSelect::Div4 => Hertz::from_raw(clk.raw() / 4), ClkDivSel::Div4 => clk / 4,
ClockDivisorSelect::Div8 => Hertz::from_raw(clk.raw() / 8), ClkDivSel::Div8 => clk / 8,
} }
} }
@@ -119,9 +118,9 @@ impl ClkgenExt for pac::Clkgen {
fn constrain(self) -> ClockConfigurator { fn constrain(self) -> ClockConfigurator {
ClockConfigurator { ClockConfigurator {
source_clk: None, source_clk: None,
ref_clk_sel: ReferenceClockSelect::None, ref_clk_sel: RefClkSel::None,
clksel_sys: ClockSelect::Hbo, clksel_sys: ClkselSys::Hbo,
clk_div_sel: ClockDivisorSelect::Div1, clk_div_sel: ClkDivSel::Div1,
clk_lost_detection: false, clk_lost_detection: false,
pll_lock_lost_detection: false, pll_lock_lost_detection: false,
pll_cfg: None, pll_cfg: None,
@@ -132,11 +131,11 @@ impl ClkgenExt for pac::Clkgen {
#[derive(Debug, PartialEq, Eq)] #[derive(Debug, PartialEq, Eq)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))] #[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub struct ClockSourceFrequencyNotSet; pub struct ClkSourceFreqNotSet;
#[derive(Debug, PartialEq, Eq)] #[derive(Debug, PartialEq, Eq)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))] #[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub enum ClockConfigError { pub enum ClkCfgError {
ClkSourceFreqNotSet, ClkSourceFreqNotSet,
PllConfigNotSet, PllConfigNotSet,
PllInitError, PllInitError,
@@ -144,13 +143,13 @@ pub enum ClockConfigError {
} }
pub struct ClockConfigurator { pub struct ClockConfigurator {
ref_clk_sel: ReferenceClockSelect, ref_clk_sel: RefClkSel,
clksel_sys: ClockSelect, clksel_sys: ClkselSys,
clk_div_sel: ClockDivisorSelect, clk_div_sel: ClkDivSel,
/// The source clock frequency which is either an external clock connected to XTAL_N, or a /// The source clock frequency which is either an external clock connected to XTAL_N, or a
/// crystal connected to the XTAL_OSC input. /// crystal connected to the XTAL_OSC input.
source_clk: Option<Hertz>, source_clk: Option<Hertz>,
pll_cfg: Option<PllConfig>, pll_cfg: Option<PllCfg>,
clk_lost_detection: bool, clk_lost_detection: bool,
/// Feature only works on revision B of the board. /// Feature only works on revision B of the board.
#[cfg(feature = "revb")] #[cfg(feature = "revb")]
@@ -177,9 +176,9 @@ impl ClockConfigurator {
pub fn new(clkgen: pac::Clkgen) -> Self { pub fn new(clkgen: pac::Clkgen) -> Self {
ClockConfigurator { ClockConfigurator {
source_clk: None, source_clk: None,
ref_clk_sel: ReferenceClockSelect::None, ref_clk_sel: RefClkSel::None,
clksel_sys: ClockSelect::Hbo, clksel_sys: ClkselSys::Hbo,
clk_div_sel: ClockDivisorSelect::Div1, clk_div_sel: ClkDivSel::Div1,
clk_lost_detection: false, clk_lost_detection: false,
pll_lock_lost_detection: false, pll_lock_lost_detection: false,
pll_cfg: None, pll_cfg: None,
@@ -208,8 +207,8 @@ impl ClockConfigurator {
/// It sets the internal configuration to [ClkselSys::XtalN] and [RefClkSel::XtalN]. /// It sets the internal configuration to [ClkselSys::XtalN] and [RefClkSel::XtalN].
#[inline] #[inline]
pub fn xtal_n_clk(mut self) -> Self { pub fn xtal_n_clk(mut self) -> Self {
self.clksel_sys = ClockSelect::XtalN; self.clksel_sys = ClkselSys::XtalN;
self.ref_clk_sel = ReferenceClockSelect::XtalN; self.ref_clk_sel = RefClkSel::XtalN;
self self
} }
@@ -220,19 +219,19 @@ impl ClockConfigurator {
} }
#[inline] #[inline]
pub fn clksel_sys(mut self, clksel_sys: ClockSelect) -> Self { pub fn clksel_sys(mut self, clksel_sys: ClkselSys) -> Self {
self.clksel_sys = clksel_sys; self.clksel_sys = clksel_sys;
self self
} }
#[inline] #[inline]
pub fn pll_cfg(mut self, pll_cfg: PllConfig) -> Self { pub fn pll_cfg(mut self, pll_cfg: PllCfg) -> Self {
self.pll_cfg = Some(pll_cfg); self.pll_cfg = Some(pll_cfg);
self self
} }
#[inline] #[inline]
pub fn ref_clk_sel(mut self, ref_clk_sel: ReferenceClockSelect) -> Self { pub fn ref_clk_sel(mut self, ref_clk_sel: RefClkSel) -> Self {
self.ref_clk_sel = ref_clk_sel; self.ref_clk_sel = ref_clk_sel;
self self
} }
@@ -246,22 +245,19 @@ impl ClockConfigurator {
/// might have had a reason for those, so I am going to keep them. Chances are, this /// might have had a reason for those, so I am going to keep them. Chances are, this
/// process only has to be performed once, and it does not matter if it takes a few /// process only has to be performed once, and it does not matter if it takes a few
/// microseconds or milliseconds longer. /// microseconds or milliseconds longer.
pub fn freeze(self) -> Result<Clocks, ClockConfigError> { pub fn freeze(self) -> Result<Clocks, ClkCfgError> {
// Sanitize configuration. // Sanitize configuration.
if self.source_clk.is_none() { if self.source_clk.is_none() {
return Err(ClockConfigError::ClkSourceFreqNotSet); return Err(ClkCfgError::ClkSourceFreqNotSet);
} }
if self.clksel_sys == ClockSelect::XtalOsc if self.clksel_sys == ClkselSys::XtalOsc && self.ref_clk_sel != RefClkSel::XtalOsc {
&& self.ref_clk_sel != ReferenceClockSelect::XtalOsc return Err(ClkCfgError::InconsistentCfg);
{
return Err(ClockConfigError::InconsistentCfg);
} }
if self.clksel_sys == ClockSelect::XtalN && self.ref_clk_sel != ReferenceClockSelect::XtalN if self.clksel_sys == ClkselSys::XtalN && self.ref_clk_sel != RefClkSel::XtalN {
{ return Err(ClkCfgError::InconsistentCfg);
return Err(ClockConfigError::InconsistentCfg);
} }
if self.clksel_sys == ClockSelect::Pll && self.pll_cfg.is_none() { if self.clksel_sys == ClkselSys::Pll && self.pll_cfg.is_none() {
return Err(ClockConfigError::PllConfigNotSet); return Err(ClkCfgError::PllConfigNotSet);
} }
enable_peripheral_clock(PeripheralSelect::Clkgen); enable_peripheral_clock(PeripheralSelect::Clkgen);
@@ -272,11 +268,11 @@ impl ClockConfigurator {
// Therefore, we do it here as well. // Therefore, we do it here as well.
self.clkgen self.clkgen
.ctrl0() .ctrl0()
.modify(|_, w| unsafe { w.clksel_sys().bits(ClockSelect::Hbo as u8) }); .modify(|_, w| unsafe { w.clksel_sys().bits(ClkselSys::Hbo as u8) });
pll_setup_delay(); pll_setup_delay();
self.clkgen self.clkgen
.ctrl0() .ctrl0()
.modify(|_, w| unsafe { w.clk_div_sel().bits(ClockDivisorSelect::Div1 as u8) }); .modify(|_, w| unsafe { w.clk_div_sel().bits(ClkDivSel::Div1 as u8) });
// Set up oscillator and PLL input clock. // Set up oscillator and PLL input clock.
self.clkgen self.clkgen
@@ -288,12 +284,12 @@ impl ClockConfigurator {
w w
}); });
match self.ref_clk_sel { match self.ref_clk_sel {
ReferenceClockSelect::None => pll_setup_delay(), RefClkSel::None => pll_setup_delay(),
ReferenceClockSelect::XtalOsc => { RefClkSel::XtalOsc => {
self.clkgen.ctrl1().modify(|_, w| w.xtal_en().set_bit()); self.clkgen.ctrl1().modify(|_, w| w.xtal_en().set_bit());
hbo_clock_delay_ms(XTAL_OSC_TSTART_MS); hbo_clock_delay_ms(XTAL_OSC_TSTART_MS);
} }
ReferenceClockSelect::XtalN => { RefClkSel::XtalN => {
self.clkgen.ctrl1().modify(|_, w| w.xtal_n_en().set_bit()); self.clkgen.ctrl1().modify(|_, w| w.xtal_n_en().set_bit());
pll_setup_delay() pll_setup_delay()
} }
@@ -344,7 +340,7 @@ impl ClockConfigurator {
// This is what the HAL does. We could continue, but then we would at least // This is what the HAL does. We could continue, but then we would at least
// have to somehow report a partial error.. Chances are, the user does not // have to somehow report a partial error.. Chances are, the user does not
// want to continue with a broken PLL clock. // want to continue with a broken PLL clock.
return Err(ClockConfigError::PllInitError); return Err(ClkCfgError::PllInitError);
} }
} }
} }
@@ -364,7 +360,7 @@ impl ClockConfigurator {
self.clkgen self.clkgen
.ctrl0() .ctrl0()
.modify(|_, w| unsafe { w.clk_div_sel().bits(self.clk_div_sel as u8) }); .modify(|_, w| unsafe { w.clk_div_sel().bits(self.clk_div_sel as u8) });
final_sysclk = clock_after_division(final_sysclk, self.clk_div_sel); final_sysclk = clk_after_div(final_sysclk, self.clk_div_sel);
// The HAL does this. I don't know why.. // The HAL does this. I don't know why..
pll_setup_delay(); pll_setup_delay();
@@ -387,14 +383,14 @@ impl ClockConfigurator {
// NOTE: Not using divide by 1 or /2 ratio in REVA silicon because of triggering issue // NOTE: Not using divide by 1 or /2 ratio in REVA silicon because of triggering issue
// For this reason, keep SYSCLK above 8MHz to have the ADC /4 ratio in range) // For this reason, keep SYSCLK above 8MHz to have the ADC /4 ratio in range)
if final_sysclk.raw() <= ADC_MAX_CLK.raw() * 4 { if final_sysclk.raw() <= ADC_MAX_CLK.raw() * 4 {
self.clkgen.ctrl1().modify(|_, w| unsafe { self.clkgen
w.adc_clk_div_sel().bits(AdcClockDivisorSelect::Div4 as u8) .ctrl1()
}); .modify(|_, w| unsafe { w.adc_clk_div_sel().bits(AdcClkDivSel::Div4 as u8) });
final_sysclk / 4 final_sysclk / 4
} else { } else {
self.clkgen.ctrl1().modify(|_, w| unsafe { self.clkgen
w.adc_clk_div_sel().bits(AdcClockDivisorSelect::Div8 as u8) .ctrl1()
}); .modify(|_, w| unsafe { w.adc_clk_div_sel().bits(AdcClkDivSel::Div8 as u8) });
final_sysclk / 8 final_sysclk / 8
} }
} }
@@ -437,7 +433,7 @@ mod tests {
#[test] #[test]
fn test_basic_div() { fn test_basic_div() {
assert_eq!( assert_eq!(
clock_after_division(Hertz::from_raw(10_000_000), super::ClockDivisorSelect::Div2), clk_after_div(Hertz::from_raw(10_000_000), super::ClkDivSel::Div2),
Hertz::from_raw(5_000_000) Hertz::from_raw(5_000_000)
); );
} }

View File

@@ -5,7 +5,7 @@
//! - [ADC and DAC example](https://github.com/us-irs/va416xx-rs/blob/main/examples/simple/examples/dac-adc.rs) //! - [ADC and DAC example](https://github.com/us-irs/va416xx-rs/blob/main/examples/simple/examples/dac-adc.rs)
use core::ops::Deref; use core::ops::Deref;
use vorago_shared_hal::{ use vorago_shared_periphs::{
disable_peripheral_clock, enable_peripheral_clock, reset_peripheral_for_cycles, disable_peripheral_clock, enable_peripheral_clock, reset_peripheral_for_cycles,
PeripheralSelect, PeripheralSelect,
}; };
@@ -16,13 +16,13 @@ pub type DacRegisterBlock = pac::dac0::RegisterBlock;
/// Common trait implemented by all PAC peripheral access structures. The register block /// Common trait implemented by all PAC peripheral access structures. The register block
/// format is the same for all DAC blocks. /// format is the same for all DAC blocks.
pub trait DacInstance: Deref<Target = DacRegisterBlock> { pub trait DacMarker: Deref<Target = DacRegisterBlock> {
const IDX: u8; const IDX: u8;
fn ptr() -> *const DacRegisterBlock; fn ptr() -> *const DacRegisterBlock;
} }
impl DacInstance for pac::Dac0 { impl DacMarker for pac::Dac0 {
const IDX: u8 = 0; const IDX: u8 = 0;
#[inline(always)] #[inline(always)]
@@ -31,7 +31,7 @@ impl DacInstance for pac::Dac0 {
} }
} }
impl DacInstance for pac::Dac1 { impl DacMarker for pac::Dac1 {
const IDX: u8 = 1; const IDX: u8 = 1;
#[inline(always)] #[inline(always)]
@@ -62,7 +62,7 @@ impl Dac {
/// Create a new [Dac] driver instance. /// Create a new [Dac] driver instance.
/// ///
/// The [Clocks] structure is expected here as well to ensure the clock was set up properly. /// The [Clocks] structure is expected here as well to ensure the clock was set up properly.
pub fn new<Dac: DacInstance>(dac: Dac, dac_settling: DacSettling, _clocks: &Clocks) -> Self { pub fn new<Dac: DacMarker>(dac: Dac, dac_settling: DacSettling, _clocks: &Clocks) -> Self {
enable_peripheral_clock(PeripheralSelect::Dac); enable_peripheral_clock(PeripheralSelect::Dac);
dac.ctrl1().write(|w| { dac.ctrl1().write(|w| {

View File

@@ -4,7 +4,9 @@
//! //!
//! - [Simple DMA example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/dma.rs) //! - [Simple DMA example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/dma.rs)
use arbitrary_int::{u10, u3}; use arbitrary_int::{u10, u3};
use vorago_shared_hal::{enable_peripheral_clock, reset_peripheral_for_cycles, PeripheralSelect}; use vorago_shared_periphs::{
enable_peripheral_clock, reset_peripheral_for_cycles, PeripheralSelect,
};
use crate::{enable_nvic_interrupt, pac}; use crate::{enable_nvic_interrupt, pac};
@@ -89,7 +91,41 @@ pub enum RPower {
#[cfg_attr(feature = "defmt", derive(defmt::Format))] #[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub struct InvalidCtrlBlockAddrError; pub struct InvalidCtrlBlockAddrError;
#[bitbybit::bitfield(u32, default = 0x0, debug, defmt_fields(feature = "defmt"))] /*
bitfield::bitfield! {
#[repr(transparent)]
#[derive(Clone, Copy)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub struct ChannelConfig(u32);
impl Debug;
u32;
pub raw, set_raw: 31,0;
u8;
pub dst_inc, set_dst_inc: 31, 30;
u8;
pub dst_size, set_dst_size: 29, 28;
u8;
pub src_inc, set_src_inc: 27, 26;
u8;
pub src_size, set_src_size: 25, 24;
u8;
pub dest_prot_ctrl, set_dest_prot_ctrl: 23, 21;
u8;
pub src_prot_ctrl, set_src_prot_ctrl: 20, 18;
u8;
pub r_power, set_r_power: 17, 14;
u16;
pub n_minus_1, set_n_minus_1: 13, 4;
bool;
pub next_useburst, set_next_useburst: 3;
u8;
pub cycle_ctrl, set_cycle_ctr: 2, 0;
}
*/
#[bitbybit::bitfield(u32, default = 0x0)]
#[derive(Debug)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub struct ChannelConfig { pub struct ChannelConfig {
#[bits(30..=31, rw)] #[bits(30..=31, rw)]
dst_inc: AddrIncrement, dst_inc: AddrIncrement,
@@ -195,7 +231,7 @@ pub enum DmaTransferInitError {
#[derive(Debug, Clone, Copy, Default)] #[derive(Debug, Clone, Copy, Default)]
#[cfg_attr(feature = "defmt", derive(defmt::Format))] #[cfg_attr(feature = "defmt", derive(defmt::Format))]
pub struct DmaConfig { pub struct DmaCfg {
pub bufferable: bool, pub bufferable: bool,
pub cacheable: bool, pub cacheable: bool,
pub privileged: bool, pub privileged: bool,
@@ -497,7 +533,7 @@ impl Dma {
/// control block at a specific address. /// control block at a specific address.
pub fn new( pub fn new(
dma: pac::Dma, dma: pac::Dma,
cfg: DmaConfig, cfg: DmaCfg,
ctrl_block: *mut DmaCtrlBlock, ctrl_block: *mut DmaCtrlBlock,
) -> Result<Self, InvalidCtrlBlockAddrError> { ) -> Result<Self, InvalidCtrlBlockAddrError> {
// The conversion to u32 is safe here because we are on a 32-bit system. // The conversion to u32 is safe here because we are on a 32-bit system.
@@ -527,7 +563,7 @@ impl Dma {
} }
#[inline(always)] #[inline(always)]
pub fn set_protection_bits(&self, cfg: &DmaConfig) { pub fn set_protection_bits(&self, cfg: &DmaCfg) {
self.dma.cfg().write(|w| unsafe { self.dma.cfg().write(|w| unsafe {
w.chnl_prot_ctrl().bits( w.chnl_prot_ctrl().bits(
cfg.privileged as u8 | ((cfg.bufferable as u8) << 1) | ((cfg.cacheable as u8) << 2), cfg.privileged as u8 | ((cfg.bufferable as u8) << 1) | ((cfg.cacheable as u8) << 2),

View File

@@ -17,4 +17,4 @@
//! //!
//! - [Blinky example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/blinky.rs) //! - [Blinky example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/blinky.rs)
//! - [Async GPIO example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/embassy/src/bin/async-gpio.rs) //! - [Async GPIO example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/embassy/src/bin/async-gpio.rs)
pub use vorago_shared_hal::gpio::*; pub use vorago_shared_periphs::gpio::*;

View File

@@ -3,4 +3,4 @@
//! ## Examples //! ## Examples
//! //!
//! - [PEB1 accelerometer example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/peb1-accelerometer.rs) //! - [PEB1 accelerometer example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/peb1-accelerometer.rs)
pub use vorago_shared_hal::i2c::*; pub use vorago_shared_periphs::i2c::*;

View File

@@ -1,5 +1,7 @@
//! IRQ Router peripheral support. //! IRQ Router peripheral support.
use vorago_shared_hal::{enable_peripheral_clock, reset_peripheral_for_cycles, PeripheralSelect}; use vorago_shared_periphs::{
enable_peripheral_clock, reset_peripheral_for_cycles, PeripheralSelect,
};
use crate::pac; use crate::pac;

View File

@@ -59,10 +59,10 @@ pub mod adc;
#[cfg(not(feature = "va41628"))] #[cfg(not(feature = "va41628"))]
pub mod dac; pub mod dac;
pub use vorago_shared_hal::{ pub use vorago_shared_periphs::{
assert_peripheral_reset, deassert_peripheral_reset, disable_nvic_interrupt, assert_peripheral_reset, deassert_peripheral_reset, disable_nvic_interrupt,
disable_peripheral_clock, enable_nvic_interrupt, enable_peripheral_clock, disable_peripheral_clock, enable_nvic_interrupt, enable_peripheral_clock,
reset_peripheral_for_cycles, FunctionSelect, PeripheralSelect, reset_peripheral_for_cycles, FunSel, PeripheralSelect,
}; };
#[derive(Debug, PartialEq, Eq, thiserror::Error)] #[derive(Debug, PartialEq, Eq, thiserror::Error)]
@@ -80,19 +80,19 @@ pub fn port_function_select(
ioconfig: &mut pac::Ioconfig, ioconfig: &mut pac::Ioconfig,
port: Port, port: Port,
pin: u8, pin: u8,
funsel: FunctionSelect, funsel: FunSel,
) -> Result<(), InvalidPinError> { ) -> Result<(), InvalidPinError> {
if (port == Port::G && pin >= 8) || pin >= 16 { if (port == Port::G && pin >= 8) || pin >= 16 {
return Err(InvalidPinError(pin)); return Err(InvalidPinError(pin));
} }
let reg_block = match port { let reg_block = match port {
Port::A => ioconfig.porta(pin as usize), Port::A => ioconfig.porta(pin as usize),
Port::B => ioconfig.portb(pin as usize), Port::B => ioconfig.portb0(pin as usize),
Port::C => ioconfig.portc(pin as usize), Port::C => ioconfig.portc0(pin as usize),
Port::D => ioconfig.portd(pin as usize), Port::D => ioconfig.portd0(pin as usize),
Port::E => ioconfig.porte(pin as usize), Port::E => ioconfig.porte0(pin as usize),
Port::F => ioconfig.portf(pin as usize), Port::F => ioconfig.portf0(pin as usize),
Port::G => ioconfig.portg(pin as usize), Port::G => ioconfig.portg0(pin as usize),
}; };
reg_block.modify(|_, w| unsafe { w.funsel().bits(funsel as u8) }); reg_block.modify(|_, w| unsafe { w.funsel().bits(funsel as u8) });

View File

@@ -6,14 +6,14 @@
//! //!
//! - [Flashloader application](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/flashloader) //! - [Flashloader application](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/flashloader)
use embedded_hal::spi::MODE_0; use embedded_hal::spi::MODE_0;
use vorago_shared_hal::{ use vorago_shared_periphs::{
disable_peripheral_clock, enable_peripheral_clock, reset_peripheral_for_cycles, disable_peripheral_clock, enable_peripheral_clock, reset_peripheral_for_cycles,
}; };
use crate::clock::Clocks; use crate::clock::Clocks;
use crate::pac; use crate::pac;
use crate::spi::{ use crate::spi::{
mode_to_cpo_cph_bit, spi_clk_config_from_div, SpiInstance, SpiWord, BMSTART_BMSTOP_MASK, mode_to_cpo_cph_bit, spi_clk_config_from_div, SpiMarker, WordProvider, BMSTART_BMSTOP_MASK,
}; };
const NVM_CLOCK_DIV: u16 = 2; const NVM_CLOCK_DIV: u16 = 2;
@@ -31,8 +31,7 @@ pub const FRAM_WRITE: u8 = 0x02;
pub const FRAM_RDID: u8 = 0x9F; pub const FRAM_RDID: u8 = 0x9F;
pub const FRAM_SLEEP: u8 = 0xB9; pub const FRAM_SLEEP: u8 = 0xB9;
// Address Masks /* Address Masks */
const ADDR_MSB_MASK: u32 = 0xFF0000; const ADDR_MSB_MASK: u32 = 0xFF0000;
const ADDR_MID_MASK: u32 = 0x00FF00; const ADDR_MID_MASK: u32 = 0x00FF00;
const ADDR_LSB_MASK: u32 = 0x0000FF; const ADDR_LSB_MASK: u32 = 0x0000FF;

View File

@@ -3,4 +3,4 @@
//! This module contains the pin singletons. It allows creating those singletons //! This module contains the pin singletons. It allows creating those singletons
//! to access the [Pin] structures of individual ports in a safe way with checked ownership //! to access the [Pin] structures of individual ports in a safe way with checked ownership
//! rules. //! rules.
pub use vorago_shared_hal::pins::*; pub use vorago_shared_periphs::pins::*;

View File

@@ -5,4 +5,4 @@
//! ## Examples //! ## Examples
//! //!
//! - [PWM example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/pwm.rs) //! - [PWM example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/pwm.rs)
pub use vorago_shared_hal::pwm::*; pub use vorago_shared_periphs::pwm::*;

View File

@@ -8,4 +8,4 @@
//! //!
//! - [Blocking SPI example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/spi.rs) //! - [Blocking SPI example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/spi.rs)
//! - [NVM library][crate::nvm] //! - [NVM library][crate::nvm]
pub use vorago_shared_hal::spi::*; pub use vorago_shared_periphs::spi::*;

View File

@@ -4,6 +4,6 @@
//! //!
//! - [MS and second tick implementation](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/timer-ticks.rs) //! - [MS and second tick implementation](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/timer-ticks.rs)
//! - [Cascade feature example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/cascade.rs) //! - [Cascade feature example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/cascade.rs)
pub use vorago_shared_hal::timer::*; pub use vorago_shared_periphs::timer::*;
pub const TIM_IRQ_OFFSET: usize = 48; pub const TIM_IRQ_OFFSET: usize = 48;

View File

@@ -14,4 +14,4 @@
//! - [Flashloader exposing a CCSDS interface via UART](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/flashloader) //! - [Flashloader exposing a CCSDS interface via UART](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/flashloader)
//! - [Async UART RX example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/embassy/src/bin/async-uart-rx.rs) //! - [Async UART RX example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/embassy/src/bin/async-uart-rx.rs)
//! - [Async UART TX example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/embassy/src/bin/async-uart-tx.rs) //! - [Async UART TX example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/embassy/src/bin/async-uart-tx.rs)
pub use vorago_shared_hal::uart::*; pub use vorago_shared_periphs::uart::*;

View File

@@ -3,7 +3,9 @@
//! ## Examples //! ## Examples
//! //!
//! - [Watchdog simple example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/wdt.rs) //! - [Watchdog simple example](https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/src/branch/main/examples/simple/examples/wdt.rs)
use vorago_shared_hal::{enable_peripheral_clock, reset_peripheral_for_cycles, PeripheralSelect}; use vorago_shared_periphs::{
enable_peripheral_clock, reset_peripheral_for_cycles, PeripheralSelect,
};
use crate::time::Hertz; use crate::time::Hertz;
use crate::{clock::Clocks, pac}; use crate::{clock::Clocks, pac};

View File

@@ -8,10 +8,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
## [unreleased] ## [unreleased]
## [v0.5.0] 2025-09-03
- Re-generated PAC with `svd2rust` v0.37.0
## [v0.4.1] 2025-07-22 ## [v0.4.1] 2025-07-22
defmt v1 defmt v1
@@ -41,7 +37,6 @@ defmt v1
Clippy is disabled in CI/CD for now. Clippy is disabled in CI/CD for now.
- Initial release - Initial release
[unreleased]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-v0.5.0...HEAD [unreleased]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-v0.4.1...HEAD
[v0.5.0]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-v0.4.1...va416xx-v0.5.0
[v0.4.1]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-v0.4.0...va416xx-v0.4.1 [v0.4.1]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-v0.4.0...va416xx-v0.4.1
[v0.4.0]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-v0.3.0...va416xx-v0.4.0 [v0.4.0]: https://egit.irs.uni-stuttgart.de/rust/va416xx-rs/compare/va416xx-v0.3.0...va416xx-v0.4.0

View File

@@ -1,6 +1,6 @@
[package] [package]
name = "va416xx" name = "va416xx"
version = "0.5.0" version = "0.4.1"
authors = ["Robin Mueller <muellerr@irs.uni-stuttgart.de>"] authors = ["Robin Mueller <muellerr@irs.uni-stuttgart.de>"]
edition = "2021" edition = "2021"
description = "PAC for the Vorago VA416xx family of MCUs" description = "PAC for the Vorago VA416xx family of MCUs"

View File

@@ -65,52 +65,62 @@ impl RegisterBlock {
&self.perid &self.perid
} }
} }
#[doc = "CTRL (rw) register accessor: Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ctrl::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctrl::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ctrl`] module"] #[doc = "CTRL (rw) register accessor: Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ctrl::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctrl::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ctrl`]
module"]
#[doc(alias = "CTRL")] #[doc(alias = "CTRL")]
pub type Ctrl = crate::Reg<ctrl::CtrlSpec>; pub type Ctrl = crate::Reg<ctrl::CtrlSpec>;
#[doc = "Control Register"] #[doc = "Control Register"]
pub mod ctrl; pub mod ctrl;
#[doc = "FIFO_DATA (r) register accessor: FIFO data\n\nYou can [`read`](crate::Reg::read) this register and get [`fifo_data::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@fifo_data`] module"] #[doc = "FIFO_DATA (r) register accessor: FIFO data\n\nYou can [`read`](crate::Reg::read) this register and get [`fifo_data::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@fifo_data`]
module"]
#[doc(alias = "FIFO_DATA")] #[doc(alias = "FIFO_DATA")]
pub type FifoData = crate::Reg<fifo_data::FifoDataSpec>; pub type FifoData = crate::Reg<fifo_data::FifoDataSpec>;
#[doc = "FIFO data"] #[doc = "FIFO data"]
pub mod fifo_data; pub mod fifo_data;
#[doc = "STATUS (r) register accessor: Status\n\nYou can [`read`](crate::Reg::read) this register and get [`status::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@status`] module"] #[doc = "STATUS (r) register accessor: Status\n\nYou can [`read`](crate::Reg::read) this register and get [`status::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@status`]
module"]
#[doc(alias = "STATUS")] #[doc(alias = "STATUS")]
pub type Status = crate::Reg<status::StatusSpec>; pub type Status = crate::Reg<status::StatusSpec>;
#[doc = "Status"] #[doc = "Status"]
pub mod status; pub mod status;
#[doc = "IRQ_ENB (rw) register accessor: Interrupt Enable\n\nYou can [`read`](crate::Reg::read) this register and get [`irq_enb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`irq_enb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@irq_enb`] module"] #[doc = "IRQ_ENB (rw) register accessor: Interrupt Enable\n\nYou can [`read`](crate::Reg::read) this register and get [`irq_enb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`irq_enb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@irq_enb`]
module"]
#[doc(alias = "IRQ_ENB")] #[doc(alias = "IRQ_ENB")]
pub type IrqEnb = crate::Reg<irq_enb::IrqEnbSpec>; pub type IrqEnb = crate::Reg<irq_enb::IrqEnbSpec>;
#[doc = "Interrupt Enable"] #[doc = "Interrupt Enable"]
pub mod irq_enb; pub mod irq_enb;
#[doc = "IRQ_RAW (r) register accessor: Raw Interrupt Status\n\nYou can [`read`](crate::Reg::read) this register and get [`irq_raw::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@irq_raw`] module"] #[doc = "IRQ_RAW (r) register accessor: Raw Interrupt Status\n\nYou can [`read`](crate::Reg::read) this register and get [`irq_raw::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@irq_raw`]
module"]
#[doc(alias = "IRQ_RAW")] #[doc(alias = "IRQ_RAW")]
pub type IrqRaw = crate::Reg<irq_raw::IrqRawSpec>; pub type IrqRaw = crate::Reg<irq_raw::IrqRawSpec>;
#[doc = "Raw Interrupt Status"] #[doc = "Raw Interrupt Status"]
pub mod irq_raw; pub mod irq_raw;
#[doc = "IRQ_END (r) register accessor: Enabled Interrupt Status\n\nYou can [`read`](crate::Reg::read) this register and get [`irq_end::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@irq_end`] module"] #[doc = "IRQ_END (r) register accessor: Enabled Interrupt Status\n\nYou can [`read`](crate::Reg::read) this register and get [`irq_end::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@irq_end`]
module"]
#[doc(alias = "IRQ_END")] #[doc(alias = "IRQ_END")]
pub type IrqEnd = crate::Reg<irq_end::IrqEndSpec>; pub type IrqEnd = crate::Reg<irq_end::IrqEndSpec>;
#[doc = "Enabled Interrupt Status"] #[doc = "Enabled Interrupt Status"]
pub mod irq_end; pub mod irq_end;
#[doc = "IRQ_CLR (w) register accessor: Clear Interrupt\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`irq_clr::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@irq_clr`] module"] #[doc = "IRQ_CLR (w) register accessor: Clear Interrupt\n\nYou can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`irq_clr::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@irq_clr`]
module"]
#[doc(alias = "IRQ_CLR")] #[doc(alias = "IRQ_CLR")]
pub type IrqClr = crate::Reg<irq_clr::IrqClrSpec>; pub type IrqClr = crate::Reg<irq_clr::IrqClrSpec>;
#[doc = "Clear Interrupt"] #[doc = "Clear Interrupt"]
pub mod irq_clr; pub mod irq_clr;
#[doc = "RXFIFOIRQTRG (rw) register accessor: Receive FIFO Interrupt Trigger Value\n\nYou can [`read`](crate::Reg::read) this register and get [`rxfifoirqtrg::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rxfifoirqtrg::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@rxfifoirqtrg`] module"] #[doc = "RXFIFOIRQTRG (rw) register accessor: Receive FIFO Interrupt Trigger Value\n\nYou can [`read`](crate::Reg::read) this register and get [`rxfifoirqtrg::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rxfifoirqtrg::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@rxfifoirqtrg`]
module"]
#[doc(alias = "RXFIFOIRQTRG")] #[doc(alias = "RXFIFOIRQTRG")]
pub type Rxfifoirqtrg = crate::Reg<rxfifoirqtrg::RxfifoirqtrgSpec>; pub type Rxfifoirqtrg = crate::Reg<rxfifoirqtrg::RxfifoirqtrgSpec>;
#[doc = "Receive FIFO Interrupt Trigger Value"] #[doc = "Receive FIFO Interrupt Trigger Value"]
pub mod rxfifoirqtrg; pub mod rxfifoirqtrg;
#[doc = "FIFO_CLR (rw) register accessor: FIFO Clear\n\nYou can [`read`](crate::Reg::read) this register and get [`fifo_clr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`fifo_clr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@fifo_clr`] module"] #[doc = "FIFO_CLR (rw) register accessor: FIFO Clear\n\nYou can [`read`](crate::Reg::read) this register and get [`fifo_clr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`fifo_clr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@fifo_clr`]
module"]
#[doc(alias = "FIFO_CLR")] #[doc(alias = "FIFO_CLR")]
pub type FifoClr = crate::Reg<fifo_clr::FifoClrSpec>; pub type FifoClr = crate::Reg<fifo_clr::FifoClrSpec>;
#[doc = "FIFO Clear"] #[doc = "FIFO Clear"]
pub mod fifo_clr; pub mod fifo_clr;
#[doc = "PERID (r) register accessor: Peripheral ID Register\n\nYou can [`read`](crate::Reg::read) this register and get [`perid::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@perid`] module"] #[doc = "PERID (r) register accessor: Peripheral ID Register\n\nYou can [`read`](crate::Reg::read) this register and get [`perid::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@perid`]
module"]
#[doc(alias = "PERID")] #[doc(alias = "PERID")]
pub type Perid = crate::Reg<perid::PeridSpec>; pub type Perid = crate::Reg<perid::PeridSpec>;
#[doc = "Peripheral ID Register"] #[doc = "Peripheral ID Register"]

View File

@@ -61,32 +61,32 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:15 - Enables the channel for data collection"] #[doc = "Bits 0:15 - Enables the channel for data collection"]
#[inline(always)] #[inline(always)]
pub fn chan_en(&mut self) -> ChanEnW<'_, CtrlSpec> { pub fn chan_en(&mut self) -> ChanEnW<CtrlSpec> {
ChanEnW::new(self, 0) ChanEnW::new(self, 0)
} }
#[doc = "Bit 16 - Enables the channel tag to be saved with the ADC data"] #[doc = "Bit 16 - Enables the channel tag to be saved with the ADC data"]
#[inline(always)] #[inline(always)]
pub fn chan_tag_en(&mut self) -> ChanTagEnW<'_, CtrlSpec> { pub fn chan_tag_en(&mut self) -> ChanTagEnW<CtrlSpec> {
ChanTagEnW::new(self, 16) ChanTagEnW::new(self, 16)
} }
#[doc = "Bit 17 - ADC data acquisition for all enabled channel"] #[doc = "Bit 17 - ADC data acquisition for all enabled channel"]
#[inline(always)] #[inline(always)]
pub fn sweep_en(&mut self) -> SweepEnW<'_, CtrlSpec> { pub fn sweep_en(&mut self) -> SweepEnW<CtrlSpec> {
SweepEnW::new(self, 17) SweepEnW::new(self, 17)
} }
#[doc = "Bit 18 - Allows the external trigger to start analog acquisition"] #[doc = "Bit 18 - Allows the external trigger to start analog acquisition"]
#[inline(always)] #[inline(always)]
pub fn ext_trig_en(&mut self) -> ExtTrigEnW<'_, CtrlSpec> { pub fn ext_trig_en(&mut self) -> ExtTrigEnW<CtrlSpec> {
ExtTrigEnW::new(self, 18) ExtTrigEnW::new(self, 18)
} }
#[doc = "Bit 19 - Starts analog acquisition"] #[doc = "Bit 19 - Starts analog acquisition"]
#[inline(always)] #[inline(always)]
pub fn manual_trig(&mut self) -> ManualTrigW<'_, CtrlSpec> { pub fn manual_trig(&mut self) -> ManualTrigW<CtrlSpec> {
ManualTrigW::new(self, 19) ManualTrigW::new(self, 19)
} }
#[doc = "Bits 20:23 - Conversion count describes the number of conversions to be applied for triggers/sweeps. (N+1 conversions)"] #[doc = "Bits 20:23 - Conversion count describes the number of conversions to be applied for triggers/sweeps. (N+1 conversions)"]
#[inline(always)] #[inline(always)]
pub fn conv_cnt(&mut self) -> ConvCntW<'_, CtrlSpec> { pub fn conv_cnt(&mut self) -> ConvCntW<CtrlSpec> {
ConvCntW::new(self, 20) ConvCntW::new(self, 20)
} }
} }
@@ -100,6 +100,10 @@ impl crate::Readable for CtrlSpec {}
#[doc = "`write(|w| ..)` method takes [`ctrl::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`ctrl::W`](W) writer structure"]
impl crate::Writable for CtrlSpec { impl crate::Writable for CtrlSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CTRL to value 0"] #[doc = "`reset()` method sets CTRL to value 0"]
impl crate::Resettable for CtrlSpec {} impl crate::Resettable for CtrlSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -7,7 +7,7 @@ pub type FifoClrW<'a, REG> = crate::BitWriter<'a, REG>;
impl W { impl W {
#[doc = "Bit 0 - Clears the ADC FIFO. Always reads 0"] #[doc = "Bit 0 - Clears the ADC FIFO. Always reads 0"]
#[inline(always)] #[inline(always)]
pub fn fifo_clr(&mut self) -> FifoClrW<'_, FifoClrSpec> { pub fn fifo_clr(&mut self) -> FifoClrW<FifoClrSpec> {
FifoClrW::new(self, 0) FifoClrW::new(self, 0)
} }
} }
@@ -21,6 +21,10 @@ impl crate::Readable for FifoClrSpec {}
#[doc = "`write(|w| ..)` method takes [`fifo_clr::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`fifo_clr::W`](W) writer structure"]
impl crate::Writable for FifoClrSpec { impl crate::Writable for FifoClrSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets FIFO_CLR to value 0"] #[doc = "`reset()` method sets FIFO_CLR to value 0"]
impl crate::Resettable for FifoClrSpec {} impl crate::Resettable for FifoClrSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -24,4 +24,6 @@ impl crate::RegisterSpec for FifoDataSpec {
#[doc = "`read()` method returns [`fifo_data::R`](R) reader structure"] #[doc = "`read()` method returns [`fifo_data::R`](R) reader structure"]
impl crate::Readable for FifoDataSpec {} impl crate::Readable for FifoDataSpec {}
#[doc = "`reset()` method sets FIFO_DATA to value 0"] #[doc = "`reset()` method sets FIFO_DATA to value 0"]
impl crate::Resettable for FifoDataSpec {} impl crate::Resettable for FifoDataSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -11,22 +11,22 @@ pub type TrigErrorW<'a, REG> = crate::BitWriter<'a, REG>;
impl W { impl W {
#[doc = "Bit 0 - Clears the FIFO overflow interrupt status. Always reads 0"] #[doc = "Bit 0 - Clears the FIFO overflow interrupt status. Always reads 0"]
#[inline(always)] #[inline(always)]
pub fn fifo_oflow(&mut self) -> FifoOflowW<'_, IrqClrSpec> { pub fn fifo_oflow(&mut self) -> FifoOflowW<IrqClrSpec> {
FifoOflowW::new(self, 0) FifoOflowW::new(self, 0)
} }
#[doc = "Bit 1 - Clears the FIFO underflow interrupt status. Always reads 0"] #[doc = "Bit 1 - Clears the FIFO underflow interrupt status. Always reads 0"]
#[inline(always)] #[inline(always)]
pub fn fifo_uflow(&mut self) -> FifoUflowW<'_, IrqClrSpec> { pub fn fifo_uflow(&mut self) -> FifoUflowW<IrqClrSpec> {
FifoUflowW::new(self, 1) FifoUflowW::new(self, 1)
} }
#[doc = "Bit 2 - Clears the ADC done interrupt status. Always reads 0"] #[doc = "Bit 2 - Clears the ADC done interrupt status. Always reads 0"]
#[inline(always)] #[inline(always)]
pub fn adc_done(&mut self) -> AdcDoneW<'_, IrqClrSpec> { pub fn adc_done(&mut self) -> AdcDoneW<IrqClrSpec> {
AdcDoneW::new(self, 2) AdcDoneW::new(self, 2)
} }
#[doc = "Bit 3 - Clears the trigger error interrupt status. Always reads 0"] #[doc = "Bit 3 - Clears the trigger error interrupt status. Always reads 0"]
#[inline(always)] #[inline(always)]
pub fn trig_error(&mut self) -> TrigErrorW<'_, IrqClrSpec> { pub fn trig_error(&mut self) -> TrigErrorW<IrqClrSpec> {
TrigErrorW::new(self, 3) TrigErrorW::new(self, 3)
} }
} }
@@ -38,6 +38,10 @@ impl crate::RegisterSpec for IrqClrSpec {
#[doc = "`write(|w| ..)` method takes [`irq_clr::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`irq_clr::W`](W) writer structure"]
impl crate::Writable for IrqClrSpec { impl crate::Writable for IrqClrSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets IRQ_CLR to value 0"] #[doc = "`reset()` method sets IRQ_CLR to value 0"]
impl crate::Resettable for IrqClrSpec {} impl crate::Resettable for IrqClrSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -70,37 +70,37 @@ impl R {
impl W { impl W {
#[doc = "Bit 0 - Enables the interrupt for FIFO empty"] #[doc = "Bit 0 - Enables the interrupt for FIFO empty"]
#[inline(always)] #[inline(always)]
pub fn fifo_empty(&mut self) -> FifoEmptyW<'_, IrqEnbSpec> { pub fn fifo_empty(&mut self) -> FifoEmptyW<IrqEnbSpec> {
FifoEmptyW::new(self, 0) FifoEmptyW::new(self, 0)
} }
#[doc = "Bit 1 - Enables the interrupt for FIFO full"] #[doc = "Bit 1 - Enables the interrupt for FIFO full"]
#[inline(always)] #[inline(always)]
pub fn fifo_full(&mut self) -> FifoFullW<'_, IrqEnbSpec> { pub fn fifo_full(&mut self) -> FifoFullW<IrqEnbSpec> {
FifoFullW::new(self, 1) FifoFullW::new(self, 1)
} }
#[doc = "Bit 2 - Enables the interrupt for a FIFO overflow"] #[doc = "Bit 2 - Enables the interrupt for a FIFO overflow"]
#[inline(always)] #[inline(always)]
pub fn fifo_oflow(&mut self) -> FifoOflowW<'_, IrqEnbSpec> { pub fn fifo_oflow(&mut self) -> FifoOflowW<IrqEnbSpec> {
FifoOflowW::new(self, 2) FifoOflowW::new(self, 2)
} }
#[doc = "Bit 3 - Enables the interrupt for a FIFO underflow"] #[doc = "Bit 3 - Enables the interrupt for a FIFO underflow"]
#[inline(always)] #[inline(always)]
pub fn fifo_uflow(&mut self) -> FifoUflowW<'_, IrqEnbSpec> { pub fn fifo_uflow(&mut self) -> FifoUflowW<IrqEnbSpec> {
FifoUflowW::new(self, 3) FifoUflowW::new(self, 3)
} }
#[doc = "Bit 4 - Enables the interrupt for an ADC data acquisition completion"] #[doc = "Bit 4 - Enables the interrupt for an ADC data acquisition completion"]
#[inline(always)] #[inline(always)]
pub fn adc_done(&mut self) -> AdcDoneW<'_, IrqEnbSpec> { pub fn adc_done(&mut self) -> AdcDoneW<IrqEnbSpec> {
AdcDoneW::new(self, 4) AdcDoneW::new(self, 4)
} }
#[doc = "Bit 5 - Enables the interrupt for a trigger error"] #[doc = "Bit 5 - Enables the interrupt for a trigger error"]
#[inline(always)] #[inline(always)]
pub fn trig_error(&mut self) -> TrigErrorW<'_, IrqEnbSpec> { pub fn trig_error(&mut self) -> TrigErrorW<IrqEnbSpec> {
TrigErrorW::new(self, 5) TrigErrorW::new(self, 5)
} }
#[doc = "Bit 6 - Enables the interrupt for the FIFO entry count meets or exceeds the trigger level"] #[doc = "Bit 6 - Enables the interrupt for the FIFO entry count meets or exceeds the trigger level"]
#[inline(always)] #[inline(always)]
pub fn fifo_depth_trig(&mut self) -> FifoDepthTrigW<'_, IrqEnbSpec> { pub fn fifo_depth_trig(&mut self) -> FifoDepthTrigW<IrqEnbSpec> {
FifoDepthTrigW::new(self, 6) FifoDepthTrigW::new(self, 6)
} }
} }
@@ -114,6 +114,10 @@ impl crate::Readable for IrqEnbSpec {}
#[doc = "`write(|w| ..)` method takes [`irq_enb::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`irq_enb::W`](W) writer structure"]
impl crate::Writable for IrqEnbSpec { impl crate::Writable for IrqEnbSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets IRQ_ENB to value 0"] #[doc = "`reset()` method sets IRQ_ENB to value 0"]
impl crate::Resettable for IrqEnbSpec {} impl crate::Resettable for IrqEnbSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -59,4 +59,6 @@ impl crate::RegisterSpec for IrqEndSpec {
#[doc = "`read()` method returns [`irq_end::R`](R) reader structure"] #[doc = "`read()` method returns [`irq_end::R`](R) reader structure"]
impl crate::Readable for IrqEndSpec {} impl crate::Readable for IrqEndSpec {}
#[doc = "`reset()` method sets IRQ_END to value 0"] #[doc = "`reset()` method sets IRQ_END to value 0"]
impl crate::Resettable for IrqEndSpec {} impl crate::Resettable for IrqEndSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -16,7 +16,7 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:4 - Sets the FIFO_ENTRY_CNT value that asserts the FIFO_DEPTH_TRIG interrupt"] #[doc = "Bits 0:4 - Sets the FIFO_ENTRY_CNT value that asserts the FIFO_DEPTH_TRIG interrupt"]
#[inline(always)] #[inline(always)]
pub fn level(&mut self) -> LevelW<'_, RxfifoirqtrgSpec> { pub fn level(&mut self) -> LevelW<RxfifoirqtrgSpec> {
LevelW::new(self, 0) LevelW::new(self, 0)
} }
} }
@@ -30,6 +30,8 @@ impl crate::Readable for RxfifoirqtrgSpec {}
#[doc = "`write(|w| ..)` method takes [`rxfifoirqtrg::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`rxfifoirqtrg::W`](W) writer structure"]
impl crate::Writable for RxfifoirqtrgSpec { impl crate::Writable for RxfifoirqtrgSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets RXFIFOIRQTRG to value 0x10"] #[doc = "`reset()` method sets RXFIFOIRQTRG to value 0x10"]
impl crate::Resettable for RxfifoirqtrgSpec { impl crate::Resettable for RxfifoirqtrgSpec {

View File

@@ -24,4 +24,6 @@ impl crate::RegisterSpec for StatusSpec {
#[doc = "`read()` method returns [`status::R`](R) reader structure"] #[doc = "`read()` method returns [`status::R`](R) reader structure"]
impl crate::Readable for StatusSpec {} impl crate::Readable for StatusSpec {}
#[doc = "`reset()` method sets STATUS to value 0"] #[doc = "`reset()` method sets STATUS to value 0"]
impl crate::Resettable for StatusSpec {} impl crate::Resettable for StatusSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -856,712 +856,854 @@ impl RegisterBlock {
&self.ctmr &self.ctmr
} }
} }
#[doc = "CNSTAT_CMB0 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb0`] module"] #[doc = "CNSTAT_CMB0 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb0`]
module"]
#[doc(alias = "CNSTAT_CMB0")] #[doc(alias = "CNSTAT_CMB0")]
pub type CnstatCmb0 = crate::Reg<cnstat_cmb0::CnstatCmb0Spec>; pub type CnstatCmb0 = crate::Reg<cnstat_cmb0::CnstatCmb0Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb0; pub mod cnstat_cmb0;
#[doc = "TSTP_CMB0 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb0`] module"] #[doc = "TSTP_CMB0 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb0`]
module"]
#[doc(alias = "TSTP_CMB0")] #[doc(alias = "TSTP_CMB0")]
pub type TstpCmb0 = crate::Reg<tstp_cmb0::TstpCmb0Spec>; pub type TstpCmb0 = crate::Reg<tstp_cmb0::TstpCmb0Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb0; pub mod tstp_cmb0;
#[doc = "DATA3_CMB0 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb0`] module"] #[doc = "DATA3_CMB0 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb0`]
module"]
#[doc(alias = "DATA3_CMB0")] #[doc(alias = "DATA3_CMB0")]
pub type Data3Cmb0 = crate::Reg<data3_cmb0::Data3Cmb0Spec>; pub type Data3Cmb0 = crate::Reg<data3_cmb0::Data3Cmb0Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb0; pub mod data3_cmb0;
#[doc = "DATA2_CMB0 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb0`] module"] #[doc = "DATA2_CMB0 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb0`]
module"]
#[doc(alias = "DATA2_CMB0")] #[doc(alias = "DATA2_CMB0")]
pub type Data2Cmb0 = crate::Reg<data2_cmb0::Data2Cmb0Spec>; pub type Data2Cmb0 = crate::Reg<data2_cmb0::Data2Cmb0Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb0; pub mod data2_cmb0;
#[doc = "DATA1_CMB0 (rw) register accessor: CAN Frame Data Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb0`] module"] #[doc = "DATA1_CMB0 (rw) register accessor: CAN Frame Data Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb0`]
module"]
#[doc(alias = "DATA1_CMB0")] #[doc(alias = "DATA1_CMB0")]
pub type Data1Cmb0 = crate::Reg<data1_cmb0::Data1Cmb0Spec>; pub type Data1Cmb0 = crate::Reg<data1_cmb0::Data1Cmb0Spec>;
#[doc = "CAN Frame Data Word 1"] #[doc = "CAN Frame Data Word 1"]
pub mod data1_cmb0; pub mod data1_cmb0;
#[doc = "DATA0_CMB0 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb0`] module"] #[doc = "DATA0_CMB0 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb0`]
module"]
#[doc(alias = "DATA0_CMB0")] #[doc(alias = "DATA0_CMB0")]
pub type Data0Cmb0 = crate::Reg<data0_cmb0::Data0Cmb0Spec>; pub type Data0Cmb0 = crate::Reg<data0_cmb0::Data0Cmb0Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb0; pub mod data0_cmb0;
#[doc = "ID0_CMB0 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb0`] module"] #[doc = "ID0_CMB0 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb0`]
module"]
#[doc(alias = "ID0_CMB0")] #[doc(alias = "ID0_CMB0")]
pub type Id0Cmb0 = crate::Reg<id0_cmb0::Id0Cmb0Spec>; pub type Id0Cmb0 = crate::Reg<id0_cmb0::Id0Cmb0Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb0; pub mod id0_cmb0;
#[doc = "ID1_CMB0 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb0`] module"] #[doc = "ID1_CMB0 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb0::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb0::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb0`]
module"]
#[doc(alias = "ID1_CMB0")] #[doc(alias = "ID1_CMB0")]
pub type Id1Cmb0 = crate::Reg<id1_cmb0::Id1Cmb0Spec>; pub type Id1Cmb0 = crate::Reg<id1_cmb0::Id1Cmb0Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb0; pub mod id1_cmb0;
#[doc = "CNSTAT_CMB1 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb1`] module"] #[doc = "CNSTAT_CMB1 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb1`]
module"]
#[doc(alias = "CNSTAT_CMB1")] #[doc(alias = "CNSTAT_CMB1")]
pub type CnstatCmb1 = crate::Reg<cnstat_cmb1::CnstatCmb1Spec>; pub type CnstatCmb1 = crate::Reg<cnstat_cmb1::CnstatCmb1Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb1; pub mod cnstat_cmb1;
#[doc = "TSTP_CMB1 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb1`] module"] #[doc = "TSTP_CMB1 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb1`]
module"]
#[doc(alias = "TSTP_CMB1")] #[doc(alias = "TSTP_CMB1")]
pub type TstpCmb1 = crate::Reg<tstp_cmb1::TstpCmb1Spec>; pub type TstpCmb1 = crate::Reg<tstp_cmb1::TstpCmb1Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb1; pub mod tstp_cmb1;
#[doc = "DATA3_CMB1 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb1`] module"] #[doc = "DATA3_CMB1 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb1`]
module"]
#[doc(alias = "DATA3_CMB1")] #[doc(alias = "DATA3_CMB1")]
pub type Data3Cmb1 = crate::Reg<data3_cmb1::Data3Cmb1Spec>; pub type Data3Cmb1 = crate::Reg<data3_cmb1::Data3Cmb1Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb1; pub mod data3_cmb1;
#[doc = "DATA2_CMB1 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb1`] module"] #[doc = "DATA2_CMB1 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb1`]
module"]
#[doc(alias = "DATA2_CMB1")] #[doc(alias = "DATA2_CMB1")]
pub type Data2Cmb1 = crate::Reg<data2_cmb1::Data2Cmb1Spec>; pub type Data2Cmb1 = crate::Reg<data2_cmb1::Data2Cmb1Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb1; pub mod data2_cmb1;
#[doc = "DATA1_CMB1 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb1`] module"] #[doc = "DATA1_CMB1 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb1`]
module"]
#[doc(alias = "DATA1_CMB1")] #[doc(alias = "DATA1_CMB1")]
pub type Data1Cmb1 = crate::Reg<data1_cmb1::Data1Cmb1Spec>; pub type Data1Cmb1 = crate::Reg<data1_cmb1::Data1Cmb1Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb1; pub mod data1_cmb1;
#[doc = "DATA0_CMB1 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb1`] module"] #[doc = "DATA0_CMB1 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb1`]
module"]
#[doc(alias = "DATA0_CMB1")] #[doc(alias = "DATA0_CMB1")]
pub type Data0Cmb1 = crate::Reg<data0_cmb1::Data0Cmb1Spec>; pub type Data0Cmb1 = crate::Reg<data0_cmb1::Data0Cmb1Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb1; pub mod data0_cmb1;
#[doc = "ID0_CMB1 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb1`] module"] #[doc = "ID0_CMB1 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb1`]
module"]
#[doc(alias = "ID0_CMB1")] #[doc(alias = "ID0_CMB1")]
pub type Id0Cmb1 = crate::Reg<id0_cmb1::Id0Cmb1Spec>; pub type Id0Cmb1 = crate::Reg<id0_cmb1::Id0Cmb1Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb1; pub mod id0_cmb1;
#[doc = "ID1_CMB1 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb1`] module"] #[doc = "ID1_CMB1 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb1::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb1::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb1`]
module"]
#[doc(alias = "ID1_CMB1")] #[doc(alias = "ID1_CMB1")]
pub type Id1Cmb1 = crate::Reg<id1_cmb1::Id1Cmb1Spec>; pub type Id1Cmb1 = crate::Reg<id1_cmb1::Id1Cmb1Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb1; pub mod id1_cmb1;
#[doc = "CNSTAT_CMB2 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb2`] module"] #[doc = "CNSTAT_CMB2 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb2`]
module"]
#[doc(alias = "CNSTAT_CMB2")] #[doc(alias = "CNSTAT_CMB2")]
pub type CnstatCmb2 = crate::Reg<cnstat_cmb2::CnstatCmb2Spec>; pub type CnstatCmb2 = crate::Reg<cnstat_cmb2::CnstatCmb2Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb2; pub mod cnstat_cmb2;
#[doc = "TSTP_CMB2 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb2`] module"] #[doc = "TSTP_CMB2 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb2`]
module"]
#[doc(alias = "TSTP_CMB2")] #[doc(alias = "TSTP_CMB2")]
pub type TstpCmb2 = crate::Reg<tstp_cmb2::TstpCmb2Spec>; pub type TstpCmb2 = crate::Reg<tstp_cmb2::TstpCmb2Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb2; pub mod tstp_cmb2;
#[doc = "DATA3_CMB2 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb2`] module"] #[doc = "DATA3_CMB2 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb2`]
module"]
#[doc(alias = "DATA3_CMB2")] #[doc(alias = "DATA3_CMB2")]
pub type Data3Cmb2 = crate::Reg<data3_cmb2::Data3Cmb2Spec>; pub type Data3Cmb2 = crate::Reg<data3_cmb2::Data3Cmb2Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb2; pub mod data3_cmb2;
#[doc = "DATA2_CMB2 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb2`] module"] #[doc = "DATA2_CMB2 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb2`]
module"]
#[doc(alias = "DATA2_CMB2")] #[doc(alias = "DATA2_CMB2")]
pub type Data2Cmb2 = crate::Reg<data2_cmb2::Data2Cmb2Spec>; pub type Data2Cmb2 = crate::Reg<data2_cmb2::Data2Cmb2Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb2; pub mod data2_cmb2;
#[doc = "DATA1_CMB2 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb2`] module"] #[doc = "DATA1_CMB2 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb2`]
module"]
#[doc(alias = "DATA1_CMB2")] #[doc(alias = "DATA1_CMB2")]
pub type Data1Cmb2 = crate::Reg<data1_cmb2::Data1Cmb2Spec>; pub type Data1Cmb2 = crate::Reg<data1_cmb2::Data1Cmb2Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb2; pub mod data1_cmb2;
#[doc = "DATA0_CMB2 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb2`] module"] #[doc = "DATA0_CMB2 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb2`]
module"]
#[doc(alias = "DATA0_CMB2")] #[doc(alias = "DATA0_CMB2")]
pub type Data0Cmb2 = crate::Reg<data0_cmb2::Data0Cmb2Spec>; pub type Data0Cmb2 = crate::Reg<data0_cmb2::Data0Cmb2Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb2; pub mod data0_cmb2;
#[doc = "ID0_CMB2 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb2`] module"] #[doc = "ID0_CMB2 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb2`]
module"]
#[doc(alias = "ID0_CMB2")] #[doc(alias = "ID0_CMB2")]
pub type Id0Cmb2 = crate::Reg<id0_cmb2::Id0Cmb2Spec>; pub type Id0Cmb2 = crate::Reg<id0_cmb2::Id0Cmb2Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb2; pub mod id0_cmb2;
#[doc = "ID1_CMB2 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb2`] module"] #[doc = "ID1_CMB2 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb2::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb2::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb2`]
module"]
#[doc(alias = "ID1_CMB2")] #[doc(alias = "ID1_CMB2")]
pub type Id1Cmb2 = crate::Reg<id1_cmb2::Id1Cmb2Spec>; pub type Id1Cmb2 = crate::Reg<id1_cmb2::Id1Cmb2Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb2; pub mod id1_cmb2;
#[doc = "CNSTAT_CMB3 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb3`] module"] #[doc = "CNSTAT_CMB3 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb3`]
module"]
#[doc(alias = "CNSTAT_CMB3")] #[doc(alias = "CNSTAT_CMB3")]
pub type CnstatCmb3 = crate::Reg<cnstat_cmb3::CnstatCmb3Spec>; pub type CnstatCmb3 = crate::Reg<cnstat_cmb3::CnstatCmb3Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb3; pub mod cnstat_cmb3;
#[doc = "TSTP_CMB3 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb3`] module"] #[doc = "TSTP_CMB3 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb3`]
module"]
#[doc(alias = "TSTP_CMB3")] #[doc(alias = "TSTP_CMB3")]
pub type TstpCmb3 = crate::Reg<tstp_cmb3::TstpCmb3Spec>; pub type TstpCmb3 = crate::Reg<tstp_cmb3::TstpCmb3Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb3; pub mod tstp_cmb3;
#[doc = "DATA3_CMB3 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb3`] module"] #[doc = "DATA3_CMB3 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb3`]
module"]
#[doc(alias = "DATA3_CMB3")] #[doc(alias = "DATA3_CMB3")]
pub type Data3Cmb3 = crate::Reg<data3_cmb3::Data3Cmb3Spec>; pub type Data3Cmb3 = crate::Reg<data3_cmb3::Data3Cmb3Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb3; pub mod data3_cmb3;
#[doc = "DATA2_CMB3 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb3`] module"] #[doc = "DATA2_CMB3 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb3`]
module"]
#[doc(alias = "DATA2_CMB3")] #[doc(alias = "DATA2_CMB3")]
pub type Data2Cmb3 = crate::Reg<data2_cmb3::Data2Cmb3Spec>; pub type Data2Cmb3 = crate::Reg<data2_cmb3::Data2Cmb3Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb3; pub mod data2_cmb3;
#[doc = "DATA1_CMB3 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb3`] module"] #[doc = "DATA1_CMB3 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb3`]
module"]
#[doc(alias = "DATA1_CMB3")] #[doc(alias = "DATA1_CMB3")]
pub type Data1Cmb3 = crate::Reg<data1_cmb3::Data1Cmb3Spec>; pub type Data1Cmb3 = crate::Reg<data1_cmb3::Data1Cmb3Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb3; pub mod data1_cmb3;
#[doc = "DATA0_CMB3 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb3`] module"] #[doc = "DATA0_CMB3 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb3`]
module"]
#[doc(alias = "DATA0_CMB3")] #[doc(alias = "DATA0_CMB3")]
pub type Data0Cmb3 = crate::Reg<data0_cmb3::Data0Cmb3Spec>; pub type Data0Cmb3 = crate::Reg<data0_cmb3::Data0Cmb3Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb3; pub mod data0_cmb3;
#[doc = "ID0_CMB3 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb3`] module"] #[doc = "ID0_CMB3 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb3`]
module"]
#[doc(alias = "ID0_CMB3")] #[doc(alias = "ID0_CMB3")]
pub type Id0Cmb3 = crate::Reg<id0_cmb3::Id0Cmb3Spec>; pub type Id0Cmb3 = crate::Reg<id0_cmb3::Id0Cmb3Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb3; pub mod id0_cmb3;
#[doc = "ID1_CMB3 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb3`] module"] #[doc = "ID1_CMB3 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb3::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb3::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb3`]
module"]
#[doc(alias = "ID1_CMB3")] #[doc(alias = "ID1_CMB3")]
pub type Id1Cmb3 = crate::Reg<id1_cmb3::Id1Cmb3Spec>; pub type Id1Cmb3 = crate::Reg<id1_cmb3::Id1Cmb3Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb3; pub mod id1_cmb3;
#[doc = "CNSTAT_CMB4 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb4`] module"] #[doc = "CNSTAT_CMB4 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb4`]
module"]
#[doc(alias = "CNSTAT_CMB4")] #[doc(alias = "CNSTAT_CMB4")]
pub type CnstatCmb4 = crate::Reg<cnstat_cmb4::CnstatCmb4Spec>; pub type CnstatCmb4 = crate::Reg<cnstat_cmb4::CnstatCmb4Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb4; pub mod cnstat_cmb4;
#[doc = "TSTP_CMB4 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb4`] module"] #[doc = "TSTP_CMB4 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb4`]
module"]
#[doc(alias = "TSTP_CMB4")] #[doc(alias = "TSTP_CMB4")]
pub type TstpCmb4 = crate::Reg<tstp_cmb4::TstpCmb4Spec>; pub type TstpCmb4 = crate::Reg<tstp_cmb4::TstpCmb4Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb4; pub mod tstp_cmb4;
#[doc = "DATA3_CMB4 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb4`] module"] #[doc = "DATA3_CMB4 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb4`]
module"]
#[doc(alias = "DATA3_CMB4")] #[doc(alias = "DATA3_CMB4")]
pub type Data3Cmb4 = crate::Reg<data3_cmb4::Data3Cmb4Spec>; pub type Data3Cmb4 = crate::Reg<data3_cmb4::Data3Cmb4Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb4; pub mod data3_cmb4;
#[doc = "DATA2_CMB4 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb4`] module"] #[doc = "DATA2_CMB4 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb4`]
module"]
#[doc(alias = "DATA2_CMB4")] #[doc(alias = "DATA2_CMB4")]
pub type Data2Cmb4 = crate::Reg<data2_cmb4::Data2Cmb4Spec>; pub type Data2Cmb4 = crate::Reg<data2_cmb4::Data2Cmb4Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb4; pub mod data2_cmb4;
#[doc = "DATA1_CMB4 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb4`] module"] #[doc = "DATA1_CMB4 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb4`]
module"]
#[doc(alias = "DATA1_CMB4")] #[doc(alias = "DATA1_CMB4")]
pub type Data1Cmb4 = crate::Reg<data1_cmb4::Data1Cmb4Spec>; pub type Data1Cmb4 = crate::Reg<data1_cmb4::Data1Cmb4Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb4; pub mod data1_cmb4;
#[doc = "DATA0_CMB4 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb4`] module"] #[doc = "DATA0_CMB4 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb4`]
module"]
#[doc(alias = "DATA0_CMB4")] #[doc(alias = "DATA0_CMB4")]
pub type Data0Cmb4 = crate::Reg<data0_cmb4::Data0Cmb4Spec>; pub type Data0Cmb4 = crate::Reg<data0_cmb4::Data0Cmb4Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb4; pub mod data0_cmb4;
#[doc = "ID0_CMB4 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb4`] module"] #[doc = "ID0_CMB4 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb4`]
module"]
#[doc(alias = "ID0_CMB4")] #[doc(alias = "ID0_CMB4")]
pub type Id0Cmb4 = crate::Reg<id0_cmb4::Id0Cmb4Spec>; pub type Id0Cmb4 = crate::Reg<id0_cmb4::Id0Cmb4Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb4; pub mod id0_cmb4;
#[doc = "ID1_CMB4 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb4`] module"] #[doc = "ID1_CMB4 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb4::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb4::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb4`]
module"]
#[doc(alias = "ID1_CMB4")] #[doc(alias = "ID1_CMB4")]
pub type Id1Cmb4 = crate::Reg<id1_cmb4::Id1Cmb4Spec>; pub type Id1Cmb4 = crate::Reg<id1_cmb4::Id1Cmb4Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb4; pub mod id1_cmb4;
#[doc = "CNSTAT_CMB5 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb5`] module"] #[doc = "CNSTAT_CMB5 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb5`]
module"]
#[doc(alias = "CNSTAT_CMB5")] #[doc(alias = "CNSTAT_CMB5")]
pub type CnstatCmb5 = crate::Reg<cnstat_cmb5::CnstatCmb5Spec>; pub type CnstatCmb5 = crate::Reg<cnstat_cmb5::CnstatCmb5Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb5; pub mod cnstat_cmb5;
#[doc = "TSTP_CMB5 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb5`] module"] #[doc = "TSTP_CMB5 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb5`]
module"]
#[doc(alias = "TSTP_CMB5")] #[doc(alias = "TSTP_CMB5")]
pub type TstpCmb5 = crate::Reg<tstp_cmb5::TstpCmb5Spec>; pub type TstpCmb5 = crate::Reg<tstp_cmb5::TstpCmb5Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb5; pub mod tstp_cmb5;
#[doc = "DATA3_CMB5 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb5`] module"] #[doc = "DATA3_CMB5 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb5`]
module"]
#[doc(alias = "DATA3_CMB5")] #[doc(alias = "DATA3_CMB5")]
pub type Data3Cmb5 = crate::Reg<data3_cmb5::Data3Cmb5Spec>; pub type Data3Cmb5 = crate::Reg<data3_cmb5::Data3Cmb5Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb5; pub mod data3_cmb5;
#[doc = "DATA2_CMB5 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb5`] module"] #[doc = "DATA2_CMB5 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb5`]
module"]
#[doc(alias = "DATA2_CMB5")] #[doc(alias = "DATA2_CMB5")]
pub type Data2Cmb5 = crate::Reg<data2_cmb5::Data2Cmb5Spec>; pub type Data2Cmb5 = crate::Reg<data2_cmb5::Data2Cmb5Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb5; pub mod data2_cmb5;
#[doc = "DATA1_CMB5 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb5`] module"] #[doc = "DATA1_CMB5 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb5`]
module"]
#[doc(alias = "DATA1_CMB5")] #[doc(alias = "DATA1_CMB5")]
pub type Data1Cmb5 = crate::Reg<data1_cmb5::Data1Cmb5Spec>; pub type Data1Cmb5 = crate::Reg<data1_cmb5::Data1Cmb5Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb5; pub mod data1_cmb5;
#[doc = "DATA0_CMB5 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb5`] module"] #[doc = "DATA0_CMB5 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb5`]
module"]
#[doc(alias = "DATA0_CMB5")] #[doc(alias = "DATA0_CMB5")]
pub type Data0Cmb5 = crate::Reg<data0_cmb5::Data0Cmb5Spec>; pub type Data0Cmb5 = crate::Reg<data0_cmb5::Data0Cmb5Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb5; pub mod data0_cmb5;
#[doc = "ID0_CMB5 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb5`] module"] #[doc = "ID0_CMB5 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb5`]
module"]
#[doc(alias = "ID0_CMB5")] #[doc(alias = "ID0_CMB5")]
pub type Id0Cmb5 = crate::Reg<id0_cmb5::Id0Cmb5Spec>; pub type Id0Cmb5 = crate::Reg<id0_cmb5::Id0Cmb5Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb5; pub mod id0_cmb5;
#[doc = "ID1_CMB5 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb5`] module"] #[doc = "ID1_CMB5 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb5::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb5::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb5`]
module"]
#[doc(alias = "ID1_CMB5")] #[doc(alias = "ID1_CMB5")]
pub type Id1Cmb5 = crate::Reg<id1_cmb5::Id1Cmb5Spec>; pub type Id1Cmb5 = crate::Reg<id1_cmb5::Id1Cmb5Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb5; pub mod id1_cmb5;
#[doc = "CNSTAT_CMB6 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb6`] module"] #[doc = "CNSTAT_CMB6 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb6`]
module"]
#[doc(alias = "CNSTAT_CMB6")] #[doc(alias = "CNSTAT_CMB6")]
pub type CnstatCmb6 = crate::Reg<cnstat_cmb6::CnstatCmb6Spec>; pub type CnstatCmb6 = crate::Reg<cnstat_cmb6::CnstatCmb6Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb6; pub mod cnstat_cmb6;
#[doc = "TSTP_CMB6 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb6`] module"] #[doc = "TSTP_CMB6 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb6`]
module"]
#[doc(alias = "TSTP_CMB6")] #[doc(alias = "TSTP_CMB6")]
pub type TstpCmb6 = crate::Reg<tstp_cmb6::TstpCmb6Spec>; pub type TstpCmb6 = crate::Reg<tstp_cmb6::TstpCmb6Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb6; pub mod tstp_cmb6;
#[doc = "DATA3_CMB6 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb6`] module"] #[doc = "DATA3_CMB6 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb6`]
module"]
#[doc(alias = "DATA3_CMB6")] #[doc(alias = "DATA3_CMB6")]
pub type Data3Cmb6 = crate::Reg<data3_cmb6::Data3Cmb6Spec>; pub type Data3Cmb6 = crate::Reg<data3_cmb6::Data3Cmb6Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb6; pub mod data3_cmb6;
#[doc = "DATA2_CMB6 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb6`] module"] #[doc = "DATA2_CMB6 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb6`]
module"]
#[doc(alias = "DATA2_CMB6")] #[doc(alias = "DATA2_CMB6")]
pub type Data2Cmb6 = crate::Reg<data2_cmb6::Data2Cmb6Spec>; pub type Data2Cmb6 = crate::Reg<data2_cmb6::Data2Cmb6Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb6; pub mod data2_cmb6;
#[doc = "DATA1_CMB6 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb6`] module"] #[doc = "DATA1_CMB6 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb6`]
module"]
#[doc(alias = "DATA1_CMB6")] #[doc(alias = "DATA1_CMB6")]
pub type Data1Cmb6 = crate::Reg<data1_cmb6::Data1Cmb6Spec>; pub type Data1Cmb6 = crate::Reg<data1_cmb6::Data1Cmb6Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb6; pub mod data1_cmb6;
#[doc = "DATA0_CMB6 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb6`] module"] #[doc = "DATA0_CMB6 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb6`]
module"]
#[doc(alias = "DATA0_CMB6")] #[doc(alias = "DATA0_CMB6")]
pub type Data0Cmb6 = crate::Reg<data0_cmb6::Data0Cmb6Spec>; pub type Data0Cmb6 = crate::Reg<data0_cmb6::Data0Cmb6Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb6; pub mod data0_cmb6;
#[doc = "ID0_CMB6 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb6`] module"] #[doc = "ID0_CMB6 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb6`]
module"]
#[doc(alias = "ID0_CMB6")] #[doc(alias = "ID0_CMB6")]
pub type Id0Cmb6 = crate::Reg<id0_cmb6::Id0Cmb6Spec>; pub type Id0Cmb6 = crate::Reg<id0_cmb6::Id0Cmb6Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb6; pub mod id0_cmb6;
#[doc = "ID1_CMB6 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb6`] module"] #[doc = "ID1_CMB6 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb6::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb6::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb6`]
module"]
#[doc(alias = "ID1_CMB6")] #[doc(alias = "ID1_CMB6")]
pub type Id1Cmb6 = crate::Reg<id1_cmb6::Id1Cmb6Spec>; pub type Id1Cmb6 = crate::Reg<id1_cmb6::Id1Cmb6Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb6; pub mod id1_cmb6;
#[doc = "CNSTAT_CMB7 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb7`] module"] #[doc = "CNSTAT_CMB7 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb7`]
module"]
#[doc(alias = "CNSTAT_CMB7")] #[doc(alias = "CNSTAT_CMB7")]
pub type CnstatCmb7 = crate::Reg<cnstat_cmb7::CnstatCmb7Spec>; pub type CnstatCmb7 = crate::Reg<cnstat_cmb7::CnstatCmb7Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb7; pub mod cnstat_cmb7;
#[doc = "TSTP_CMB7 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb7`] module"] #[doc = "TSTP_CMB7 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb7`]
module"]
#[doc(alias = "TSTP_CMB7")] #[doc(alias = "TSTP_CMB7")]
pub type TstpCmb7 = crate::Reg<tstp_cmb7::TstpCmb7Spec>; pub type TstpCmb7 = crate::Reg<tstp_cmb7::TstpCmb7Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb7; pub mod tstp_cmb7;
#[doc = "DATA3_CMB7 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb7`] module"] #[doc = "DATA3_CMB7 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb7`]
module"]
#[doc(alias = "DATA3_CMB7")] #[doc(alias = "DATA3_CMB7")]
pub type Data3Cmb7 = crate::Reg<data3_cmb7::Data3Cmb7Spec>; pub type Data3Cmb7 = crate::Reg<data3_cmb7::Data3Cmb7Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb7; pub mod data3_cmb7;
#[doc = "DATA2_CMB7 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb7`] module"] #[doc = "DATA2_CMB7 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb7`]
module"]
#[doc(alias = "DATA2_CMB7")] #[doc(alias = "DATA2_CMB7")]
pub type Data2Cmb7 = crate::Reg<data2_cmb7::Data2Cmb7Spec>; pub type Data2Cmb7 = crate::Reg<data2_cmb7::Data2Cmb7Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb7; pub mod data2_cmb7;
#[doc = "DATA1_CMB7 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb7`] module"] #[doc = "DATA1_CMB7 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb7`]
module"]
#[doc(alias = "DATA1_CMB7")] #[doc(alias = "DATA1_CMB7")]
pub type Data1Cmb7 = crate::Reg<data1_cmb7::Data1Cmb7Spec>; pub type Data1Cmb7 = crate::Reg<data1_cmb7::Data1Cmb7Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb7; pub mod data1_cmb7;
#[doc = "DATA0_CMB7 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb7`] module"] #[doc = "DATA0_CMB7 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb7`]
module"]
#[doc(alias = "DATA0_CMB7")] #[doc(alias = "DATA0_CMB7")]
pub type Data0Cmb7 = crate::Reg<data0_cmb7::Data0Cmb7Spec>; pub type Data0Cmb7 = crate::Reg<data0_cmb7::Data0Cmb7Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb7; pub mod data0_cmb7;
#[doc = "ID0_CMB7 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb7`] module"] #[doc = "ID0_CMB7 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb7`]
module"]
#[doc(alias = "ID0_CMB7")] #[doc(alias = "ID0_CMB7")]
pub type Id0Cmb7 = crate::Reg<id0_cmb7::Id0Cmb7Spec>; pub type Id0Cmb7 = crate::Reg<id0_cmb7::Id0Cmb7Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb7; pub mod id0_cmb7;
#[doc = "ID1_CMB7 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb7`] module"] #[doc = "ID1_CMB7 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb7::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb7::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb7`]
module"]
#[doc(alias = "ID1_CMB7")] #[doc(alias = "ID1_CMB7")]
pub type Id1Cmb7 = crate::Reg<id1_cmb7::Id1Cmb7Spec>; pub type Id1Cmb7 = crate::Reg<id1_cmb7::Id1Cmb7Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb7; pub mod id1_cmb7;
#[doc = "CNSTAT_CMB8 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb8`] module"] #[doc = "CNSTAT_CMB8 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb8`]
module"]
#[doc(alias = "CNSTAT_CMB8")] #[doc(alias = "CNSTAT_CMB8")]
pub type CnstatCmb8 = crate::Reg<cnstat_cmb8::CnstatCmb8Spec>; pub type CnstatCmb8 = crate::Reg<cnstat_cmb8::CnstatCmb8Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb8; pub mod cnstat_cmb8;
#[doc = "TSTP_CMB8 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb8`] module"] #[doc = "TSTP_CMB8 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb8`]
module"]
#[doc(alias = "TSTP_CMB8")] #[doc(alias = "TSTP_CMB8")]
pub type TstpCmb8 = crate::Reg<tstp_cmb8::TstpCmb8Spec>; pub type TstpCmb8 = crate::Reg<tstp_cmb8::TstpCmb8Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb8; pub mod tstp_cmb8;
#[doc = "DATA3_CMB8 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb8`] module"] #[doc = "DATA3_CMB8 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb8`]
module"]
#[doc(alias = "DATA3_CMB8")] #[doc(alias = "DATA3_CMB8")]
pub type Data3Cmb8 = crate::Reg<data3_cmb8::Data3Cmb8Spec>; pub type Data3Cmb8 = crate::Reg<data3_cmb8::Data3Cmb8Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb8; pub mod data3_cmb8;
#[doc = "DATA2_CMB8 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb8`] module"] #[doc = "DATA2_CMB8 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb8`]
module"]
#[doc(alias = "DATA2_CMB8")] #[doc(alias = "DATA2_CMB8")]
pub type Data2Cmb8 = crate::Reg<data2_cmb8::Data2Cmb8Spec>; pub type Data2Cmb8 = crate::Reg<data2_cmb8::Data2Cmb8Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb8; pub mod data2_cmb8;
#[doc = "DATA1_CMB8 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb8`] module"] #[doc = "DATA1_CMB8 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb8`]
module"]
#[doc(alias = "DATA1_CMB8")] #[doc(alias = "DATA1_CMB8")]
pub type Data1Cmb8 = crate::Reg<data1_cmb8::Data1Cmb8Spec>; pub type Data1Cmb8 = crate::Reg<data1_cmb8::Data1Cmb8Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb8; pub mod data1_cmb8;
#[doc = "DATA0_CMB8 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb8`] module"] #[doc = "DATA0_CMB8 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb8`]
module"]
#[doc(alias = "DATA0_CMB8")] #[doc(alias = "DATA0_CMB8")]
pub type Data0Cmb8 = crate::Reg<data0_cmb8::Data0Cmb8Spec>; pub type Data0Cmb8 = crate::Reg<data0_cmb8::Data0Cmb8Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb8; pub mod data0_cmb8;
#[doc = "ID0_CMB8 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb8`] module"] #[doc = "ID0_CMB8 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb8`]
module"]
#[doc(alias = "ID0_CMB8")] #[doc(alias = "ID0_CMB8")]
pub type Id0Cmb8 = crate::Reg<id0_cmb8::Id0Cmb8Spec>; pub type Id0Cmb8 = crate::Reg<id0_cmb8::Id0Cmb8Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb8; pub mod id0_cmb8;
#[doc = "ID1_CMB8 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb8`] module"] #[doc = "ID1_CMB8 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb8::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb8::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb8`]
module"]
#[doc(alias = "ID1_CMB8")] #[doc(alias = "ID1_CMB8")]
pub type Id1Cmb8 = crate::Reg<id1_cmb8::Id1Cmb8Spec>; pub type Id1Cmb8 = crate::Reg<id1_cmb8::Id1Cmb8Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb8; pub mod id1_cmb8;
#[doc = "CNSTAT_CMB9 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb9`] module"] #[doc = "CNSTAT_CMB9 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb9`]
module"]
#[doc(alias = "CNSTAT_CMB9")] #[doc(alias = "CNSTAT_CMB9")]
pub type CnstatCmb9 = crate::Reg<cnstat_cmb9::CnstatCmb9Spec>; pub type CnstatCmb9 = crate::Reg<cnstat_cmb9::CnstatCmb9Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb9; pub mod cnstat_cmb9;
#[doc = "TSTP_CMB9 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb9`] module"] #[doc = "TSTP_CMB9 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb9`]
module"]
#[doc(alias = "TSTP_CMB9")] #[doc(alias = "TSTP_CMB9")]
pub type TstpCmb9 = crate::Reg<tstp_cmb9::TstpCmb9Spec>; pub type TstpCmb9 = crate::Reg<tstp_cmb9::TstpCmb9Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb9; pub mod tstp_cmb9;
#[doc = "DATA3_CMB9 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb9`] module"] #[doc = "DATA3_CMB9 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb9`]
module"]
#[doc(alias = "DATA3_CMB9")] #[doc(alias = "DATA3_CMB9")]
pub type Data3Cmb9 = crate::Reg<data3_cmb9::Data3Cmb9Spec>; pub type Data3Cmb9 = crate::Reg<data3_cmb9::Data3Cmb9Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb9; pub mod data3_cmb9;
#[doc = "DATA2_CMB9 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb9`] module"] #[doc = "DATA2_CMB9 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb9`]
module"]
#[doc(alias = "DATA2_CMB9")] #[doc(alias = "DATA2_CMB9")]
pub type Data2Cmb9 = crate::Reg<data2_cmb9::Data2Cmb9Spec>; pub type Data2Cmb9 = crate::Reg<data2_cmb9::Data2Cmb9Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb9; pub mod data2_cmb9;
#[doc = "DATA1_CMB9 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb9`] module"] #[doc = "DATA1_CMB9 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb9`]
module"]
#[doc(alias = "DATA1_CMB9")] #[doc(alias = "DATA1_CMB9")]
pub type Data1Cmb9 = crate::Reg<data1_cmb9::Data1Cmb9Spec>; pub type Data1Cmb9 = crate::Reg<data1_cmb9::Data1Cmb9Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb9; pub mod data1_cmb9;
#[doc = "DATA0_CMB9 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb9`] module"] #[doc = "DATA0_CMB9 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb9`]
module"]
#[doc(alias = "DATA0_CMB9")] #[doc(alias = "DATA0_CMB9")]
pub type Data0Cmb9 = crate::Reg<data0_cmb9::Data0Cmb9Spec>; pub type Data0Cmb9 = crate::Reg<data0_cmb9::Data0Cmb9Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb9; pub mod data0_cmb9;
#[doc = "ID0_CMB9 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb9`] module"] #[doc = "ID0_CMB9 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb9`]
module"]
#[doc(alias = "ID0_CMB9")] #[doc(alias = "ID0_CMB9")]
pub type Id0Cmb9 = crate::Reg<id0_cmb9::Id0Cmb9Spec>; pub type Id0Cmb9 = crate::Reg<id0_cmb9::Id0Cmb9Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb9; pub mod id0_cmb9;
#[doc = "ID1_CMB9 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb9`] module"] #[doc = "ID1_CMB9 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb9::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb9::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb9`]
module"]
#[doc(alias = "ID1_CMB9")] #[doc(alias = "ID1_CMB9")]
pub type Id1Cmb9 = crate::Reg<id1_cmb9::Id1Cmb9Spec>; pub type Id1Cmb9 = crate::Reg<id1_cmb9::Id1Cmb9Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb9; pub mod id1_cmb9;
#[doc = "CNSTAT_CMB10 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb10`] module"] #[doc = "CNSTAT_CMB10 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb10`]
module"]
#[doc(alias = "CNSTAT_CMB10")] #[doc(alias = "CNSTAT_CMB10")]
pub type CnstatCmb10 = crate::Reg<cnstat_cmb10::CnstatCmb10Spec>; pub type CnstatCmb10 = crate::Reg<cnstat_cmb10::CnstatCmb10Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb10; pub mod cnstat_cmb10;
#[doc = "TSTP_CMB10 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb10`] module"] #[doc = "TSTP_CMB10 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb10`]
module"]
#[doc(alias = "TSTP_CMB10")] #[doc(alias = "TSTP_CMB10")]
pub type TstpCmb10 = crate::Reg<tstp_cmb10::TstpCmb10Spec>; pub type TstpCmb10 = crate::Reg<tstp_cmb10::TstpCmb10Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb10; pub mod tstp_cmb10;
#[doc = "DATA3_CMB10 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb10`] module"] #[doc = "DATA3_CMB10 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb10`]
module"]
#[doc(alias = "DATA3_CMB10")] #[doc(alias = "DATA3_CMB10")]
pub type Data3Cmb10 = crate::Reg<data3_cmb10::Data3Cmb10Spec>; pub type Data3Cmb10 = crate::Reg<data3_cmb10::Data3Cmb10Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb10; pub mod data3_cmb10;
#[doc = "DATA2_CMB10 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb10`] module"] #[doc = "DATA2_CMB10 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb10`]
module"]
#[doc(alias = "DATA2_CMB10")] #[doc(alias = "DATA2_CMB10")]
pub type Data2Cmb10 = crate::Reg<data2_cmb10::Data2Cmb10Spec>; pub type Data2Cmb10 = crate::Reg<data2_cmb10::Data2Cmb10Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb10; pub mod data2_cmb10;
#[doc = "DATA1_CMB10 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb10`] module"] #[doc = "DATA1_CMB10 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb10`]
module"]
#[doc(alias = "DATA1_CMB10")] #[doc(alias = "DATA1_CMB10")]
pub type Data1Cmb10 = crate::Reg<data1_cmb10::Data1Cmb10Spec>; pub type Data1Cmb10 = crate::Reg<data1_cmb10::Data1Cmb10Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb10; pub mod data1_cmb10;
#[doc = "DATA0_CMB10 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb10`] module"] #[doc = "DATA0_CMB10 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb10`]
module"]
#[doc(alias = "DATA0_CMB10")] #[doc(alias = "DATA0_CMB10")]
pub type Data0Cmb10 = crate::Reg<data0_cmb10::Data0Cmb10Spec>; pub type Data0Cmb10 = crate::Reg<data0_cmb10::Data0Cmb10Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb10; pub mod data0_cmb10;
#[doc = "ID0_CMB10 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb10`] module"] #[doc = "ID0_CMB10 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb10`]
module"]
#[doc(alias = "ID0_CMB10")] #[doc(alias = "ID0_CMB10")]
pub type Id0Cmb10 = crate::Reg<id0_cmb10::Id0Cmb10Spec>; pub type Id0Cmb10 = crate::Reg<id0_cmb10::Id0Cmb10Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb10; pub mod id0_cmb10;
#[doc = "ID1_CMB10 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb10`] module"] #[doc = "ID1_CMB10 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb10::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb10::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb10`]
module"]
#[doc(alias = "ID1_CMB10")] #[doc(alias = "ID1_CMB10")]
pub type Id1Cmb10 = crate::Reg<id1_cmb10::Id1Cmb10Spec>; pub type Id1Cmb10 = crate::Reg<id1_cmb10::Id1Cmb10Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb10; pub mod id1_cmb10;
#[doc = "CNSTAT_CMB11 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb11`] module"] #[doc = "CNSTAT_CMB11 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb11`]
module"]
#[doc(alias = "CNSTAT_CMB11")] #[doc(alias = "CNSTAT_CMB11")]
pub type CnstatCmb11 = crate::Reg<cnstat_cmb11::CnstatCmb11Spec>; pub type CnstatCmb11 = crate::Reg<cnstat_cmb11::CnstatCmb11Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb11; pub mod cnstat_cmb11;
#[doc = "TSTP_CMB11 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb11`] module"] #[doc = "TSTP_CMB11 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb11`]
module"]
#[doc(alias = "TSTP_CMB11")] #[doc(alias = "TSTP_CMB11")]
pub type TstpCmb11 = crate::Reg<tstp_cmb11::TstpCmb11Spec>; pub type TstpCmb11 = crate::Reg<tstp_cmb11::TstpCmb11Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb11; pub mod tstp_cmb11;
#[doc = "DATA3_CMB11 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb11`] module"] #[doc = "DATA3_CMB11 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb11`]
module"]
#[doc(alias = "DATA3_CMB11")] #[doc(alias = "DATA3_CMB11")]
pub type Data3Cmb11 = crate::Reg<data3_cmb11::Data3Cmb11Spec>; pub type Data3Cmb11 = crate::Reg<data3_cmb11::Data3Cmb11Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb11; pub mod data3_cmb11;
#[doc = "DATA2_CMB11 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb11`] module"] #[doc = "DATA2_CMB11 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb11`]
module"]
#[doc(alias = "DATA2_CMB11")] #[doc(alias = "DATA2_CMB11")]
pub type Data2Cmb11 = crate::Reg<data2_cmb11::Data2Cmb11Spec>; pub type Data2Cmb11 = crate::Reg<data2_cmb11::Data2Cmb11Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb11; pub mod data2_cmb11;
#[doc = "DATA1_CMB11 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb11`] module"] #[doc = "DATA1_CMB11 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb11`]
module"]
#[doc(alias = "DATA1_CMB11")] #[doc(alias = "DATA1_CMB11")]
pub type Data1Cmb11 = crate::Reg<data1_cmb11::Data1Cmb11Spec>; pub type Data1Cmb11 = crate::Reg<data1_cmb11::Data1Cmb11Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb11; pub mod data1_cmb11;
#[doc = "DATA0_CMB11 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb11`] module"] #[doc = "DATA0_CMB11 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb11`]
module"]
#[doc(alias = "DATA0_CMB11")] #[doc(alias = "DATA0_CMB11")]
pub type Data0Cmb11 = crate::Reg<data0_cmb11::Data0Cmb11Spec>; pub type Data0Cmb11 = crate::Reg<data0_cmb11::Data0Cmb11Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb11; pub mod data0_cmb11;
#[doc = "ID0_CMB11 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb11`] module"] #[doc = "ID0_CMB11 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb11`]
module"]
#[doc(alias = "ID0_CMB11")] #[doc(alias = "ID0_CMB11")]
pub type Id0Cmb11 = crate::Reg<id0_cmb11::Id0Cmb11Spec>; pub type Id0Cmb11 = crate::Reg<id0_cmb11::Id0Cmb11Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb11; pub mod id0_cmb11;
#[doc = "ID1_CMB11 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb11`] module"] #[doc = "ID1_CMB11 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb11::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb11::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb11`]
module"]
#[doc(alias = "ID1_CMB11")] #[doc(alias = "ID1_CMB11")]
pub type Id1Cmb11 = crate::Reg<id1_cmb11::Id1Cmb11Spec>; pub type Id1Cmb11 = crate::Reg<id1_cmb11::Id1Cmb11Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb11; pub mod id1_cmb11;
#[doc = "CNSTAT_CMB12 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb12`] module"] #[doc = "CNSTAT_CMB12 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb12`]
module"]
#[doc(alias = "CNSTAT_CMB12")] #[doc(alias = "CNSTAT_CMB12")]
pub type CnstatCmb12 = crate::Reg<cnstat_cmb12::CnstatCmb12Spec>; pub type CnstatCmb12 = crate::Reg<cnstat_cmb12::CnstatCmb12Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb12; pub mod cnstat_cmb12;
#[doc = "TSTP_CMB12 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb12`] module"] #[doc = "TSTP_CMB12 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb12`]
module"]
#[doc(alias = "TSTP_CMB12")] #[doc(alias = "TSTP_CMB12")]
pub type TstpCmb12 = crate::Reg<tstp_cmb12::TstpCmb12Spec>; pub type TstpCmb12 = crate::Reg<tstp_cmb12::TstpCmb12Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb12; pub mod tstp_cmb12;
#[doc = "DATA3_CMB12 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb12`] module"] #[doc = "DATA3_CMB12 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb12`]
module"]
#[doc(alias = "DATA3_CMB12")] #[doc(alias = "DATA3_CMB12")]
pub type Data3Cmb12 = crate::Reg<data3_cmb12::Data3Cmb12Spec>; pub type Data3Cmb12 = crate::Reg<data3_cmb12::Data3Cmb12Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb12; pub mod data3_cmb12;
#[doc = "DATA2_CMB12 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb12`] module"] #[doc = "DATA2_CMB12 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb12`]
module"]
#[doc(alias = "DATA2_CMB12")] #[doc(alias = "DATA2_CMB12")]
pub type Data2Cmb12 = crate::Reg<data2_cmb12::Data2Cmb12Spec>; pub type Data2Cmb12 = crate::Reg<data2_cmb12::Data2Cmb12Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb12; pub mod data2_cmb12;
#[doc = "DATA1_CMB12 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb12`] module"] #[doc = "DATA1_CMB12 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb12`]
module"]
#[doc(alias = "DATA1_CMB12")] #[doc(alias = "DATA1_CMB12")]
pub type Data1Cmb12 = crate::Reg<data1_cmb12::Data1Cmb12Spec>; pub type Data1Cmb12 = crate::Reg<data1_cmb12::Data1Cmb12Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb12; pub mod data1_cmb12;
#[doc = "DATA0_CMB12 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb12`] module"] #[doc = "DATA0_CMB12 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb12`]
module"]
#[doc(alias = "DATA0_CMB12")] #[doc(alias = "DATA0_CMB12")]
pub type Data0Cmb12 = crate::Reg<data0_cmb12::Data0Cmb12Spec>; pub type Data0Cmb12 = crate::Reg<data0_cmb12::Data0Cmb12Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb12; pub mod data0_cmb12;
#[doc = "ID0_CMB12 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb12`] module"] #[doc = "ID0_CMB12 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb12`]
module"]
#[doc(alias = "ID0_CMB12")] #[doc(alias = "ID0_CMB12")]
pub type Id0Cmb12 = crate::Reg<id0_cmb12::Id0Cmb12Spec>; pub type Id0Cmb12 = crate::Reg<id0_cmb12::Id0Cmb12Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb12; pub mod id0_cmb12;
#[doc = "ID1_CMB12 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb12`] module"] #[doc = "ID1_CMB12 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb12::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb12::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb12`]
module"]
#[doc(alias = "ID1_CMB12")] #[doc(alias = "ID1_CMB12")]
pub type Id1Cmb12 = crate::Reg<id1_cmb12::Id1Cmb12Spec>; pub type Id1Cmb12 = crate::Reg<id1_cmb12::Id1Cmb12Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb12; pub mod id1_cmb12;
#[doc = "CNSTAT_CMB13 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb13`] module"] #[doc = "CNSTAT_CMB13 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb13`]
module"]
#[doc(alias = "CNSTAT_CMB13")] #[doc(alias = "CNSTAT_CMB13")]
pub type CnstatCmb13 = crate::Reg<cnstat_cmb13::CnstatCmb13Spec>; pub type CnstatCmb13 = crate::Reg<cnstat_cmb13::CnstatCmb13Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb13; pub mod cnstat_cmb13;
#[doc = "TSTP_CMB13 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb13`] module"] #[doc = "TSTP_CMB13 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb13`]
module"]
#[doc(alias = "TSTP_CMB13")] #[doc(alias = "TSTP_CMB13")]
pub type TstpCmb13 = crate::Reg<tstp_cmb13::TstpCmb13Spec>; pub type TstpCmb13 = crate::Reg<tstp_cmb13::TstpCmb13Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb13; pub mod tstp_cmb13;
#[doc = "DATA3_CMB13 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb13`] module"] #[doc = "DATA3_CMB13 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb13`]
module"]
#[doc(alias = "DATA3_CMB13")] #[doc(alias = "DATA3_CMB13")]
pub type Data3Cmb13 = crate::Reg<data3_cmb13::Data3Cmb13Spec>; pub type Data3Cmb13 = crate::Reg<data3_cmb13::Data3Cmb13Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb13; pub mod data3_cmb13;
#[doc = "DATA2_CMB13 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb13`] module"] #[doc = "DATA2_CMB13 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb13`]
module"]
#[doc(alias = "DATA2_CMB13")] #[doc(alias = "DATA2_CMB13")]
pub type Data2Cmb13 = crate::Reg<data2_cmb13::Data2Cmb13Spec>; pub type Data2Cmb13 = crate::Reg<data2_cmb13::Data2Cmb13Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb13; pub mod data2_cmb13;
#[doc = "DATA1_CMB13 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb13`] module"] #[doc = "DATA1_CMB13 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb13`]
module"]
#[doc(alias = "DATA1_CMB13")] #[doc(alias = "DATA1_CMB13")]
pub type Data1Cmb13 = crate::Reg<data1_cmb13::Data1Cmb13Spec>; pub type Data1Cmb13 = crate::Reg<data1_cmb13::Data1Cmb13Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb13; pub mod data1_cmb13;
#[doc = "DATA0_CMB13 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb13`] module"] #[doc = "DATA0_CMB13 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb13`]
module"]
#[doc(alias = "DATA0_CMB13")] #[doc(alias = "DATA0_CMB13")]
pub type Data0Cmb13 = crate::Reg<data0_cmb13::Data0Cmb13Spec>; pub type Data0Cmb13 = crate::Reg<data0_cmb13::Data0Cmb13Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb13; pub mod data0_cmb13;
#[doc = "ID0_CMB13 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb13`] module"] #[doc = "ID0_CMB13 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb13`]
module"]
#[doc(alias = "ID0_CMB13")] #[doc(alias = "ID0_CMB13")]
pub type Id0Cmb13 = crate::Reg<id0_cmb13::Id0Cmb13Spec>; pub type Id0Cmb13 = crate::Reg<id0_cmb13::Id0Cmb13Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb13; pub mod id0_cmb13;
#[doc = "ID1_CMB13 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb13`] module"] #[doc = "ID1_CMB13 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb13::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb13::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb13`]
module"]
#[doc(alias = "ID1_CMB13")] #[doc(alias = "ID1_CMB13")]
pub type Id1Cmb13 = crate::Reg<id1_cmb13::Id1Cmb13Spec>; pub type Id1Cmb13 = crate::Reg<id1_cmb13::Id1Cmb13Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb13; pub mod id1_cmb13;
#[doc = "CNSTAT_CMB14 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb14`] module"] #[doc = "CNSTAT_CMB14 (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_cmb14`]
module"]
#[doc(alias = "CNSTAT_CMB14")] #[doc(alias = "CNSTAT_CMB14")]
pub type CnstatCmb14 = crate::Reg<cnstat_cmb14::CnstatCmb14Spec>; pub type CnstatCmb14 = crate::Reg<cnstat_cmb14::CnstatCmb14Spec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_cmb14; pub mod cnstat_cmb14;
#[doc = "TSTP_CMB14 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb14`] module"] #[doc = "TSTP_CMB14 (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_cmb14`]
module"]
#[doc(alias = "TSTP_CMB14")] #[doc(alias = "TSTP_CMB14")]
pub type TstpCmb14 = crate::Reg<tstp_cmb14::TstpCmb14Spec>; pub type TstpCmb14 = crate::Reg<tstp_cmb14::TstpCmb14Spec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_cmb14; pub mod tstp_cmb14;
#[doc = "DATA3_CMB14 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb14`] module"] #[doc = "DATA3_CMB14 (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_cmb14`]
module"]
#[doc(alias = "DATA3_CMB14")] #[doc(alias = "DATA3_CMB14")]
pub type Data3Cmb14 = crate::Reg<data3_cmb14::Data3Cmb14Spec>; pub type Data3Cmb14 = crate::Reg<data3_cmb14::Data3Cmb14Spec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_cmb14; pub mod data3_cmb14;
#[doc = "DATA2_CMB14 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb14`] module"] #[doc = "DATA2_CMB14 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_cmb14`]
module"]
#[doc(alias = "DATA2_CMB14")] #[doc(alias = "DATA2_CMB14")]
pub type Data2Cmb14 = crate::Reg<data2_cmb14::Data2Cmb14Spec>; pub type Data2Cmb14 = crate::Reg<data2_cmb14::Data2Cmb14Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_cmb14; pub mod data2_cmb14;
#[doc = "DATA1_CMB14 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb14`] module"] #[doc = "DATA1_CMB14 (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_cmb14`]
module"]
#[doc(alias = "DATA1_CMB14")] #[doc(alias = "DATA1_CMB14")]
pub type Data1Cmb14 = crate::Reg<data1_cmb14::Data1Cmb14Spec>; pub type Data1Cmb14 = crate::Reg<data1_cmb14::Data1Cmb14Spec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_cmb14; pub mod data1_cmb14;
#[doc = "DATA0_CMB14 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb14`] module"] #[doc = "DATA0_CMB14 (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_cmb14`]
module"]
#[doc(alias = "DATA0_CMB14")] #[doc(alias = "DATA0_CMB14")]
pub type Data0Cmb14 = crate::Reg<data0_cmb14::Data0Cmb14Spec>; pub type Data0Cmb14 = crate::Reg<data0_cmb14::Data0Cmb14Spec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_cmb14; pub mod data0_cmb14;
#[doc = "ID0_CMB14 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb14`] module"] #[doc = "ID0_CMB14 (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_cmb14`]
module"]
#[doc(alias = "ID0_CMB14")] #[doc(alias = "ID0_CMB14")]
pub type Id0Cmb14 = crate::Reg<id0_cmb14::Id0Cmb14Spec>; pub type Id0Cmb14 = crate::Reg<id0_cmb14::Id0Cmb14Spec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_cmb14; pub mod id0_cmb14;
#[doc = "ID1_CMB14 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb14`] module"] #[doc = "ID1_CMB14 (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_cmb14::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_cmb14::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_cmb14`]
module"]
#[doc(alias = "ID1_CMB14")] #[doc(alias = "ID1_CMB14")]
pub type Id1Cmb14 = crate::Reg<id1_cmb14::Id1Cmb14Spec>; pub type Id1Cmb14 = crate::Reg<id1_cmb14::Id1Cmb14Spec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_cmb14; pub mod id1_cmb14;
#[doc = "CNSTAT_HCMB (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_hcmb`] module"] #[doc = "CNSTAT_HCMB (rw) register accessor: Buffer Status / Control Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cnstat_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cnstat_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cnstat_hcmb`]
module"]
#[doc(alias = "CNSTAT_HCMB")] #[doc(alias = "CNSTAT_HCMB")]
pub type CnstatHcmb = crate::Reg<cnstat_hcmb::CnstatHcmbSpec>; pub type CnstatHcmb = crate::Reg<cnstat_hcmb::CnstatHcmbSpec>;
#[doc = "Buffer Status / Control Register"] #[doc = "Buffer Status / Control Register"]
pub mod cnstat_hcmb; pub mod cnstat_hcmb;
#[doc = "TSTP_HCMB (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_hcmb`] module"] #[doc = "TSTP_HCMB (rw) register accessor: CAN Frame Timestamp\n\nYou can [`read`](crate::Reg::read) this register and get [`tstp_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`tstp_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@tstp_hcmb`]
module"]
#[doc(alias = "TSTP_HCMB")] #[doc(alias = "TSTP_HCMB")]
pub type TstpHcmb = crate::Reg<tstp_hcmb::TstpHcmbSpec>; pub type TstpHcmb = crate::Reg<tstp_hcmb::TstpHcmbSpec>;
#[doc = "CAN Frame Timestamp"] #[doc = "CAN Frame Timestamp"]
pub mod tstp_hcmb; pub mod tstp_hcmb;
#[doc = "DATA3_HCMB (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_hcmb`] module"] #[doc = "DATA3_HCMB (rw) register accessor: CAN Frame Data Word 3\n\nYou can [`read`](crate::Reg::read) this register and get [`data3_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data3_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data3_hcmb`]
module"]
#[doc(alias = "DATA3_HCMB")] #[doc(alias = "DATA3_HCMB")]
pub type Data3Hcmb = crate::Reg<data3_hcmb::Data3HcmbSpec>; pub type Data3Hcmb = crate::Reg<data3_hcmb::Data3HcmbSpec>;
#[doc = "CAN Frame Data Word 3"] #[doc = "CAN Frame Data Word 3"]
pub mod data3_hcmb; pub mod data3_hcmb;
#[doc = "DATA2_HCMB (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_hcmb`] module"] #[doc = "DATA2_HCMB (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data2_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data2_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data2_hcmb`]
module"]
#[doc(alias = "DATA2_HCMB")] #[doc(alias = "DATA2_HCMB")]
pub type Data2Hcmb = crate::Reg<data2_hcmb::Data2HcmbSpec>; pub type Data2Hcmb = crate::Reg<data2_hcmb::Data2HcmbSpec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data2_hcmb; pub mod data2_hcmb;
#[doc = "DATA1_HCMB (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_hcmb`] module"] #[doc = "DATA1_HCMB (rw) register accessor: CAN Frame Data Word 2\n\nYou can [`read`](crate::Reg::read) this register and get [`data1_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data1_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data1_hcmb`]
module"]
#[doc(alias = "DATA1_HCMB")] #[doc(alias = "DATA1_HCMB")]
pub type Data1Hcmb = crate::Reg<data1_hcmb::Data1HcmbSpec>; pub type Data1Hcmb = crate::Reg<data1_hcmb::Data1HcmbSpec>;
#[doc = "CAN Frame Data Word 2"] #[doc = "CAN Frame Data Word 2"]
pub mod data1_hcmb; pub mod data1_hcmb;
#[doc = "DATA0_HCMB (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_hcmb`] module"] #[doc = "DATA0_HCMB (rw) register accessor: CAN Frame Data Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`data0_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`data0_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data0_hcmb`]
module"]
#[doc(alias = "DATA0_HCMB")] #[doc(alias = "DATA0_HCMB")]
pub type Data0Hcmb = crate::Reg<data0_hcmb::Data0HcmbSpec>; pub type Data0Hcmb = crate::Reg<data0_hcmb::Data0HcmbSpec>;
#[doc = "CAN Frame Data Word 0"] #[doc = "CAN Frame Data Word 0"]
pub mod data0_hcmb; pub mod data0_hcmb;
#[doc = "ID0_HCMB (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_hcmb`] module"] #[doc = "ID0_HCMB (rw) register accessor: CAN Frame Identifier Word 0\n\nYou can [`read`](crate::Reg::read) this register and get [`id0_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id0_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id0_hcmb`]
module"]
#[doc(alias = "ID0_HCMB")] #[doc(alias = "ID0_HCMB")]
pub type Id0Hcmb = crate::Reg<id0_hcmb::Id0HcmbSpec>; pub type Id0Hcmb = crate::Reg<id0_hcmb::Id0HcmbSpec>;
#[doc = "CAN Frame Identifier Word 0"] #[doc = "CAN Frame Identifier Word 0"]
pub mod id0_hcmb; pub mod id0_hcmb;
#[doc = "ID1_HCMB (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_hcmb`] module"] #[doc = "ID1_HCMB (rw) register accessor: CAN Frame Identifier Word 1\n\nYou can [`read`](crate::Reg::read) this register and get [`id1_hcmb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`id1_hcmb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@id1_hcmb`]
module"]
#[doc(alias = "ID1_HCMB")] #[doc(alias = "ID1_HCMB")]
pub type Id1Hcmb = crate::Reg<id1_hcmb::Id1HcmbSpec>; pub type Id1Hcmb = crate::Reg<id1_hcmb::Id1HcmbSpec>;
#[doc = "CAN Frame Identifier Word 1"] #[doc = "CAN Frame Identifier Word 1"]
pub mod id1_hcmb; pub mod id1_hcmb;
#[doc = "CGCR (rw) register accessor: CAN Global Configuration Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cgcr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cgcr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cgcr`] module"] #[doc = "CGCR (rw) register accessor: CAN Global Configuration Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cgcr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cgcr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cgcr`]
module"]
#[doc(alias = "CGCR")] #[doc(alias = "CGCR")]
pub type Cgcr = crate::Reg<cgcr::CgcrSpec>; pub type Cgcr = crate::Reg<cgcr::CgcrSpec>;
#[doc = "CAN Global Configuration Register"] #[doc = "CAN Global Configuration Register"]
pub mod cgcr; pub mod cgcr;
#[doc = "CTIM (rw) register accessor: CAN Timing Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ctim::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctim::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ctim`] module"] #[doc = "CTIM (rw) register accessor: CAN Timing Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ctim::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctim::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ctim`]
module"]
#[doc(alias = "CTIM")] #[doc(alias = "CTIM")]
pub type Ctim = crate::Reg<ctim::CtimSpec>; pub type Ctim = crate::Reg<ctim::CtimSpec>;
#[doc = "CAN Timing Register"] #[doc = "CAN Timing Register"]
pub mod ctim; pub mod ctim;
#[doc = "GMSKX (rw) register accessor: CAN Global Mask Extension\n\nYou can [`read`](crate::Reg::read) this register and get [`gmskx::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`gmskx::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@gmskx`] module"] #[doc = "GMSKX (rw) register accessor: CAN Global Mask Extension\n\nYou can [`read`](crate::Reg::read) this register and get [`gmskx::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`gmskx::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@gmskx`]
module"]
#[doc(alias = "GMSKX")] #[doc(alias = "GMSKX")]
pub type Gmskx = crate::Reg<gmskx::GmskxSpec>; pub type Gmskx = crate::Reg<gmskx::GmskxSpec>;
#[doc = "CAN Global Mask Extension"] #[doc = "CAN Global Mask Extension"]
pub mod gmskx; pub mod gmskx;
#[doc = "GMSKB (rw) register accessor: CAN Global Mask Base\n\nYou can [`read`](crate::Reg::read) this register and get [`gmskb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`gmskb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@gmskb`] module"] #[doc = "GMSKB (rw) register accessor: CAN Global Mask Base\n\nYou can [`read`](crate::Reg::read) this register and get [`gmskb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`gmskb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@gmskb`]
module"]
#[doc(alias = "GMSKB")] #[doc(alias = "GMSKB")]
pub type Gmskb = crate::Reg<gmskb::GmskbSpec>; pub type Gmskb = crate::Reg<gmskb::GmskbSpec>;
#[doc = "CAN Global Mask Base"] #[doc = "CAN Global Mask Base"]
pub mod gmskb; pub mod gmskb;
#[doc = "BMSKX (rw) register accessor: CAN Basic Mask Extension\n\nYou can [`read`](crate::Reg::read) this register and get [`bmskx::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`bmskx::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@bmskx`] module"] #[doc = "BMSKX (rw) register accessor: CAN Basic Mask Extension\n\nYou can [`read`](crate::Reg::read) this register and get [`bmskx::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`bmskx::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@bmskx`]
module"]
#[doc(alias = "BMSKX")] #[doc(alias = "BMSKX")]
pub type Bmskx = crate::Reg<bmskx::BmskxSpec>; pub type Bmskx = crate::Reg<bmskx::BmskxSpec>;
#[doc = "CAN Basic Mask Extension"] #[doc = "CAN Basic Mask Extension"]
pub mod bmskx; pub mod bmskx;
#[doc = "BMSKB (rw) register accessor: CAN Basic Mask Base\n\nYou can [`read`](crate::Reg::read) this register and get [`bmskb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`bmskb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@bmskb`] module"] #[doc = "BMSKB (rw) register accessor: CAN Basic Mask Base\n\nYou can [`read`](crate::Reg::read) this register and get [`bmskb::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`bmskb::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@bmskb`]
module"]
#[doc(alias = "BMSKB")] #[doc(alias = "BMSKB")]
pub type Bmskb = crate::Reg<bmskb::BmskbSpec>; pub type Bmskb = crate::Reg<bmskb::BmskbSpec>;
#[doc = "CAN Basic Mask Base"] #[doc = "CAN Basic Mask Base"]
pub mod bmskb; pub mod bmskb;
#[doc = "CIEN (rw) register accessor: CAN Interrupt Enable Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cien::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cien::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cien`] module"] #[doc = "CIEN (rw) register accessor: CAN Interrupt Enable Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cien::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cien::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cien`]
module"]
#[doc(alias = "CIEN")] #[doc(alias = "CIEN")]
pub type Cien = crate::Reg<cien::CienSpec>; pub type Cien = crate::Reg<cien::CienSpec>;
#[doc = "CAN Interrupt Enable Register"] #[doc = "CAN Interrupt Enable Register"]
pub mod cien; pub mod cien;
#[doc = "CIPND (rw) register accessor: CAN Interrupt Pending Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cipnd::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cipnd::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cipnd`] module"] #[doc = "CIPND (rw) register accessor: CAN Interrupt Pending Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cipnd::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cipnd::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cipnd`]
module"]
#[doc(alias = "CIPND")] #[doc(alias = "CIPND")]
pub type Cipnd = crate::Reg<cipnd::CipndSpec>; pub type Cipnd = crate::Reg<cipnd::CipndSpec>;
#[doc = "CAN Interrupt Pending Register"] #[doc = "CAN Interrupt Pending Register"]
pub mod cipnd; pub mod cipnd;
#[doc = "CICLR (rw) register accessor: CAN Interrupt Clear Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ciclr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ciclr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ciclr`] module"] #[doc = "CICLR (rw) register accessor: CAN Interrupt Clear Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ciclr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ciclr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ciclr`]
module"]
#[doc(alias = "CICLR")] #[doc(alias = "CICLR")]
pub type Ciclr = crate::Reg<ciclr::CiclrSpec>; pub type Ciclr = crate::Reg<ciclr::CiclrSpec>;
#[doc = "CAN Interrupt Clear Register"] #[doc = "CAN Interrupt Clear Register"]
pub mod ciclr; pub mod ciclr;
#[doc = "CICEN (rw) register accessor: CAN Interrupt Code Enable Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cicen::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cicen::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cicen`] module"] #[doc = "CICEN (rw) register accessor: CAN Interrupt Code Enable Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cicen::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cicen::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cicen`]
module"]
#[doc(alias = "CICEN")] #[doc(alias = "CICEN")]
pub type Cicen = crate::Reg<cicen::CicenSpec>; pub type Cicen = crate::Reg<cicen::CicenSpec>;
#[doc = "CAN Interrupt Code Enable Register"] #[doc = "CAN Interrupt Code Enable Register"]
pub mod cicen; pub mod cicen;
#[doc = "CSTPND (rw) register accessor: CAN Status Pending Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cstpnd::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cstpnd::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cstpnd`] module"] #[doc = "CSTPND (rw) register accessor: CAN Status Pending Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cstpnd::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cstpnd::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cstpnd`]
module"]
#[doc(alias = "CSTPND")] #[doc(alias = "CSTPND")]
pub type Cstpnd = crate::Reg<cstpnd::CstpndSpec>; pub type Cstpnd = crate::Reg<cstpnd::CstpndSpec>;
#[doc = "CAN Status Pending Register"] #[doc = "CAN Status Pending Register"]
pub mod cstpnd; pub mod cstpnd;
#[doc = "CANEC (rw) register accessor: CAN Error Counter Register\n\nYou can [`read`](crate::Reg::read) this register and get [`canec::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`canec::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@canec`] module"] #[doc = "CANEC (rw) register accessor: CAN Error Counter Register\n\nYou can [`read`](crate::Reg::read) this register and get [`canec::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`canec::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@canec`]
module"]
#[doc(alias = "CANEC")] #[doc(alias = "CANEC")]
pub type Canec = crate::Reg<canec::CanecSpec>; pub type Canec = crate::Reg<canec::CanecSpec>;
#[doc = "CAN Error Counter Register"] #[doc = "CAN Error Counter Register"]
pub mod canec; pub mod canec;
#[doc = "CEDIAG (rw) register accessor: CAN Error Diagnostic Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cediag::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cediag::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cediag`] module"] #[doc = "CEDIAG (rw) register accessor: CAN Error Diagnostic Register\n\nYou can [`read`](crate::Reg::read) this register and get [`cediag::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`cediag::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@cediag`]
module"]
#[doc(alias = "CEDIAG")] #[doc(alias = "CEDIAG")]
pub type Cediag = crate::Reg<cediag::CediagSpec>; pub type Cediag = crate::Reg<cediag::CediagSpec>;
#[doc = "CAN Error Diagnostic Register"] #[doc = "CAN Error Diagnostic Register"]
pub mod cediag; pub mod cediag;
#[doc = "CTMR (rw) register accessor: CAN Timer Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ctmr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctmr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ctmr`] module"] #[doc = "CTMR (rw) register accessor: CAN Timer Register\n\nYou can [`read`](crate::Reg::read) this register and get [`ctmr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`ctmr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@ctmr`]
module"]
#[doc(alias = "CTMR")] #[doc(alias = "CTMR")]
pub type Ctmr = crate::Reg<ctmr::CtmrSpec>; pub type Ctmr = crate::Reg<ctmr::CtmrSpec>;
#[doc = "CAN Timer Register"] #[doc = "CAN Timer Register"]

View File

@@ -2,9 +2,13 @@
pub type R = crate::R<BmskbSpec>; pub type R = crate::R<BmskbSpec>;
#[doc = "Register `BMSKB` writer"] #[doc = "Register `BMSKB` writer"]
pub type W = crate::W<BmskbSpec>; pub type W = crate::W<BmskbSpec>;
#[doc = "Field `BM0` reader - BM\\[17:15\\] - Unused in standard, ID\\[17:15\\] in extended"] #[doc = "Field `BM0` reader - BM\\[17:15\\]
- Unused in standard, ID\\[17:15\\]
in extended"]
pub type Bm0R = crate::FieldReader; pub type Bm0R = crate::FieldReader;
#[doc = "Field `BM0` writer - BM\\[17:15\\] - Unused in standard, ID\\[17:15\\] in extended"] #[doc = "Field `BM0` writer - BM\\[17:15\\]
- Unused in standard, ID\\[17:15\\]
in extended"]
pub type Bm0W<'a, REG> = crate::FieldWriter<'a, REG, 3>; pub type Bm0W<'a, REG> = crate::FieldWriter<'a, REG, 3>;
#[doc = "Field `IDE` reader - Identifier Extension Bit"] #[doc = "Field `IDE` reader - Identifier Extension Bit"]
pub type IdeR = crate::BitReader; pub type IdeR = crate::BitReader;
@@ -14,12 +18,20 @@ pub type IdeW<'a, REG> = crate::BitWriter<'a, REG>;
pub type RtrR = crate::BitReader; pub type RtrR = crate::BitReader;
#[doc = "Field `RTR` writer - Remote Transmission Request in Standard, Substitute Remote Request (SRR) in extended"] #[doc = "Field `RTR` writer - Remote Transmission Request in Standard, Substitute Remote Request (SRR) in extended"]
pub type RtrW<'a, REG> = crate::BitWriter<'a, REG>; pub type RtrW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `BM1` reader - BM\\[28:18\\] - ID\\[10:0\\] in standard, ID\\[28:18\\] in extended"] #[doc = "Field `BM1` reader - BM\\[28:18\\]
- ID\\[10:0\\]
in standard, ID\\[28:18\\]
in extended"]
pub type Bm1R = crate::FieldReader<u16>; pub type Bm1R = crate::FieldReader<u16>;
#[doc = "Field `BM1` writer - BM\\[28:18\\] - ID\\[10:0\\] in standard, ID\\[28:18\\] in extended"] #[doc = "Field `BM1` writer - BM\\[28:18\\]
- ID\\[10:0\\]
in standard, ID\\[28:18\\]
in extended"]
pub type Bm1W<'a, REG> = crate::FieldWriter<'a, REG, 11, u16>; pub type Bm1W<'a, REG> = crate::FieldWriter<'a, REG, 11, u16>;
impl R { impl R {
#[doc = "Bits 0:2 - BM\\[17:15\\] - Unused in standard, ID\\[17:15\\] in extended"] #[doc = "Bits 0:2 - BM\\[17:15\\]
- Unused in standard, ID\\[17:15\\]
in extended"]
#[inline(always)] #[inline(always)]
pub fn bm0(&self) -> Bm0R { pub fn bm0(&self) -> Bm0R {
Bm0R::new((self.bits & 7) as u8) Bm0R::new((self.bits & 7) as u8)
@@ -34,31 +46,39 @@ impl R {
pub fn rtr(&self) -> RtrR { pub fn rtr(&self) -> RtrR {
RtrR::new(((self.bits >> 4) & 1) != 0) RtrR::new(((self.bits >> 4) & 1) != 0)
} }
#[doc = "Bits 5:15 - BM\\[28:18\\] - ID\\[10:0\\] in standard, ID\\[28:18\\] in extended"] #[doc = "Bits 5:15 - BM\\[28:18\\]
- ID\\[10:0\\]
in standard, ID\\[28:18\\]
in extended"]
#[inline(always)] #[inline(always)]
pub fn bm1(&self) -> Bm1R { pub fn bm1(&self) -> Bm1R {
Bm1R::new(((self.bits >> 5) & 0x07ff) as u16) Bm1R::new(((self.bits >> 5) & 0x07ff) as u16)
} }
} }
impl W { impl W {
#[doc = "Bits 0:2 - BM\\[17:15\\] - Unused in standard, ID\\[17:15\\] in extended"] #[doc = "Bits 0:2 - BM\\[17:15\\]
- Unused in standard, ID\\[17:15\\]
in extended"]
#[inline(always)] #[inline(always)]
pub fn bm0(&mut self) -> Bm0W<'_, BmskbSpec> { pub fn bm0(&mut self) -> Bm0W<BmskbSpec> {
Bm0W::new(self, 0) Bm0W::new(self, 0)
} }
#[doc = "Bit 3 - Identifier Extension Bit"] #[doc = "Bit 3 - Identifier Extension Bit"]
#[inline(always)] #[inline(always)]
pub fn ide(&mut self) -> IdeW<'_, BmskbSpec> { pub fn ide(&mut self) -> IdeW<BmskbSpec> {
IdeW::new(self, 3) IdeW::new(self, 3)
} }
#[doc = "Bit 4 - Remote Transmission Request in Standard, Substitute Remote Request (SRR) in extended"] #[doc = "Bit 4 - Remote Transmission Request in Standard, Substitute Remote Request (SRR) in extended"]
#[inline(always)] #[inline(always)]
pub fn rtr(&mut self) -> RtrW<'_, BmskbSpec> { pub fn rtr(&mut self) -> RtrW<BmskbSpec> {
RtrW::new(self, 4) RtrW::new(self, 4)
} }
#[doc = "Bits 5:15 - BM\\[28:18\\] - ID\\[10:0\\] in standard, ID\\[28:18\\] in extended"] #[doc = "Bits 5:15 - BM\\[28:18\\]
- ID\\[10:0\\]
in standard, ID\\[28:18\\]
in extended"]
#[inline(always)] #[inline(always)]
pub fn bm1(&mut self) -> Bm1W<'_, BmskbSpec> { pub fn bm1(&mut self) -> Bm1W<BmskbSpec> {
Bm1W::new(self, 5) Bm1W::new(self, 5)
} }
} }
@@ -72,6 +92,10 @@ impl crate::Readable for BmskbSpec {}
#[doc = "`write(|w| ..)` method takes [`bmskb::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`bmskb::W`](W) writer structure"]
impl crate::Writable for BmskbSpec { impl crate::Writable for BmskbSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets BMSKB to value 0"] #[doc = "`reset()` method sets BMSKB to value 0"]
impl crate::Resettable for BmskbSpec {} impl crate::Resettable for BmskbSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -6,9 +6,13 @@ pub type W = crate::W<BmskxSpec>;
pub type XrtrR = crate::BitReader; pub type XrtrR = crate::BitReader;
#[doc = "Field `XRTR` writer - Extended Remote transmission Request Bit"] #[doc = "Field `XRTR` writer - Extended Remote transmission Request Bit"]
pub type XrtrW<'a, REG> = crate::BitWriter<'a, REG>; pub type XrtrW<'a, REG> = crate::BitWriter<'a, REG>;
#[doc = "Field `BM` reader - BM\\[14:0\\] used when an extended frame is received. ID\\[14:0\\] in extended, unused standard"] #[doc = "Field `BM` reader - BM\\[14:0\\]
used when an extended frame is received. ID\\[14:0\\]
in extended, unused standard"]
pub type BmR = crate::FieldReader<u16>; pub type BmR = crate::FieldReader<u16>;
#[doc = "Field `BM` writer - BM\\[14:0\\] used when an extended frame is received. ID\\[14:0\\] in extended, unused standard"] #[doc = "Field `BM` writer - BM\\[14:0\\]
used when an extended frame is received. ID\\[14:0\\]
in extended, unused standard"]
pub type BmW<'a, REG> = crate::FieldWriter<'a, REG, 15, u16>; pub type BmW<'a, REG> = crate::FieldWriter<'a, REG, 15, u16>;
impl R { impl R {
#[doc = "Bit 0 - Extended Remote transmission Request Bit"] #[doc = "Bit 0 - Extended Remote transmission Request Bit"]
@@ -16,7 +20,9 @@ impl R {
pub fn xrtr(&self) -> XrtrR { pub fn xrtr(&self) -> XrtrR {
XrtrR::new((self.bits & 1) != 0) XrtrR::new((self.bits & 1) != 0)
} }
#[doc = "Bits 1:15 - BM\\[14:0\\] used when an extended frame is received. ID\\[14:0\\] in extended, unused standard"] #[doc = "Bits 1:15 - BM\\[14:0\\]
used when an extended frame is received. ID\\[14:0\\]
in extended, unused standard"]
#[inline(always)] #[inline(always)]
pub fn bm(&self) -> BmR { pub fn bm(&self) -> BmR {
BmR::new(((self.bits >> 1) & 0x7fff) as u16) BmR::new(((self.bits >> 1) & 0x7fff) as u16)
@@ -25,12 +31,14 @@ impl R {
impl W { impl W {
#[doc = "Bit 0 - Extended Remote transmission Request Bit"] #[doc = "Bit 0 - Extended Remote transmission Request Bit"]
#[inline(always)] #[inline(always)]
pub fn xrtr(&mut self) -> XrtrW<'_, BmskxSpec> { pub fn xrtr(&mut self) -> XrtrW<BmskxSpec> {
XrtrW::new(self, 0) XrtrW::new(self, 0)
} }
#[doc = "Bits 1:15 - BM\\[14:0\\] used when an extended frame is received. ID\\[14:0\\] in extended, unused standard"] #[doc = "Bits 1:15 - BM\\[14:0\\]
used when an extended frame is received. ID\\[14:0\\]
in extended, unused standard"]
#[inline(always)] #[inline(always)]
pub fn bm(&mut self) -> BmW<'_, BmskxSpec> { pub fn bm(&mut self) -> BmW<BmskxSpec> {
BmW::new(self, 1) BmW::new(self, 1)
} }
} }
@@ -44,6 +52,10 @@ impl crate::Readable for BmskxSpec {}
#[doc = "`write(|w| ..)` method takes [`bmskx::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`bmskx::W`](W) writer structure"]
impl crate::Writable for BmskxSpec { impl crate::Writable for BmskxSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets BMSKX to value 0"] #[doc = "`reset()` method sets BMSKX to value 0"]
impl crate::Resettable for BmskxSpec {} impl crate::Resettable for BmskxSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Transmit Error Counter"] #[doc = "Bits 0:7 - Transmit Error Counter"]
#[inline(always)] #[inline(always)]
pub fn tec(&mut self) -> TecW<'_, CanecSpec> { pub fn tec(&mut self) -> TecW<CanecSpec> {
TecW::new(self, 0) TecW::new(self, 0)
} }
#[doc = "Bits 8:15 - Receive Error Counter"] #[doc = "Bits 8:15 - Receive Error Counter"]
#[inline(always)] #[inline(always)]
pub fn rec(&mut self) -> RecW<'_, CanecSpec> { pub fn rec(&mut self) -> RecW<CanecSpec> {
RecW::new(self, 8) RecW::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for CanecSpec {}
#[doc = "`write(|w| ..)` method takes [`canec::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`canec::W`](W) writer structure"]
impl crate::Writable for CanecSpec { impl crate::Writable for CanecSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CANEC to value 0"] #[doc = "`reset()` method sets CANEC to value 0"]
impl crate::Resettable for CanecSpec {} impl crate::Resettable for CanecSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -70,37 +70,37 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Error Field Identifier"] #[doc = "Bits 0:3 - Error Field Identifier"]
#[inline(always)] #[inline(always)]
pub fn efid(&mut self) -> EfidW<'_, CediagSpec> { pub fn efid(&mut self) -> EfidW<CediagSpec> {
EfidW::new(self, 0) EfidW::new(self, 0)
} }
#[doc = "Bits 4:9 - Error Bit Identifier"] #[doc = "Bits 4:9 - Error Bit Identifier"]
#[inline(always)] #[inline(always)]
pub fn ebid(&mut self) -> EbidW<'_, CediagSpec> { pub fn ebid(&mut self) -> EbidW<CediagSpec> {
EbidW::new(self, 4) EbidW::new(self, 4)
} }
#[doc = "Bit 10 - Transmit Error"] #[doc = "Bit 10 - Transmit Error"]
#[inline(always)] #[inline(always)]
pub fn txe(&mut self) -> TxeW<'_, CediagSpec> { pub fn txe(&mut self) -> TxeW<CediagSpec> {
TxeW::new(self, 10) TxeW::new(self, 10)
} }
#[doc = "Bit 11 - Stuff Error"] #[doc = "Bit 11 - Stuff Error"]
#[inline(always)] #[inline(always)]
pub fn stuff(&mut self) -> StuffW<'_, CediagSpec> { pub fn stuff(&mut self) -> StuffW<CediagSpec> {
StuffW::new(self, 11) StuffW::new(self, 11)
} }
#[doc = "Bit 12 - CRC"] #[doc = "Bit 12 - CRC"]
#[inline(always)] #[inline(always)]
pub fn crc(&mut self) -> CrcW<'_, CediagSpec> { pub fn crc(&mut self) -> CrcW<CediagSpec> {
CrcW::new(self, 12) CrcW::new(self, 12)
} }
#[doc = "Bit 13 - Monitor"] #[doc = "Bit 13 - Monitor"]
#[inline(always)] #[inline(always)]
pub fn mon(&mut self) -> MonW<'_, CediagSpec> { pub fn mon(&mut self) -> MonW<CediagSpec> {
MonW::new(self, 13) MonW::new(self, 13)
} }
#[doc = "Bit 14 - Drive"] #[doc = "Bit 14 - Drive"]
#[inline(always)] #[inline(always)]
pub fn drive(&mut self) -> DriveW<'_, CediagSpec> { pub fn drive(&mut self) -> DriveW<CediagSpec> {
DriveW::new(self, 14) DriveW::new(self, 14)
} }
} }
@@ -114,6 +114,10 @@ impl crate::Readable for CediagSpec {}
#[doc = "`write(|w| ..)` method takes [`cediag::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cediag::W`](W) writer structure"]
impl crate::Writable for CediagSpec { impl crate::Writable for CediagSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CEDIAG to value 0"] #[doc = "`reset()` method sets CEDIAG to value 0"]
impl crate::Resettable for CediagSpec {} impl crate::Resettable for CediagSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -115,62 +115,62 @@ impl R {
impl W { impl W {
#[doc = "Bit 0 - CAN Enable"] #[doc = "Bit 0 - CAN Enable"]
#[inline(always)] #[inline(always)]
pub fn canen(&mut self) -> CanenW<'_, CgcrSpec> { pub fn canen(&mut self) -> CanenW<CgcrSpec> {
CanenW::new(self, 0) CanenW::new(self, 0)
} }
#[doc = "Bit 1 - RW,Control Receive"] #[doc = "Bit 1 - RW,Control Receive"]
#[inline(always)] #[inline(always)]
pub fn crx(&mut self) -> CrxW<'_, CgcrSpec> { pub fn crx(&mut self) -> CrxW<CgcrSpec> {
CrxW::new(self, 1) CrxW::new(self, 1)
} }
#[doc = "Bit 2 - RW,Control Transmit"] #[doc = "Bit 2 - RW,Control Transmit"]
#[inline(always)] #[inline(always)]
pub fn ctx(&mut self) -> CtxW<'_, CgcrSpec> { pub fn ctx(&mut self) -> CtxW<CgcrSpec> {
CtxW::new(self, 2) CtxW::new(self, 2)
} }
#[doc = "Bit 3 - Buffer Lock"] #[doc = "Bit 3 - Buffer Lock"]
#[inline(always)] #[inline(always)]
pub fn bufflock(&mut self) -> BufflockW<'_, CgcrSpec> { pub fn bufflock(&mut self) -> BufflockW<CgcrSpec> {
BufflockW::new(self, 3) BufflockW::new(self, 3)
} }
#[doc = "Bit 4 - Time Sync Enable"] #[doc = "Bit 4 - Time Sync Enable"]
#[inline(always)] #[inline(always)]
pub fn tstpen(&mut self) -> TstpenW<'_, CgcrSpec> { pub fn tstpen(&mut self) -> TstpenW<CgcrSpec> {
TstpenW::new(self, 4) TstpenW::new(self, 4)
} }
#[doc = "Bit 5 - Data Direction"] #[doc = "Bit 5 - Data Direction"]
#[inline(always)] #[inline(always)]
pub fn ddir(&mut self) -> DdirW<'_, CgcrSpec> { pub fn ddir(&mut self) -> DdirW<CgcrSpec> {
DdirW::new(self, 5) DdirW::new(self, 5)
} }
#[doc = "Bit 6 - Listen Only"] #[doc = "Bit 6 - Listen Only"]
#[inline(always)] #[inline(always)]
pub fn lo(&mut self) -> LoW<'_, CgcrSpec> { pub fn lo(&mut self) -> LoW<CgcrSpec> {
LoW::new(self, 6) LoW::new(self, 6)
} }
#[doc = "Bit 7 - Ignore Acknowledge"] #[doc = "Bit 7 - Ignore Acknowledge"]
#[inline(always)] #[inline(always)]
pub fn ignack(&mut self) -> IgnackW<'_, CgcrSpec> { pub fn ignack(&mut self) -> IgnackW<CgcrSpec> {
IgnackW::new(self, 7) IgnackW::new(self, 7)
} }
#[doc = "Bit 8 - Loopback"] #[doc = "Bit 8 - Loopback"]
#[inline(always)] #[inline(always)]
pub fn loopback(&mut self) -> LoopbackW<'_, CgcrSpec> { pub fn loopback(&mut self) -> LoopbackW<CgcrSpec> {
LoopbackW::new(self, 8) LoopbackW::new(self, 8)
} }
#[doc = "Bit 9 - Internal"] #[doc = "Bit 9 - Internal"]
#[inline(always)] #[inline(always)]
pub fn internal(&mut self) -> InternalW<'_, CgcrSpec> { pub fn internal(&mut self) -> InternalW<CgcrSpec> {
InternalW::new(self, 9) InternalW::new(self, 9)
} }
#[doc = "Bit 10 - Diagnostic Enable"] #[doc = "Bit 10 - Diagnostic Enable"]
#[inline(always)] #[inline(always)]
pub fn diagen(&mut self) -> DiagenW<'_, CgcrSpec> { pub fn diagen(&mut self) -> DiagenW<CgcrSpec> {
DiagenW::new(self, 10) DiagenW::new(self, 10)
} }
#[doc = "Bit 11 - Error Interrupt Type"] #[doc = "Bit 11 - Error Interrupt Type"]
#[inline(always)] #[inline(always)]
pub fn eit(&mut self) -> EitW<'_, CgcrSpec> { pub fn eit(&mut self) -> EitW<CgcrSpec> {
EitW::new(self, 11) EitW::new(self, 11)
} }
} }
@@ -184,6 +184,10 @@ impl crate::Readable for CgcrSpec {}
#[doc = "`write(|w| ..)` method takes [`cgcr::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cgcr::W`](W) writer structure"]
impl crate::Writable for CgcrSpec { impl crate::Writable for CgcrSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CGCR to value 0"] #[doc = "`reset()` method sets CGCR to value 0"]
impl crate::Resettable for CgcrSpec {} impl crate::Resettable for CgcrSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:14 - Buffer Interrupt Code Enable\\[14:0\\]"] #[doc = "Bits 0:14 - Buffer Interrupt Code Enable\\[14:0\\]"]
#[inline(always)] #[inline(always)]
pub fn icen(&mut self) -> IcenW<'_, CicenSpec> { pub fn icen(&mut self) -> IcenW<CicenSpec> {
IcenW::new(self, 0) IcenW::new(self, 0)
} }
#[doc = "Bit 15 - Error Interrupt Code Enable"] #[doc = "Bit 15 - Error Interrupt Code Enable"]
#[inline(always)] #[inline(always)]
pub fn eicen(&mut self) -> EicenW<'_, CicenSpec> { pub fn eicen(&mut self) -> EicenW<CicenSpec> {
EicenW::new(self, 15) EicenW::new(self, 15)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for CicenSpec {}
#[doc = "`write(|w| ..)` method takes [`cicen::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cicen::W`](W) writer structure"]
impl crate::Writable for CicenSpec { impl crate::Writable for CicenSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CICEN to value 0"] #[doc = "`reset()` method sets CICEN to value 0"]
impl crate::Resettable for CicenSpec {} impl crate::Resettable for CicenSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:14 - Buffer Interrupt Clear\\[14:0\\]"] #[doc = "Bits 0:14 - Buffer Interrupt Clear\\[14:0\\]"]
#[inline(always)] #[inline(always)]
pub fn iclr(&mut self) -> IclrW<'_, CiclrSpec> { pub fn iclr(&mut self) -> IclrW<CiclrSpec> {
IclrW::new(self, 0) IclrW::new(self, 0)
} }
#[doc = "Bit 15 - Error Interrupt Clear"] #[doc = "Bit 15 - Error Interrupt Clear"]
#[inline(always)] #[inline(always)]
pub fn eiclr(&mut self) -> EiclrW<'_, CiclrSpec> { pub fn eiclr(&mut self) -> EiclrW<CiclrSpec> {
EiclrW::new(self, 15) EiclrW::new(self, 15)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for CiclrSpec {}
#[doc = "`write(|w| ..)` method takes [`ciclr::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`ciclr::W`](W) writer structure"]
impl crate::Writable for CiclrSpec { impl crate::Writable for CiclrSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CICLR to value 0"] #[doc = "`reset()` method sets CICLR to value 0"]
impl crate::Resettable for CiclrSpec {} impl crate::Resettable for CiclrSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:14 - Buffer Interrupt Enable\\[14:0\\]"] #[doc = "Bits 0:14 - Buffer Interrupt Enable\\[14:0\\]"]
#[inline(always)] #[inline(always)]
pub fn ien(&mut self) -> IenW<'_, CienSpec> { pub fn ien(&mut self) -> IenW<CienSpec> {
IenW::new(self, 0) IenW::new(self, 0)
} }
#[doc = "Bit 15 - Error Interrupt Enable"] #[doc = "Bit 15 - Error Interrupt Enable"]
#[inline(always)] #[inline(always)]
pub fn eien(&mut self) -> EienW<'_, CienSpec> { pub fn eien(&mut self) -> EienW<CienSpec> {
EienW::new(self, 15) EienW::new(self, 15)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for CienSpec {}
#[doc = "`write(|w| ..)` method takes [`cien::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cien::W`](W) writer structure"]
impl crate::Writable for CienSpec { impl crate::Writable for CienSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CIEN to value 0"] #[doc = "`reset()` method sets CIEN to value 0"]
impl crate::Resettable for CienSpec {} impl crate::Resettable for CienSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:14 - Buffer Interrupt Pending\\[14:0\\]"] #[doc = "Bits 0:14 - Buffer Interrupt Pending\\[14:0\\]"]
#[inline(always)] #[inline(always)]
pub fn ipnd(&mut self) -> IpndW<'_, CipndSpec> { pub fn ipnd(&mut self) -> IpndW<CipndSpec> {
IpndW::new(self, 0) IpndW::new(self, 0)
} }
#[doc = "Bit 15 - Error Interrupt Pending"] #[doc = "Bit 15 - Error Interrupt Pending"]
#[inline(always)] #[inline(always)]
pub fn eipnd(&mut self) -> EipndW<'_, CipndSpec> { pub fn eipnd(&mut self) -> EipndW<CipndSpec> {
EipndW::new(self, 15) EipndW::new(self, 15)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for CipndSpec {}
#[doc = "`write(|w| ..)` method takes [`cipnd::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cipnd::W`](W) writer structure"]
impl crate::Writable for CipndSpec { impl crate::Writable for CipndSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CIPND to value 0"] #[doc = "`reset()` method sets CIPND to value 0"]
impl crate::Resettable for CipndSpec {} impl crate::Resettable for CipndSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb0Spec> { pub fn st(&mut self) -> StW<CnstatCmb0Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb0Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb0Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb0Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb0Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb0Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb0::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb0::W`](W) writer structure"]
impl crate::Writable for CnstatCmb0Spec { impl crate::Writable for CnstatCmb0Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB0 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB0 to value 0"]
impl crate::Resettable for CnstatCmb0Spec {} impl crate::Resettable for CnstatCmb0Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb1Spec> { pub fn st(&mut self) -> StW<CnstatCmb1Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb1Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb1Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb1Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb1Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb1Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb1::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb1::W`](W) writer structure"]
impl crate::Writable for CnstatCmb1Spec { impl crate::Writable for CnstatCmb1Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB1 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB1 to value 0"]
impl crate::Resettable for CnstatCmb1Spec {} impl crate::Resettable for CnstatCmb1Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb10Spec> { pub fn st(&mut self) -> StW<CnstatCmb10Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb10Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb10Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb10Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb10Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb10Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb10::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb10::W`](W) writer structure"]
impl crate::Writable for CnstatCmb10Spec { impl crate::Writable for CnstatCmb10Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB10 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB10 to value 0"]
impl crate::Resettable for CnstatCmb10Spec {} impl crate::Resettable for CnstatCmb10Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb11Spec> { pub fn st(&mut self) -> StW<CnstatCmb11Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb11Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb11Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb11Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb11Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb11Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb11::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb11::W`](W) writer structure"]
impl crate::Writable for CnstatCmb11Spec { impl crate::Writable for CnstatCmb11Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB11 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB11 to value 0"]
impl crate::Resettable for CnstatCmb11Spec {} impl crate::Resettable for CnstatCmb11Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb12Spec> { pub fn st(&mut self) -> StW<CnstatCmb12Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb12Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb12Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb12Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb12Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb12Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb12::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb12::W`](W) writer structure"]
impl crate::Writable for CnstatCmb12Spec { impl crate::Writable for CnstatCmb12Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB12 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB12 to value 0"]
impl crate::Resettable for CnstatCmb12Spec {} impl crate::Resettable for CnstatCmb12Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb13Spec> { pub fn st(&mut self) -> StW<CnstatCmb13Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb13Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb13Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb13Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb13Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb13Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb13::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb13::W`](W) writer structure"]
impl crate::Writable for CnstatCmb13Spec { impl crate::Writable for CnstatCmb13Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB13 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB13 to value 0"]
impl crate::Resettable for CnstatCmb13Spec {} impl crate::Resettable for CnstatCmb13Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb14Spec> { pub fn st(&mut self) -> StW<CnstatCmb14Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb14Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb14Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb14Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb14Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb14Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb14::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb14::W`](W) writer structure"]
impl crate::Writable for CnstatCmb14Spec { impl crate::Writable for CnstatCmb14Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB14 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB14 to value 0"]
impl crate::Resettable for CnstatCmb14Spec {} impl crate::Resettable for CnstatCmb14Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb2Spec> { pub fn st(&mut self) -> StW<CnstatCmb2Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb2Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb2Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb2Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb2Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb2Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb2::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb2::W`](W) writer structure"]
impl crate::Writable for CnstatCmb2Spec { impl crate::Writable for CnstatCmb2Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB2 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB2 to value 0"]
impl crate::Resettable for CnstatCmb2Spec {} impl crate::Resettable for CnstatCmb2Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb3Spec> { pub fn st(&mut self) -> StW<CnstatCmb3Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb3Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb3Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb3Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb3Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb3Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb3::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb3::W`](W) writer structure"]
impl crate::Writable for CnstatCmb3Spec { impl crate::Writable for CnstatCmb3Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB3 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB3 to value 0"]
impl crate::Resettable for CnstatCmb3Spec {} impl crate::Resettable for CnstatCmb3Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb4Spec> { pub fn st(&mut self) -> StW<CnstatCmb4Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb4Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb4Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb4Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb4Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb4Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb4::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb4::W`](W) writer structure"]
impl crate::Writable for CnstatCmb4Spec { impl crate::Writable for CnstatCmb4Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB4 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB4 to value 0"]
impl crate::Resettable for CnstatCmb4Spec {} impl crate::Resettable for CnstatCmb4Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb5Spec> { pub fn st(&mut self) -> StW<CnstatCmb5Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb5Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb5Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb5Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb5Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb5Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb5::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb5::W`](W) writer structure"]
impl crate::Writable for CnstatCmb5Spec { impl crate::Writable for CnstatCmb5Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB5 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB5 to value 0"]
impl crate::Resettable for CnstatCmb5Spec {} impl crate::Resettable for CnstatCmb5Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb6Spec> { pub fn st(&mut self) -> StW<CnstatCmb6Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb6Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb6Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb6Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb6Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb6Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb6::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb6::W`](W) writer structure"]
impl crate::Writable for CnstatCmb6Spec { impl crate::Writable for CnstatCmb6Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB6 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB6 to value 0"]
impl crate::Resettable for CnstatCmb6Spec {} impl crate::Resettable for CnstatCmb6Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb7Spec> { pub fn st(&mut self) -> StW<CnstatCmb7Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb7Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb7Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb7Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb7Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb7Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb7::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb7::W`](W) writer structure"]
impl crate::Writable for CnstatCmb7Spec { impl crate::Writable for CnstatCmb7Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB7 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB7 to value 0"]
impl crate::Resettable for CnstatCmb7Spec {} impl crate::Resettable for CnstatCmb7Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb8Spec> { pub fn st(&mut self) -> StW<CnstatCmb8Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb8Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb8Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb8Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb8Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb8Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb8::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb8::W`](W) writer structure"]
impl crate::Writable for CnstatCmb8Spec { impl crate::Writable for CnstatCmb8Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB8 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB8 to value 0"]
impl crate::Resettable for CnstatCmb8Spec {} impl crate::Resettable for CnstatCmb8Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatCmb9Spec> { pub fn st(&mut self) -> StW<CnstatCmb9Spec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatCmb9Spec> { pub fn pri(&mut self) -> PriW<CnstatCmb9Spec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatCmb9Spec> { pub fn dlc(&mut self) -> DlcW<CnstatCmb9Spec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatCmb9Spec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_cmb9::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_cmb9::W`](W) writer structure"]
impl crate::Writable for CnstatCmb9Spec { impl crate::Writable for CnstatCmb9Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_CMB9 to value 0"] #[doc = "`reset()` method sets CNSTAT_CMB9 to value 0"]
impl crate::Resettable for CnstatCmb9Spec {} impl crate::Resettable for CnstatCmb9Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Buffer Status"] #[doc = "Bits 0:3 - Buffer Status"]
#[inline(always)] #[inline(always)]
pub fn st(&mut self) -> StW<'_, CnstatHcmbSpec> { pub fn st(&mut self) -> StW<CnstatHcmbSpec> {
StW::new(self, 0) StW::new(self, 0)
} }
#[doc = "Bits 4:7 - Transmit Priority Code"] #[doc = "Bits 4:7 - Transmit Priority Code"]
#[inline(always)] #[inline(always)]
pub fn pri(&mut self) -> PriW<'_, CnstatHcmbSpec> { pub fn pri(&mut self) -> PriW<CnstatHcmbSpec> {
PriW::new(self, 4) PriW::new(self, 4)
} }
#[doc = "Bits 12:15 - Data Length Code"] #[doc = "Bits 12:15 - Data Length Code"]
#[inline(always)] #[inline(always)]
pub fn dlc(&mut self) -> DlcW<'_, CnstatHcmbSpec> { pub fn dlc(&mut self) -> DlcW<CnstatHcmbSpec> {
DlcW::new(self, 12) DlcW::new(self, 12)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CnstatHcmbSpec {}
#[doc = "`write(|w| ..)` method takes [`cnstat_hcmb::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cnstat_hcmb::W`](W) writer structure"]
impl crate::Writable for CnstatHcmbSpec { impl crate::Writable for CnstatHcmbSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CNSTAT_HCMB to value 0"] #[doc = "`reset()` method sets CNSTAT_HCMB to value 0"]
impl crate::Resettable for CnstatHcmbSpec {} impl crate::Resettable for CnstatHcmbSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -34,17 +34,17 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:3 - Interrupt Source portion of Interrupt Code"] #[doc = "Bits 0:3 - Interrupt Source portion of Interrupt Code"]
#[inline(always)] #[inline(always)]
pub fn ist(&mut self) -> IstW<'_, CstpndSpec> { pub fn ist(&mut self) -> IstW<CstpndSpec> {
IstW::new(self, 0) IstW::new(self, 0)
} }
#[doc = "Bit 4 - Interrupt Request portion of Interrupt Code"] #[doc = "Bit 4 - Interrupt Request portion of Interrupt Code"]
#[inline(always)] #[inline(always)]
pub fn irq(&mut self) -> IrqW<'_, CstpndSpec> { pub fn irq(&mut self) -> IrqW<CstpndSpec> {
IrqW::new(self, 4) IrqW::new(self, 4)
} }
#[doc = "Bits 5:7 - CAN Node Status"] #[doc = "Bits 5:7 - CAN Node Status"]
#[inline(always)] #[inline(always)]
pub fn ns(&mut self) -> NsW<'_, CstpndSpec> { pub fn ns(&mut self) -> NsW<CstpndSpec> {
NsW::new(self, 5) NsW::new(self, 5)
} }
} }
@@ -58,6 +58,10 @@ impl crate::Readable for CstpndSpec {}
#[doc = "`write(|w| ..)` method takes [`cstpnd::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`cstpnd::W`](W) writer structure"]
impl crate::Writable for CstpndSpec { impl crate::Writable for CstpndSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CSTPND to value 0"] #[doc = "`reset()` method sets CSTPND to value 0"]
impl crate::Resettable for CstpndSpec {} impl crate::Resettable for CstpndSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -43,22 +43,22 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:2 - Time Segment 2"] #[doc = "Bits 0:2 - Time Segment 2"]
#[inline(always)] #[inline(always)]
pub fn tseg2(&mut self) -> Tseg2W<'_, CtimSpec> { pub fn tseg2(&mut self) -> Tseg2W<CtimSpec> {
Tseg2W::new(self, 0) Tseg2W::new(self, 0)
} }
#[doc = "Bits 3:6 - Time Segment 1"] #[doc = "Bits 3:6 - Time Segment 1"]
#[inline(always)] #[inline(always)]
pub fn tseg1(&mut self) -> Tseg1W<'_, CtimSpec> { pub fn tseg1(&mut self) -> Tseg1W<CtimSpec> {
Tseg1W::new(self, 3) Tseg1W::new(self, 3)
} }
#[doc = "Bits 7:8 - Synchronization Jump Width"] #[doc = "Bits 7:8 - Synchronization Jump Width"]
#[inline(always)] #[inline(always)]
pub fn sjw(&mut self) -> SjwW<'_, CtimSpec> { pub fn sjw(&mut self) -> SjwW<CtimSpec> {
SjwW::new(self, 7) SjwW::new(self, 7)
} }
#[doc = "Bits 9:15 - Prescaler Configuration"] #[doc = "Bits 9:15 - Prescaler Configuration"]
#[inline(always)] #[inline(always)]
pub fn psc(&mut self) -> PscW<'_, CtimSpec> { pub fn psc(&mut self) -> PscW<CtimSpec> {
PscW::new(self, 9) PscW::new(self, 9)
} }
} }
@@ -72,6 +72,10 @@ impl crate::Readable for CtimSpec {}
#[doc = "`write(|w| ..)` method takes [`ctim::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`ctim::W`](W) writer structure"]
impl crate::Writable for CtimSpec { impl crate::Writable for CtimSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CTIM to value 0"] #[doc = "`reset()` method sets CTIM to value 0"]
impl crate::Resettable for CtimSpec {} impl crate::Resettable for CtimSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -22,6 +22,10 @@ impl crate::Readable for CtmrSpec {}
#[doc = "`write(|w| ..)` method takes [`ctmr::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`ctmr::W`](W) writer structure"]
impl crate::Writable for CtmrSpec { impl crate::Writable for CtmrSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets CTMR to value 0"] #[doc = "`reset()` method sets CTMR to value 0"]
impl crate::Resettable for CtmrSpec {} impl crate::Resettable for CtmrSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb0Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb0Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb0Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb0Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb0Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb0::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb0::W`](W) writer structure"]
impl crate::Writable for Data0Cmb0Spec { impl crate::Writable for Data0Cmb0Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB0 to value 0"] #[doc = "`reset()` method sets DATA0_CMB0 to value 0"]
impl crate::Resettable for Data0Cmb0Spec {} impl crate::Resettable for Data0Cmb0Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb1Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb1Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb1Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb1Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb1Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb1::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb1::W`](W) writer structure"]
impl crate::Writable for Data0Cmb1Spec { impl crate::Writable for Data0Cmb1Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB1 to value 0"] #[doc = "`reset()` method sets DATA0_CMB1 to value 0"]
impl crate::Resettable for Data0Cmb1Spec {} impl crate::Resettable for Data0Cmb1Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb10Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb10Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb10Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb10Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb10Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb10::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb10::W`](W) writer structure"]
impl crate::Writable for Data0Cmb10Spec { impl crate::Writable for Data0Cmb10Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB10 to value 0"] #[doc = "`reset()` method sets DATA0_CMB10 to value 0"]
impl crate::Resettable for Data0Cmb10Spec {} impl crate::Resettable for Data0Cmb10Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb11Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb11Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb11Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb11Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb11Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb11::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb11::W`](W) writer structure"]
impl crate::Writable for Data0Cmb11Spec { impl crate::Writable for Data0Cmb11Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB11 to value 0"] #[doc = "`reset()` method sets DATA0_CMB11 to value 0"]
impl crate::Resettable for Data0Cmb11Spec {} impl crate::Resettable for Data0Cmb11Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb12Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb12Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb12Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb12Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb12Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb12::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb12::W`](W) writer structure"]
impl crate::Writable for Data0Cmb12Spec { impl crate::Writable for Data0Cmb12Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB12 to value 0"] #[doc = "`reset()` method sets DATA0_CMB12 to value 0"]
impl crate::Resettable for Data0Cmb12Spec {} impl crate::Resettable for Data0Cmb12Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb13Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb13Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb13Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb13Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb13Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb13::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb13::W`](W) writer structure"]
impl crate::Writable for Data0Cmb13Spec { impl crate::Writable for Data0Cmb13Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB13 to value 0"] #[doc = "`reset()` method sets DATA0_CMB13 to value 0"]
impl crate::Resettable for Data0Cmb13Spec {} impl crate::Resettable for Data0Cmb13Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb14Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb14Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb14Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb14Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb14Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb14::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb14::W`](W) writer structure"]
impl crate::Writable for Data0Cmb14Spec { impl crate::Writable for Data0Cmb14Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB14 to value 0"] #[doc = "`reset()` method sets DATA0_CMB14 to value 0"]
impl crate::Resettable for Data0Cmb14Spec {} impl crate::Resettable for Data0Cmb14Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb2Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb2Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb2Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb2Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb2Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb2::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb2::W`](W) writer structure"]
impl crate::Writable for Data0Cmb2Spec { impl crate::Writable for Data0Cmb2Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB2 to value 0"] #[doc = "`reset()` method sets DATA0_CMB2 to value 0"]
impl crate::Resettable for Data0Cmb2Spec {} impl crate::Resettable for Data0Cmb2Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb3Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb3Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb3Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb3Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb3Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb3::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb3::W`](W) writer structure"]
impl crate::Writable for Data0Cmb3Spec { impl crate::Writable for Data0Cmb3Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB3 to value 0"] #[doc = "`reset()` method sets DATA0_CMB3 to value 0"]
impl crate::Resettable for Data0Cmb3Spec {} impl crate::Resettable for Data0Cmb3Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb4Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb4Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb4Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb4Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb4Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb4::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb4::W`](W) writer structure"]
impl crate::Writable for Data0Cmb4Spec { impl crate::Writable for Data0Cmb4Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB4 to value 0"] #[doc = "`reset()` method sets DATA0_CMB4 to value 0"]
impl crate::Resettable for Data0Cmb4Spec {} impl crate::Resettable for Data0Cmb4Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb5Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb5Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb5Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb5Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb5Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb5::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb5::W`](W) writer structure"]
impl crate::Writable for Data0Cmb5Spec { impl crate::Writable for Data0Cmb5Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB5 to value 0"] #[doc = "`reset()` method sets DATA0_CMB5 to value 0"]
impl crate::Resettable for Data0Cmb5Spec {} impl crate::Resettable for Data0Cmb5Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb6Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb6Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb6Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb6Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb6Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb6::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb6::W`](W) writer structure"]
impl crate::Writable for Data0Cmb6Spec { impl crate::Writable for Data0Cmb6Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB6 to value 0"] #[doc = "`reset()` method sets DATA0_CMB6 to value 0"]
impl crate::Resettable for Data0Cmb6Spec {} impl crate::Resettable for Data0Cmb6Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb7Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb7Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb7Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb7Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb7Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb7::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb7::W`](W) writer structure"]
impl crate::Writable for Data0Cmb7Spec { impl crate::Writable for Data0Cmb7Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB7 to value 0"] #[doc = "`reset()` method sets DATA0_CMB7 to value 0"]
impl crate::Resettable for Data0Cmb7Spec {} impl crate::Resettable for Data0Cmb7Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb8Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb8Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb8Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb8Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb8Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb8::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb8::W`](W) writer structure"]
impl crate::Writable for Data0Cmb8Spec { impl crate::Writable for Data0Cmb8Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB8 to value 0"] #[doc = "`reset()` method sets DATA0_CMB8 to value 0"]
impl crate::Resettable for Data0Cmb8Spec {} impl crate::Resettable for Data0Cmb8Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0Cmb9Spec> { pub fn byte2(&mut self) -> Byte2W<Data0Cmb9Spec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0Cmb9Spec> { pub fn byte1(&mut self) -> Byte1W<Data0Cmb9Spec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0Cmb9Spec {}
#[doc = "`write(|w| ..)` method takes [`data0_cmb9::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_cmb9::W`](W) writer structure"]
impl crate::Writable for Data0Cmb9Spec { impl crate::Writable for Data0Cmb9Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_CMB9 to value 0"] #[doc = "`reset()` method sets DATA0_CMB9 to value 0"]
impl crate::Resettable for Data0Cmb9Spec {} impl crate::Resettable for Data0Cmb9Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 2"] #[doc = "Bits 0:7 - Data Byte 2"]
#[inline(always)] #[inline(always)]
pub fn byte2(&mut self) -> Byte2W<'_, Data0HcmbSpec> { pub fn byte2(&mut self) -> Byte2W<Data0HcmbSpec> {
Byte2W::new(self, 0) Byte2W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 1"] #[doc = "Bits 8:15 - Data Byte 1"]
#[inline(always)] #[inline(always)]
pub fn byte1(&mut self) -> Byte1W<'_, Data0HcmbSpec> { pub fn byte1(&mut self) -> Byte1W<Data0HcmbSpec> {
Byte1W::new(self, 8) Byte1W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data0HcmbSpec {}
#[doc = "`write(|w| ..)` method takes [`data0_hcmb::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data0_hcmb::W`](W) writer structure"]
impl crate::Writable for Data0HcmbSpec { impl crate::Writable for Data0HcmbSpec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA0_HCMB to value 0"] #[doc = "`reset()` method sets DATA0_HCMB to value 0"]
impl crate::Resettable for Data0HcmbSpec {} impl crate::Resettable for Data0HcmbSpec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 4"] #[doc = "Bits 0:7 - Data Byte 4"]
#[inline(always)] #[inline(always)]
pub fn byte4(&mut self) -> Byte4W<'_, Data1Cmb0Spec> { pub fn byte4(&mut self) -> Byte4W<Data1Cmb0Spec> {
Byte4W::new(self, 0) Byte4W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 3"] #[doc = "Bits 8:15 - Data Byte 3"]
#[inline(always)] #[inline(always)]
pub fn byte3(&mut self) -> Byte3W<'_, Data1Cmb0Spec> { pub fn byte3(&mut self) -> Byte3W<Data1Cmb0Spec> {
Byte3W::new(self, 8) Byte3W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data1Cmb0Spec {}
#[doc = "`write(|w| ..)` method takes [`data1_cmb0::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data1_cmb0::W`](W) writer structure"]
impl crate::Writable for Data1Cmb0Spec { impl crate::Writable for Data1Cmb0Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA1_CMB0 to value 0"] #[doc = "`reset()` method sets DATA1_CMB0 to value 0"]
impl crate::Resettable for Data1Cmb0Spec {} impl crate::Resettable for Data1Cmb0Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 4"] #[doc = "Bits 0:7 - Data Byte 4"]
#[inline(always)] #[inline(always)]
pub fn byte4(&mut self) -> Byte4W<'_, Data1Cmb1Spec> { pub fn byte4(&mut self) -> Byte4W<Data1Cmb1Spec> {
Byte4W::new(self, 0) Byte4W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 3"] #[doc = "Bits 8:15 - Data Byte 3"]
#[inline(always)] #[inline(always)]
pub fn byte3(&mut self) -> Byte3W<'_, Data1Cmb1Spec> { pub fn byte3(&mut self) -> Byte3W<Data1Cmb1Spec> {
Byte3W::new(self, 8) Byte3W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data1Cmb1Spec {}
#[doc = "`write(|w| ..)` method takes [`data1_cmb1::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data1_cmb1::W`](W) writer structure"]
impl crate::Writable for Data1Cmb1Spec { impl crate::Writable for Data1Cmb1Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA1_CMB1 to value 0"] #[doc = "`reset()` method sets DATA1_CMB1 to value 0"]
impl crate::Resettable for Data1Cmb1Spec {} impl crate::Resettable for Data1Cmb1Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 4"] #[doc = "Bits 0:7 - Data Byte 4"]
#[inline(always)] #[inline(always)]
pub fn byte4(&mut self) -> Byte4W<'_, Data1Cmb10Spec> { pub fn byte4(&mut self) -> Byte4W<Data1Cmb10Spec> {
Byte4W::new(self, 0) Byte4W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 3"] #[doc = "Bits 8:15 - Data Byte 3"]
#[inline(always)] #[inline(always)]
pub fn byte3(&mut self) -> Byte3W<'_, Data1Cmb10Spec> { pub fn byte3(&mut self) -> Byte3W<Data1Cmb10Spec> {
Byte3W::new(self, 8) Byte3W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data1Cmb10Spec {}
#[doc = "`write(|w| ..)` method takes [`data1_cmb10::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data1_cmb10::W`](W) writer structure"]
impl crate::Writable for Data1Cmb10Spec { impl crate::Writable for Data1Cmb10Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA1_CMB10 to value 0"] #[doc = "`reset()` method sets DATA1_CMB10 to value 0"]
impl crate::Resettable for Data1Cmb10Spec {} impl crate::Resettable for Data1Cmb10Spec {
const RESET_VALUE: u32 = 0;
}

View File

@@ -25,12 +25,12 @@ impl R {
impl W { impl W {
#[doc = "Bits 0:7 - Data Byte 4"] #[doc = "Bits 0:7 - Data Byte 4"]
#[inline(always)] #[inline(always)]
pub fn byte4(&mut self) -> Byte4W<'_, Data1Cmb11Spec> { pub fn byte4(&mut self) -> Byte4W<Data1Cmb11Spec> {
Byte4W::new(self, 0) Byte4W::new(self, 0)
} }
#[doc = "Bits 8:15 - Data Byte 3"] #[doc = "Bits 8:15 - Data Byte 3"]
#[inline(always)] #[inline(always)]
pub fn byte3(&mut self) -> Byte3W<'_, Data1Cmb11Spec> { pub fn byte3(&mut self) -> Byte3W<Data1Cmb11Spec> {
Byte3W::new(self, 8) Byte3W::new(self, 8)
} }
} }
@@ -44,6 +44,10 @@ impl crate::Readable for Data1Cmb11Spec {}
#[doc = "`write(|w| ..)` method takes [`data1_cmb11::W`](W) writer structure"] #[doc = "`write(|w| ..)` method takes [`data1_cmb11::W`](W) writer structure"]
impl crate::Writable for Data1Cmb11Spec { impl crate::Writable for Data1Cmb11Spec {
type Safety = crate::Unsafe; type Safety = crate::Unsafe;
const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
} }
#[doc = "`reset()` method sets DATA1_CMB11 to value 0"] #[doc = "`reset()` method sets DATA1_CMB11 to value 0"]
impl crate::Resettable for Data1Cmb11Spec {} impl crate::Resettable for Data1Cmb11Spec {
const RESET_VALUE: u32 = 0;
}

Some files were not shown because too many files have changed in this diff Show More