k66 0.0.1

Peripheral access API for Kinetis K66 microcontrollers
Documentation
#[doc = r" Register block"]
#[repr(C)]
pub struct RegisterBlock {
    #[doc = "0x00 - Peripheral ID register"]
    pub perid: PERID,
    _reserved0: [u8; 3usize],
    #[doc = "0x04 - Peripheral ID Complement register"]
    pub idcomp: IDCOMP,
    _reserved1: [u8; 3usize],
    #[doc = "0x08 - Peripheral Revision register"]
    pub rev: REV,
    _reserved2: [u8; 3usize],
    #[doc = "0x0c - Peripheral Additional Info register"]
    pub addinfo: ADDINFO,
    _reserved3: [u8; 3usize],
    #[doc = "0x10 - OTG Interrupt Status register"]
    pub otgistat: OTGISTAT,
    _reserved4: [u8; 3usize],
    #[doc = "0x14 - OTG Interrupt Control register"]
    pub otgicr: OTGICR,
    _reserved5: [u8; 3usize],
    #[doc = "0x18 - OTG Status register"]
    pub otgstat: OTGSTAT,
    _reserved6: [u8; 3usize],
    #[doc = "0x1c - OTG Control register"]
    pub otgctl: OTGCTL,
    _reserved7: [u8; 99usize],
    #[doc = "0x80 - Interrupt Status register"]
    pub istat: ISTAT,
    _reserved8: [u8; 3usize],
    #[doc = "0x84 - Interrupt Enable register"]
    pub inten: INTEN,
    _reserved9: [u8; 3usize],
    #[doc = "0x88 - Error Interrupt Status register"]
    pub errstat: ERRSTAT,
    _reserved10: [u8; 3usize],
    #[doc = "0x8c - Error Interrupt Enable register"]
    pub erren: ERREN,
    _reserved11: [u8; 3usize],
    #[doc = "0x90 - Status register"]
    pub stat: STAT,
    _reserved12: [u8; 3usize],
    #[doc = "0x94 - Control register"]
    pub ctl: CTL,
    _reserved13: [u8; 3usize],
    #[doc = "0x98 - Address register"]
    pub addr: ADDR,
    _reserved14: [u8; 3usize],
    #[doc = "0x9c - BDT Page register 1"]
    pub bdtpage1: BDTPAGE1,
    _reserved15: [u8; 3usize],
    #[doc = "0xa0 - Frame Number register Low"]
    pub frmnuml: FRMNUML,
    _reserved16: [u8; 3usize],
    #[doc = "0xa4 - Frame Number register High"]
    pub frmnumh: FRMNUMH,
    _reserved17: [u8; 3usize],
    #[doc = "0xa8 - Token register"]
    pub token: TOKEN,
    _reserved18: [u8; 3usize],
    #[doc = "0xac - SOF Threshold register"]
    pub softhld: SOFTHLD,
    _reserved19: [u8; 3usize],
    #[doc = "0xb0 - BDT Page Register 2"]
    pub bdtpage2: BDTPAGE2,
    _reserved20: [u8; 3usize],
    #[doc = "0xb4 - BDT Page Register 3"]
    pub bdtpage3: BDTPAGE3,
    _reserved21: [u8; 11usize],
    #[doc = "0xc0 - Endpoint Control register"]
    pub endpt0: ENDPT,
    _reserved22: [u8; 3usize],
    #[doc = "0xc4 - Endpoint Control register"]
    pub endpt1: ENDPT,
    _reserved23: [u8; 3usize],
    #[doc = "0xc8 - Endpoint Control register"]
    pub endpt2: ENDPT,
    _reserved24: [u8; 3usize],
    #[doc = "0xcc - Endpoint Control register"]
    pub endpt3: ENDPT,
    _reserved25: [u8; 3usize],
    #[doc = "0xd0 - Endpoint Control register"]
    pub endpt4: ENDPT,
    _reserved26: [u8; 3usize],
    #[doc = "0xd4 - Endpoint Control register"]
    pub endpt5: ENDPT,
    _reserved27: [u8; 3usize],
    #[doc = "0xd8 - Endpoint Control register"]
    pub endpt6: ENDPT,
    _reserved28: [u8; 3usize],
    #[doc = "0xdc - Endpoint Control register"]
    pub endpt7: ENDPT,
    _reserved29: [u8; 3usize],
    #[doc = "0xe0 - Endpoint Control register"]
    pub endpt8: ENDPT,
    _reserved30: [u8; 3usize],
    #[doc = "0xe4 - Endpoint Control register"]
    pub endpt9: ENDPT,
    _reserved31: [u8; 3usize],
    #[doc = "0xe8 - Endpoint Control register"]
    pub endpt10: ENDPT,
    _reserved32: [u8; 3usize],
    #[doc = "0xec - Endpoint Control register"]
    pub endpt11: ENDPT,
    _reserved33: [u8; 3usize],
    #[doc = "0xf0 - Endpoint Control register"]
    pub endpt12: ENDPT,
    _reserved34: [u8; 3usize],
    #[doc = "0xf4 - Endpoint Control register"]
    pub endpt13: ENDPT,
    _reserved35: [u8; 3usize],
    #[doc = "0xf8 - Endpoint Control register"]
    pub endpt14: ENDPT,
    _reserved36: [u8; 3usize],
    #[doc = "0xfc - Endpoint Control register"]
    pub endpt15: ENDPT,
    _reserved37: [u8; 3usize],
    #[doc = "0x100 - USB Control register"]
    pub usbctrl: USBCTRL,
    _reserved38: [u8; 3usize],
    #[doc = "0x104 - USB OTG Observe register"]
    pub observe: OBSERVE,
    _reserved39: [u8; 3usize],
    #[doc = "0x108 - USB OTG Control register"]
    pub control: CONTROL,
    _reserved40: [u8; 3usize],
    #[doc = "0x10c - USB Transceiver Control register 0"]
    pub usbtrc0: USBTRC0,
    _reserved41: [u8; 7usize],
    #[doc = "0x114 - Frame Adjust Register"]
    pub usbfrmadjust: USBFRMADJUST,
    _reserved42: [u8; 43usize],
    #[doc = "0x140 - USB Clock recovery control"]
    pub clk_recover_ctrl: CLK_RECOVER_CTRL,
    _reserved43: [u8; 3usize],
    #[doc = "0x144 - IRC48M oscillator enable register"]
    pub clk_recover_irc_en: CLK_RECOVER_IRC_EN,
    _reserved44: [u8; 15usize],
    #[doc = "0x154 - Clock recovery combined interrupt enable"]
    pub clk_recover_int_en: CLK_RECOVER_INT_EN,
    _reserved45: [u8; 7usize],
    #[doc = "0x15c - Clock recovery separated interrupt status"]
    pub clk_recover_int_status: CLK_RECOVER_INT_STATUS,
}
#[doc = "Peripheral ID register"]
pub struct PERID {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Peripheral ID register"]
pub mod perid;
#[doc = "Peripheral ID Complement register"]
pub struct IDCOMP {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Peripheral ID Complement register"]
pub mod idcomp;
#[doc = "Peripheral Revision register"]
pub struct REV {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Peripheral Revision register"]
pub mod rev;
#[doc = "Peripheral Additional Info register"]
pub struct ADDINFO {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Peripheral Additional Info register"]
pub mod addinfo;
#[doc = "OTG Interrupt Status register"]
pub struct OTGISTAT {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "OTG Interrupt Status register"]
pub mod otgistat;
#[doc = "OTG Interrupt Control register"]
pub struct OTGICR {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "OTG Interrupt Control register"]
pub mod otgicr;
#[doc = "OTG Status register"]
pub struct OTGSTAT {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "OTG Status register"]
pub mod otgstat;
#[doc = "OTG Control register"]
pub struct OTGCTL {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "OTG Control register"]
pub mod otgctl;
#[doc = "Interrupt Status register"]
pub struct ISTAT {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Interrupt Status register"]
pub mod istat;
#[doc = "Interrupt Enable register"]
pub struct INTEN {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Interrupt Enable register"]
pub mod inten;
#[doc = "Error Interrupt Status register"]
pub struct ERRSTAT {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Error Interrupt Status register"]
pub mod errstat;
#[doc = "Error Interrupt Enable register"]
pub struct ERREN {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Error Interrupt Enable register"]
pub mod erren;
#[doc = "Status register"]
pub struct STAT {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Status register"]
pub mod stat;
#[doc = "Control register"]
pub struct CTL {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Control register"]
pub mod ctl;
#[doc = "Address register"]
pub struct ADDR {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Address register"]
pub mod addr;
#[doc = "BDT Page register 1"]
pub struct BDTPAGE1 {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "BDT Page register 1"]
pub mod bdtpage1;
#[doc = "Frame Number register Low"]
pub struct FRMNUML {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Frame Number register Low"]
pub mod frmnuml;
#[doc = "Frame Number register High"]
pub struct FRMNUMH {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Frame Number register High"]
pub mod frmnumh;
#[doc = "Token register"]
pub struct TOKEN {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Token register"]
pub mod token;
#[doc = "SOF Threshold register"]
pub struct SOFTHLD {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "SOF Threshold register"]
pub mod softhld;
#[doc = "BDT Page Register 2"]
pub struct BDTPAGE2 {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "BDT Page Register 2"]
pub mod bdtpage2;
#[doc = "BDT Page Register 3"]
pub struct BDTPAGE3 {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "BDT Page Register 3"]
pub mod bdtpage3;
#[doc = "Endpoint Control register"]
pub struct ENDPT {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Endpoint Control register"]
pub mod endpt;
#[doc = "USB Control register"]
pub struct USBCTRL {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "USB Control register"]
pub mod usbctrl;
#[doc = "USB OTG Observe register"]
pub struct OBSERVE {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "USB OTG Observe register"]
pub mod observe;
#[doc = "USB OTG Control register"]
pub struct CONTROL {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "USB OTG Control register"]
pub mod control;
#[doc = "USB Transceiver Control register 0"]
pub struct USBTRC0 {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "USB Transceiver Control register 0"]
pub mod usbtrc0;
#[doc = "Frame Adjust Register"]
pub struct USBFRMADJUST {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Frame Adjust Register"]
pub mod usbfrmadjust;
#[doc = "USB Clock recovery control"]
pub struct CLK_RECOVER_CTRL {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "USB Clock recovery control"]
pub mod clk_recover_ctrl;
#[doc = "IRC48M oscillator enable register"]
pub struct CLK_RECOVER_IRC_EN {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "IRC48M oscillator enable register"]
pub mod clk_recover_irc_en;
#[doc = "Clock recovery combined interrupt enable"]
pub struct CLK_RECOVER_INT_EN {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Clock recovery combined interrupt enable"]
pub mod clk_recover_int_en;
#[doc = "Clock recovery separated interrupt status"]
pub struct CLK_RECOVER_INT_STATUS {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Clock recovery separated interrupt status"]
pub mod clk_recover_int_status;