#![allow(non_snake_case, non_upper_case_globals)]
#![allow(non_camel_case_types)]
use crate::{RORegister, RWRegister, WORegister};
#[cfg(not(feature = "nosync"))]
use core::marker::PhantomData;
pub mod TR {
pub mod PM {
pub const offset: u32 = 22;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const AM: u32 = 0b0;
pub const PM: u32 = 0b1;
}
}
pub mod HT {
pub const offset: u32 = 20;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod HU {
pub const offset: u32 = 16;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MNT {
pub const offset: u32 = 12;
pub const mask: u32 = 0b111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MNU {
pub const offset: u32 = 8;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod ST {
pub const offset: u32 = 4;
pub const mask: u32 = 0b111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod SU {
pub const offset: u32 = 0;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod DR {
pub mod YT {
pub const offset: u32 = 20;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod YU {
pub const offset: u32 = 16;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod WDU {
pub const offset: u32 = 13;
pub const mask: u32 = 0b111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MT {
pub const offset: u32 = 12;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MU {
pub const offset: u32 = 8;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod DT {
pub const offset: u32 = 4;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod DU {
pub const offset: u32 = 0;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod CR {
pub mod WUCKSEL {
pub const offset: u32 = 0;
pub const mask: u32 = 0b111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Div16: u32 = 0b000;
pub const Div8: u32 = 0b001;
pub const Div4: u32 = 0b010;
pub const Div2: u32 = 0b011;
pub const ClockSpare: u32 = 0b100;
pub const ClockSpareWithOffset: u32 = 0b110;
}
}
pub mod TSEDGE {
pub const offset: u32 = 3;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const RisingEdge: u32 = 0b0;
pub const FallingEdge: u32 = 0b1;
}
}
pub mod REFCKON {
pub const offset: u32 = 4;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b0;
pub const Enabled: u32 = 0b1;
}
}
pub mod BYPSHAD {
pub const offset: u32 = 5;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const ShadowReg: u32 = 0b0;
pub const BypassShadowReg: u32 = 0b1;
}
}
pub mod FMT {
pub const offset: u32 = 6;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Twenty_Four_Hour: u32 = 0b0;
pub const AM_PM: u32 = 0b1;
}
}
pub mod ALRAE {
pub const offset: u32 = 8;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b0;
pub const Enabled: u32 = 0b1;
}
}
pub mod ALRBE {
pub const offset: u32 = 9;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b0;
pub const Enabled: u32 = 0b1;
}
}
pub mod WUTE {
pub const offset: u32 = 10;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b0;
pub const Enabled: u32 = 0b1;
}
}
pub mod TSE {
pub const offset: u32 = 11;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b0;
pub const Enabled: u32 = 0b1;
}
}
pub mod ALRAIE {
pub const offset: u32 = 12;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b0;
pub const Enabled: u32 = 0b1;
}
}
pub mod ALRBIE {
pub const offset: u32 = 13;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b0;
pub const Enabled: u32 = 0b1;
}
}
pub mod WUTIE {
pub const offset: u32 = 14;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b0;
pub const Enabled: u32 = 0b1;
}
}
pub mod TSIE {
pub const offset: u32 = 15;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b0;
pub const Enabled: u32 = 0b1;
}
}
pub mod ADD1H {
pub const offset: u32 = 16;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {
pub const Add1: u32 = 0b1;
}
pub mod RW {}
}
pub mod SUB1H {
pub const offset: u32 = 17;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {
pub const Sub1: u32 = 0b1;
}
pub mod RW {}
}
pub mod BKP {
pub const offset: u32 = 18;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const DST_Not_Changed: u32 = 0b0;
pub const DST_Changed: u32 = 0b1;
}
}
pub mod COSEL {
pub const offset: u32 = 19;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const CalFreq_512Hz: u32 = 0b0;
pub const CalFreq_1Hz: u32 = 0b1;
}
}
pub mod POL {
pub const offset: u32 = 20;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const High: u32 = 0b0;
pub const Low: u32 = 0b1;
}
}
pub mod OSEL {
pub const offset: u32 = 21;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b00;
pub const AlarmA: u32 = 0b01;
pub const AlarmB: u32 = 0b10;
pub const Wakeup: u32 = 0b11;
}
}
pub mod COE {
pub const offset: u32 = 23;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b0;
pub const Enabled: u32 = 0b1;
}
}
}
pub mod ISR {
pub mod ALRAWF {
pub const offset: u32 = 0;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const UpdateNotAllowed: u32 = 0b0;
pub const UpdateAllowed: u32 = 0b1;
}
pub mod W {}
pub mod RW {}
}
pub mod ALRBWF {
pub const offset: u32 = 1;
pub const mask: u32 = 1 << offset;
pub use super::ALRAWF::R;
pub mod W {}
pub mod RW {}
}
pub mod WUTWF {
pub const offset: u32 = 2;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const UpdateNotAllowed: u32 = 0b0;
pub const UpdateAllowed: u32 = 0b1;
}
pub mod W {}
pub mod RW {}
}
pub mod SHPF {
pub const offset: u32 = 3;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const NoShiftPending: u32 = 0b0;
pub const ShiftPending: u32 = 0b1;
}
pub mod W {}
pub mod RW {}
}
pub mod INITS {
pub const offset: u32 = 4;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const NotInitalized: u32 = 0b0;
pub const Initalized: u32 = 0b1;
}
pub mod W {}
pub mod RW {}
}
pub mod RSF {
pub const offset: u32 = 5;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const NotSynced: u32 = 0b0;
pub const Synced: u32 = 0b1;
}
pub mod W {
pub const Clear: u32 = 0b0;
}
pub mod RW {}
}
pub mod INITF {
pub const offset: u32 = 6;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const NotAllowed: u32 = 0b0;
pub const Allowed: u32 = 0b1;
}
pub mod W {}
pub mod RW {}
}
pub mod INIT {
pub const offset: u32 = 7;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const FreeRunningMode: u32 = 0b0;
pub const InitMode: u32 = 0b1;
}
}
pub mod ALRAF {
pub const offset: u32 = 8;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const Match: u32 = 0b1;
}
pub use super::RSF::W;
pub mod RW {}
}
pub mod ALRBF {
pub const offset: u32 = 9;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const Match: u32 = 0b1;
}
pub use super::RSF::W;
pub mod RW {}
}
pub mod WUTF {
pub const offset: u32 = 10;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const Zero: u32 = 0b1;
}
pub use super::RSF::W;
pub mod RW {}
}
pub mod TSF {
pub const offset: u32 = 11;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const TimestampEvent: u32 = 0b1;
}
pub use super::RSF::W;
pub mod RW {}
}
pub mod TSOVF {
pub const offset: u32 = 12;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const Overflow: u32 = 0b1;
}
pub use super::RSF::W;
pub mod RW {}
}
pub mod TAMP1F {
pub const offset: u32 = 13;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const Tampered: u32 = 0b1;
}
pub mod W {
pub const Clear: u32 = 0b0;
}
pub mod RW {}
}
pub mod TAMP2F {
pub const offset: u32 = 14;
pub const mask: u32 = 1 << offset;
pub use super::TAMP1F::R;
pub use super::TAMP1F::W;
pub mod RW {}
}
pub mod TAMP3F {
pub const offset: u32 = 15;
pub const mask: u32 = 1 << offset;
pub use super::TAMP1F::R;
pub use super::TAMP1F::W;
pub mod RW {}
}
pub mod RECALPF {
pub const offset: u32 = 16;
pub const mask: u32 = 1 << offset;
pub mod R {
pub const Pending: u32 = 0b1;
}
pub mod W {}
pub mod RW {}
}
}
pub mod PRER {
pub mod PREDIV_A {
pub const offset: u32 = 16;
pub const mask: u32 = 0x7f << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod PREDIV_S {
pub const offset: u32 = 0;
pub const mask: u32 = 0x7fff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod WUTR {
pub mod WUT {
pub const offset: u32 = 0;
pub const mask: u32 = 0xffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod ALRMAR {
pub mod MSK4 {
pub const offset: u32 = 31;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Mask: u32 = 0b0;
pub const NotMask: u32 = 0b1;
}
}
pub mod WDSEL {
pub const offset: u32 = 30;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const DateUnits: u32 = 0b0;
pub const WeekDay: u32 = 0b1;
}
}
pub mod DT {
pub const offset: u32 = 28;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod DU {
pub const offset: u32 = 24;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MSK3 {
pub const offset: u32 = 23;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub use super::MSK4::RW;
}
pub mod PM {
pub const offset: u32 = 22;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const AM: u32 = 0b0;
pub const PM: u32 = 0b1;
}
}
pub mod HT {
pub const offset: u32 = 20;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod HU {
pub const offset: u32 = 16;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MSK2 {
pub const offset: u32 = 15;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub use super::MSK4::RW;
}
pub mod MNT {
pub const offset: u32 = 12;
pub const mask: u32 = 0b111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MNU {
pub const offset: u32 = 8;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MSK1 {
pub const offset: u32 = 7;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub use super::MSK4::RW;
}
pub mod ST {
pub const offset: u32 = 4;
pub const mask: u32 = 0b111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod SU {
pub const offset: u32 = 0;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod ALRMBR {
pub use super::ALRMAR::DT;
pub use super::ALRMAR::DU;
pub use super::ALRMAR::HT;
pub use super::ALRMAR::HU;
pub use super::ALRMAR::MNT;
pub use super::ALRMAR::MNU;
pub use super::ALRMAR::MSK1;
pub use super::ALRMAR::MSK2;
pub use super::ALRMAR::MSK3;
pub use super::ALRMAR::MSK4;
pub use super::ALRMAR::PM;
pub use super::ALRMAR::ST;
pub use super::ALRMAR::SU;
pub use super::ALRMAR::WDSEL;
}
pub mod WPR {
pub mod KEY {
pub const offset: u32 = 0;
pub const mask: u32 = 0xff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod SSR {
pub mod SS {
pub const offset: u32 = 0;
pub const mask: u32 = 0xffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod SHIFTR {
pub mod ADD1S {
pub const offset: u32 = 31;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {
pub const Add1: u32 = 0b1;
}
pub mod RW {}
}
pub mod SUBFS {
pub const offset: u32 = 0;
pub const mask: u32 = 0x7fff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod TSTR {
pub mod SU {
pub const offset: u32 = 0;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod ST {
pub const offset: u32 = 4;
pub const mask: u32 = 0b111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MNU {
pub const offset: u32 = 8;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MNT {
pub const offset: u32 = 12;
pub const mask: u32 = 0b111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod HU {
pub const offset: u32 = 16;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod HT {
pub const offset: u32 = 20;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod PM {
pub const offset: u32 = 22;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod TSDR {
pub mod WDU {
pub const offset: u32 = 13;
pub const mask: u32 = 0b111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MT {
pub const offset: u32 = 12;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod MU {
pub const offset: u32 = 8;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod DT {
pub const offset: u32 = 4;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod DU {
pub const offset: u32 = 0;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod TSSSR {
pub use super::SSR::SS;
}
pub mod CALR {
pub mod CALP {
pub const offset: u32 = 15;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const NoChange: u32 = 0b0;
pub const IncreaseFreq: u32 = 0b1;
}
}
pub mod CALW8 {
pub const offset: u32 = 14;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Eight_Second: u32 = 0b1;
}
}
pub mod CALW16 {
pub const offset: u32 = 13;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Sixteen_Second: u32 = 0b1;
}
}
pub mod CALM {
pub const offset: u32 = 0;
pub const mask: u32 = 0x1ff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod TAFCR {
pub mod TAMP1E {
pub const offset: u32 = 0;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b0;
pub const Enabled: u32 = 0b1;
}
}
pub mod TAMP1TRG {
pub const offset: u32 = 1;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const RisingEdge: u32 = 0b0;
pub const FallingEdge: u32 = 0b1;
}
}
pub mod TAMPIE {
pub const offset: u32 = 2;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Disabled: u32 = 0b0;
pub const Enabled: u32 = 0b1;
}
}
pub mod TAMP2E {
pub const offset: u32 = 3;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub use super::TAMP1E::RW;
}
pub mod TAMP2TRG {
pub const offset: u32 = 4;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub use super::TAMP1TRG::RW;
}
pub mod TAMP3E {
pub const offset: u32 = 5;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub use super::TAMP1E::RW;
}
pub mod TAMP3TRG {
pub const offset: u32 = 6;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub use super::TAMP1TRG::RW;
}
pub mod TAMPTS {
pub const offset: u32 = 7;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const NoSave: u32 = 0b0;
pub const Save: u32 = 0b1;
}
}
pub mod TAMPFREQ {
pub const offset: u32 = 8;
pub const mask: u32 = 0b111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Div32768: u32 = 0b000;
pub const Div16384: u32 = 0b001;
pub const Div8192: u32 = 0b010;
pub const Div4096: u32 = 0b011;
pub const Div2048: u32 = 0b100;
pub const Div1024: u32 = 0b101;
pub const Div512: u32 = 0b110;
pub const Div256: u32 = 0b111;
}
}
pub mod TAMPFLT {
pub const offset: u32 = 11;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Immediate: u32 = 0b00;
pub const Samples2: u32 = 0b01;
pub const Samples4: u32 = 0b10;
pub const Samples8: u32 = 0b11;
}
}
pub mod TAMPPRCH {
pub const offset: u32 = 13;
pub const mask: u32 = 0b11 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Cycles1: u32 = 0b00;
pub const Cycles2: u32 = 0b01;
pub const Cycles4: u32 = 0b10;
pub const Cycles8: u32 = 0b11;
}
}
pub mod TAMPPUDIS {
pub const offset: u32 = 15;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Enabled: u32 = 0b0;
pub const Disabled: u32 = 0b1;
}
}
pub mod PC13VALUE {
pub const offset: u32 = 18;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const High: u32 = 0b1;
pub const Low: u32 = 0b0;
}
}
pub mod PC13MODE {
pub const offset: u32 = 19;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub mod RW {
pub const Floating: u32 = 0b0;
pub const PushPull: u32 = 0b1;
}
}
pub mod PC14VALUE {
pub const offset: u32 = 20;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub use super::PC13VALUE::RW;
}
pub mod PC14MODE {
pub const offset: u32 = 21;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub use super::PC13MODE::RW;
}
pub mod PC15VALUE {
pub const offset: u32 = 22;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub use super::PC13VALUE::RW;
}
pub mod PC15MODE {
pub const offset: u32 = 23;
pub const mask: u32 = 1 << offset;
pub mod R {}
pub mod W {}
pub use super::PC13MODE::RW;
}
}
pub mod ALRMASSR {
pub mod MASKSS {
pub const offset: u32 = 24;
pub const mask: u32 = 0b1111 << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
pub mod SS {
pub const offset: u32 = 0;
pub const mask: u32 = 0x7fff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod ALRMBSSR {
pub use super::ALRMASSR::MASKSS;
pub use super::ALRMASSR::SS;
}
pub mod BKP0R {
pub mod BKP {
pub const offset: u32 = 0;
pub const mask: u32 = 0xffffffff << offset;
pub mod R {}
pub mod W {}
pub mod RW {}
}
}
pub mod BKP1R {
pub use super::BKP0R::BKP;
}
pub mod BKP2R {
pub use super::BKP0R::BKP;
}
pub mod BKP3R {
pub use super::BKP0R::BKP;
}
pub mod BKP4R {
pub use super::BKP0R::BKP;
}
pub mod BKP5R {
pub use super::BKP0R::BKP;
}
pub mod BKP6R {
pub use super::BKP0R::BKP;
}
pub mod BKP7R {
pub use super::BKP0R::BKP;
}
pub mod BKP8R {
pub use super::BKP0R::BKP;
}
pub mod BKP9R {
pub use super::BKP0R::BKP;
}
pub mod BKP10R {
pub use super::BKP0R::BKP;
}
pub mod BKP11R {
pub use super::BKP0R::BKP;
}
pub mod BKP12R {
pub use super::BKP0R::BKP;
}
pub mod BKP13R {
pub use super::BKP0R::BKP;
}
pub mod BKP14R {
pub use super::BKP0R::BKP;
}
pub mod BKP15R {
pub use super::BKP0R::BKP;
}
pub mod BKP16R {
pub use super::BKP0R::BKP;
}
pub mod BKP17R {
pub use super::BKP0R::BKP;
}
pub mod BKP18R {
pub use super::BKP0R::BKP;
}
pub mod BKP19R {
pub use super::BKP0R::BKP;
}
pub mod BKP20R {
pub use super::BKP0R::BKP;
}
pub mod BKP21R {
pub use super::BKP0R::BKP;
}
pub mod BKP22R {
pub use super::BKP0R::BKP;
}
pub mod BKP23R {
pub use super::BKP0R::BKP;
}
pub mod BKP24R {
pub use super::BKP0R::BKP;
}
pub mod BKP25R {
pub use super::BKP0R::BKP;
}
pub mod BKP26R {
pub use super::BKP0R::BKP;
}
pub mod BKP27R {
pub use super::BKP0R::BKP;
}
pub mod BKP28R {
pub use super::BKP0R::BKP;
}
pub mod BKP29R {
pub use super::BKP0R::BKP;
}
pub mod BKP30R {
pub use super::BKP0R::BKP;
}
pub mod BKP31R {
pub use super::BKP0R::BKP;
}
#[repr(C)]
pub struct RegisterBlock {
pub TR: RWRegister<u32>,
pub DR: RWRegister<u32>,
pub CR: RWRegister<u32>,
pub ISR: RWRegister<u32>,
pub PRER: RWRegister<u32>,
pub WUTR: RWRegister<u32>,
_reserved1: [u32; 1],
pub ALRMAR: RWRegister<u32>,
pub ALRMBR: RWRegister<u32>,
pub WPR: WORegister<u32>,
pub SSR: RORegister<u32>,
pub SHIFTR: WORegister<u32>,
pub TSTR: RORegister<u32>,
pub TSDR: RORegister<u32>,
pub TSSSR: RORegister<u32>,
pub CALR: RWRegister<u32>,
pub TAFCR: RWRegister<u32>,
pub ALRMASSR: RWRegister<u32>,
pub ALRMBSSR: RWRegister<u32>,
_reserved2: [u32; 1],
pub BKP0R: RWRegister<u32>,
pub BKP1R: RWRegister<u32>,
pub BKP2R: RWRegister<u32>,
pub BKP3R: RWRegister<u32>,
pub BKP4R: RWRegister<u32>,
pub BKP5R: RWRegister<u32>,
pub BKP6R: RWRegister<u32>,
pub BKP7R: RWRegister<u32>,
pub BKP8R: RWRegister<u32>,
pub BKP9R: RWRegister<u32>,
pub BKP10R: RWRegister<u32>,
pub BKP11R: RWRegister<u32>,
pub BKP12R: RWRegister<u32>,
pub BKP13R: RWRegister<u32>,
pub BKP14R: RWRegister<u32>,
pub BKP15R: RWRegister<u32>,
pub BKP16R: RWRegister<u32>,
pub BKP17R: RWRegister<u32>,
pub BKP18R: RWRegister<u32>,
pub BKP19R: RWRegister<u32>,
pub BKP20R: RWRegister<u32>,
pub BKP21R: RWRegister<u32>,
pub BKP22R: RWRegister<u32>,
pub BKP23R: RWRegister<u32>,
pub BKP24R: RWRegister<u32>,
pub BKP25R: RWRegister<u32>,
pub BKP26R: RWRegister<u32>,
pub BKP27R: RWRegister<u32>,
pub BKP28R: RWRegister<u32>,
pub BKP29R: RWRegister<u32>,
pub BKP30R: RWRegister<u32>,
pub BKP31R: RWRegister<u32>,
}
pub struct ResetValues {
pub TR: u32,
pub DR: u32,
pub CR: u32,
pub ISR: u32,
pub PRER: u32,
pub WUTR: u32,
pub ALRMAR: u32,
pub ALRMBR: u32,
pub WPR: u32,
pub SSR: u32,
pub SHIFTR: u32,
pub TSTR: u32,
pub TSDR: u32,
pub TSSSR: u32,
pub CALR: u32,
pub TAFCR: u32,
pub ALRMASSR: u32,
pub ALRMBSSR: u32,
pub BKP0R: u32,
pub BKP1R: u32,
pub BKP2R: u32,
pub BKP3R: u32,
pub BKP4R: u32,
pub BKP5R: u32,
pub BKP6R: u32,
pub BKP7R: u32,
pub BKP8R: u32,
pub BKP9R: u32,
pub BKP10R: u32,
pub BKP11R: u32,
pub BKP12R: u32,
pub BKP13R: u32,
pub BKP14R: u32,
pub BKP15R: u32,
pub BKP16R: u32,
pub BKP17R: u32,
pub BKP18R: u32,
pub BKP19R: u32,
pub BKP20R: u32,
pub BKP21R: u32,
pub BKP22R: u32,
pub BKP23R: u32,
pub BKP24R: u32,
pub BKP25R: u32,
pub BKP26R: u32,
pub BKP27R: u32,
pub BKP28R: u32,
pub BKP29R: u32,
pub BKP30R: u32,
pub BKP31R: u32,
}
#[cfg(not(feature = "nosync"))]
pub struct Instance {
pub(crate) addr: u32,
pub(crate) _marker: PhantomData<*const RegisterBlock>,
}
#[cfg(not(feature = "nosync"))]
impl ::core::ops::Deref for Instance {
type Target = RegisterBlock;
#[inline(always)]
fn deref(&self) -> &RegisterBlock {
unsafe { &*(self.addr as *const _) }
}
}
#[cfg(feature = "rtic")]
unsafe impl Send for Instance {}