317 lines
8.9 KiB
Rust
317 lines
8.9 KiB
Rust
use vcell::VolatileCell;
|
|
#[doc = r" Register block"]
|
|
#[repr(C)]
|
|
pub struct RegisterBlock {
|
|
#[doc = "0x00 - Status And Control"] pub sc: SC,
|
|
#[doc = "0x04 - Counter"] pub cnt: CNT,
|
|
#[doc = "0x08 - Modulo"] pub mod_: MOD,
|
|
#[doc = "0x0c - Channel (n) Status And Control"] pub c0sc: C0SC,
|
|
#[doc = "0x10 - Channel (n) Value"] pub c0v: C0V,
|
|
#[doc = "0x14 - Channel (n) Status And Control"] pub c1sc: C1SC,
|
|
#[doc = "0x18 - Channel (n) Value"] pub c1v: C1V,
|
|
#[doc = "0x1c - Channel (n) Status And Control"] pub c2sc: C2SC,
|
|
#[doc = "0x20 - Channel (n) Value"] pub c2v: C2V,
|
|
#[doc = "0x24 - Channel (n) Status And Control"] pub c3sc: C3SC,
|
|
#[doc = "0x28 - Channel (n) Value"] pub c3v: C3V,
|
|
#[doc = "0x2c - Channel (n) Status And Control"] pub c4sc: C4SC,
|
|
#[doc = "0x30 - Channel (n) Value"] pub c4v: C4V,
|
|
#[doc = "0x34 - Channel (n) Status And Control"] pub c5sc: C5SC,
|
|
#[doc = "0x38 - Channel (n) Value"] pub c5v: C5V,
|
|
#[doc = "0x3c - Channel (n) Status And Control"] pub c6sc: C6SC,
|
|
#[doc = "0x40 - Channel (n) Value"] pub c6v: C6V,
|
|
#[doc = "0x44 - Channel (n) Status And Control"] pub c7sc: C7SC,
|
|
#[doc = "0x48 - Channel (n) Value"] pub c7v: C7V,
|
|
#[doc = "0x4c - Counter Initial Value"] pub cntin: CNTIN,
|
|
#[doc = "0x50 - Capture And Compare Status"] pub status: STATUS,
|
|
#[doc = "0x54 - Features Mode Selection"] pub mode: MODE,
|
|
#[doc = "0x58 - Synchronization"] pub sync: SYNC,
|
|
#[doc = "0x5c - Initial State For Channels Output"] pub outinit: OUTINIT,
|
|
#[doc = "0x60 - Output Mask"] pub outmask: OUTMASK,
|
|
#[doc = "0x64 - Function For Linked Channels"] pub combine: COMBINE,
|
|
#[doc = "0x68 - Deadtime Configuration"] pub deadtime: DEADTIME,
|
|
#[doc = "0x6c - FTM External Trigger"] pub exttrig: EXTTRIG,
|
|
#[doc = "0x70 - Channels Polarity"] pub pol: POL,
|
|
#[doc = "0x74 - Fault Mode Status"] pub fms: FMS,
|
|
#[doc = "0x78 - Input Capture Filter Control"] pub filter: FILTER,
|
|
#[doc = "0x7c - Fault Control"] pub fltctrl: FLTCTRL,
|
|
#[doc = "0x80 - Quadrature Decoder Control And Status"] pub qdctrl: QDCTRL,
|
|
#[doc = "0x84 - Configuration"] pub conf: CONF,
|
|
#[doc = "0x88 - FTM Fault Input Polarity"] pub fltpol: FLTPOL,
|
|
#[doc = "0x8c - Synchronization Configuration"] pub synconf: SYNCONF,
|
|
#[doc = "0x90 - FTM Inverting Control"] pub invctrl: INVCTRL,
|
|
#[doc = "0x94 - FTM Software Output Control"] pub swoctrl: SWOCTRL,
|
|
#[doc = "0x98 - FTM PWM Load"] pub pwmload: PWMLOAD,
|
|
#[doc = "0x9c - Half Cycle Register"] pub hcr: HCR,
|
|
#[doc = "0xa0 - Pair 0 Deadtime Configuration"] pub pair0deadtime: PAIR0DEADTIME,
|
|
_reserved0: [u8; 4usize],
|
|
#[doc = "0xa8 - Pair 1 Deadtime Configuration"] pub pair1deadtime: PAIR1DEADTIME,
|
|
_reserved1: [u8; 4usize],
|
|
#[doc = "0xb0 - Pair 2 Deadtime Configuration"] pub pair2deadtime: PAIR2DEADTIME,
|
|
_reserved2: [u8; 4usize],
|
|
#[doc = "0xb8 - Pair 3 Deadtime Configuration"] pub pair3deadtime: PAIR3DEADTIME,
|
|
}
|
|
#[doc = "Status And Control"]
|
|
pub struct SC {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Status And Control"]
|
|
pub mod sc;
|
|
#[doc = "Counter"]
|
|
pub struct CNT {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Counter"]
|
|
pub mod cnt;
|
|
#[doc = "Modulo"]
|
|
pub struct MOD {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Modulo"]
|
|
pub mod mod_;
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub struct C0SC {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub mod c0sc;
|
|
#[doc = "Channel (n) Value"]
|
|
pub struct C0V {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Value"]
|
|
pub mod c0v;
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub struct C1SC {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub mod c1sc;
|
|
#[doc = "Channel (n) Value"]
|
|
pub struct C1V {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Value"]
|
|
pub mod c1v;
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub struct C2SC {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub mod c2sc;
|
|
#[doc = "Channel (n) Value"]
|
|
pub struct C2V {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Value"]
|
|
pub mod c2v;
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub struct C3SC {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub mod c3sc;
|
|
#[doc = "Channel (n) Value"]
|
|
pub struct C3V {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Value"]
|
|
pub mod c3v;
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub struct C4SC {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub mod c4sc;
|
|
#[doc = "Channel (n) Value"]
|
|
pub struct C4V {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Value"]
|
|
pub mod c4v;
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub struct C5SC {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub mod c5sc;
|
|
#[doc = "Channel (n) Value"]
|
|
pub struct C5V {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Value"]
|
|
pub mod c5v;
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub struct C6SC {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub mod c6sc;
|
|
#[doc = "Channel (n) Value"]
|
|
pub struct C6V {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Value"]
|
|
pub mod c6v;
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub struct C7SC {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Status And Control"]
|
|
pub mod c7sc;
|
|
#[doc = "Channel (n) Value"]
|
|
pub struct C7V {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channel (n) Value"]
|
|
pub mod c7v;
|
|
#[doc = "Counter Initial Value"]
|
|
pub struct CNTIN {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Counter Initial Value"]
|
|
pub mod cntin;
|
|
#[doc = "Capture And Compare Status"]
|
|
pub struct STATUS {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Capture And Compare Status"]
|
|
pub mod status;
|
|
#[doc = "Features Mode Selection"]
|
|
pub struct MODE {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Features Mode Selection"]
|
|
pub mod mode;
|
|
#[doc = "Synchronization"]
|
|
pub struct SYNC {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Synchronization"]
|
|
pub mod sync;
|
|
#[doc = "Initial State For Channels Output"]
|
|
pub struct OUTINIT {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Initial State For Channels Output"]
|
|
pub mod outinit;
|
|
#[doc = "Output Mask"]
|
|
pub struct OUTMASK {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Output Mask"]
|
|
pub mod outmask;
|
|
#[doc = "Function For Linked Channels"]
|
|
pub struct COMBINE {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Function For Linked Channels"]
|
|
pub mod combine;
|
|
#[doc = "Deadtime Configuration"]
|
|
pub struct DEADTIME {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Deadtime Configuration"]
|
|
pub mod deadtime;
|
|
#[doc = "FTM External Trigger"]
|
|
pub struct EXTTRIG {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "FTM External Trigger"]
|
|
pub mod exttrig;
|
|
#[doc = "Channels Polarity"]
|
|
pub struct POL {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Channels Polarity"]
|
|
pub mod pol;
|
|
#[doc = "Fault Mode Status"]
|
|
pub struct FMS {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Fault Mode Status"]
|
|
pub mod fms;
|
|
#[doc = "Input Capture Filter Control"]
|
|
pub struct FILTER {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Input Capture Filter Control"]
|
|
pub mod filter;
|
|
#[doc = "Fault Control"]
|
|
pub struct FLTCTRL {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Fault Control"]
|
|
pub mod fltctrl;
|
|
#[doc = "Quadrature Decoder Control And Status"]
|
|
pub struct QDCTRL {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Quadrature Decoder Control And Status"]
|
|
pub mod qdctrl;
|
|
#[doc = "Configuration"]
|
|
pub struct CONF {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Configuration"]
|
|
pub mod conf;
|
|
#[doc = "FTM Fault Input Polarity"]
|
|
pub struct FLTPOL {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "FTM Fault Input Polarity"]
|
|
pub mod fltpol;
|
|
#[doc = "Synchronization Configuration"]
|
|
pub struct SYNCONF {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Synchronization Configuration"]
|
|
pub mod synconf;
|
|
#[doc = "FTM Inverting Control"]
|
|
pub struct INVCTRL {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "FTM Inverting Control"]
|
|
pub mod invctrl;
|
|
#[doc = "FTM Software Output Control"]
|
|
pub struct SWOCTRL {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "FTM Software Output Control"]
|
|
pub mod swoctrl;
|
|
#[doc = "FTM PWM Load"]
|
|
pub struct PWMLOAD {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "FTM PWM Load"]
|
|
pub mod pwmload;
|
|
#[doc = "Half Cycle Register"]
|
|
pub struct HCR {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Half Cycle Register"]
|
|
pub mod hcr;
|
|
#[doc = "Pair 0 Deadtime Configuration"]
|
|
pub struct PAIR0DEADTIME {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Pair 0 Deadtime Configuration"]
|
|
pub mod pair0deadtime;
|
|
#[doc = "Pair 1 Deadtime Configuration"]
|
|
pub struct PAIR1DEADTIME {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Pair 1 Deadtime Configuration"]
|
|
pub mod pair1deadtime;
|
|
#[doc = "Pair 2 Deadtime Configuration"]
|
|
pub struct PAIR2DEADTIME {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Pair 2 Deadtime Configuration"]
|
|
pub mod pair2deadtime;
|
|
#[doc = "Pair 3 Deadtime Configuration"]
|
|
pub struct PAIR3DEADTIME {
|
|
register: VolatileCell<u32>,
|
|
}
|
|
#[doc = "Pair 3 Deadtime Configuration"]
|
|
pub mod pair3deadtime;
|