stm32h7 0.15.0

Device support crates for STM32H7 devices
Documentation
#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
    #[doc = "0x00 - MDMA Global Interrupt/Status Register"]
    pub gisr0: crate::Reg<gisr0::GISR0_SPEC>,
    _reserved1: [u8; 0x3c],
    #[doc = "0x40..0x78 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch0: CH,
    _reserved2: [u8; 0x08],
    #[doc = "0x80..0xb8 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch1: CH,
    _reserved3: [u8; 0x08],
    #[doc = "0xc0..0xf8 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch2: CH,
    _reserved4: [u8; 0x08],
    #[doc = "0x100..0x138 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch3: CH,
    _reserved5: [u8; 0x08],
    #[doc = "0x140..0x178 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch4: CH,
    _reserved6: [u8; 0x08],
    #[doc = "0x180..0x1b8 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch5: CH,
    _reserved7: [u8; 0x08],
    #[doc = "0x1c0..0x1f8 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch6: CH,
    _reserved8: [u8; 0x08],
    #[doc = "0x200..0x238 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch7: CH,
    _reserved9: [u8; 0x08],
    #[doc = "0x240..0x278 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch8: CH,
    _reserved10: [u8; 0x08],
    #[doc = "0x280..0x2b8 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch9: CH,
    _reserved11: [u8; 0x08],
    #[doc = "0x2c0..0x2f8 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch10: CH,
    _reserved12: [u8; 0x08],
    #[doc = "0x300..0x338 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch11: CH,
    _reserved13: [u8; 0x08],
    #[doc = "0x340..0x378 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch12: CH,
    _reserved14: [u8; 0x08],
    #[doc = "0x380..0x3b8 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch13: CH,
    _reserved15: [u8; 0x08],
    #[doc = "0x3c0..0x3f8 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch14: CH,
    _reserved16: [u8; 0x08],
    #[doc = "0x400..0x438 - Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
    pub ch15: CH,
}
#[doc = r"Register block"]
#[repr(C)]
pub struct CH {
    #[doc = "0x00 - MDMA channel x interrupt/status register"]
    pub isr: crate::Reg<self::ch::isr::ISR_SPEC>,
    #[doc = "0x04 - MDMA channel x interrupt flag clear register"]
    pub ifcr: crate::Reg<self::ch::ifcr::IFCR_SPEC>,
    #[doc = "0x08 - MDMA Channel x error status register"]
    pub esr: crate::Reg<self::ch::esr::ESR_SPEC>,
    #[doc = "0x0c - This register is used to control the concerned channel."]
    pub cr: crate::Reg<self::ch::cr::CR_SPEC>,
    #[doc = "0x10 - This register is used to configure the concerned channel."]
    pub tcr: crate::Reg<self::ch::tcr::TCR_SPEC>,
    #[doc = "0x14 - MDMA Channel x block number of data register"]
    pub bndtr: crate::Reg<self::ch::bndtr::BNDTR_SPEC>,
    #[doc = "0x18 - MDMA channel x source address register"]
    pub sar: crate::Reg<self::ch::sar::SAR_SPEC>,
    #[doc = "0x1c - MDMA channel x destination address register"]
    pub dar: crate::Reg<self::ch::dar::DAR_SPEC>,
    #[doc = "0x20 - MDMA channel x Block Repeat address Update register"]
    pub brur: crate::Reg<self::ch::brur::BRUR_SPEC>,
    #[doc = "0x24 - MDMA channel x Link Address register"]
    pub lar: crate::Reg<self::ch::lar::LAR_SPEC>,
    #[doc = "0x28 - MDMA channel x Trigger and Bus selection Register"]
    pub tbr: crate::Reg<self::ch::tbr::TBR_SPEC>,
    _reserved11: [u8; 0x04],
    #[doc = "0x30 - MDMA channel x Mask address register"]
    pub mar: crate::Reg<self::ch::mar::MAR_SPEC>,
    #[doc = "0x34 - MDMA channel x Mask Data register"]
    pub mdr: crate::Reg<self::ch::mdr::MDR_SPEC>,
}
#[doc = r"Register block"]
#[doc = "Channel cluster: C?ISR, C?IFCR, C?ESR, C?CR, C?TCR, C?BNDTR, C?SAR, C?DAR, C?BRUR, C?LAR, C?TBR, C?MAR and C?MDR registers"]
pub mod ch;
#[doc = "GISR0 register accessor: an alias for `Reg<GISR0_SPEC>`"]
pub type GISR0 = crate::Reg<gisr0::GISR0_SPEC>;
#[doc = "MDMA Global Interrupt/Status Register"]
pub mod gisr0;