#[repr(C)]
#[derive(Debug)]
///Register block
pub struct RegisterBlock {
    kr: KR,
    pr: PR,
    rlr: RLR,
    sr: SR,
}
impl RegisterBlock {
    ///0x00 - Key register (IWDG_KR)
    #[inline(always)]
    pub const fn kr(&self) -> &KR {
        &self.kr
    }
    ///0x04 - Prescaler register (IWDG_PR)
    #[inline(always)]
    pub const fn pr(&self) -> &PR {
        &self.pr
    }
    ///0x08 - Reload register (IWDG_RLR)
    #[inline(always)]
    pub const fn rlr(&self) -> &RLR {
        &self.rlr
    }
    ///0x0c - Status register (IWDG_SR)
    #[inline(always)]
    pub const fn sr(&self) -> &SR {
        &self.sr
    }
}
/**KR (w) register accessor: Key register (IWDG_KR)

You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`kr::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).

See register [structure](https://stm32-rs.github.io/stm32-rs/STM32F100.html#IWDG:KR)

For information about available fields see [`mod@kr`]
module*/
pub type KR = crate::Reg<kr::KRrs>;
///Key register (IWDG_KR)
pub mod kr;
/**PR (rw) register accessor: Prescaler register (IWDG_PR)

You can [`read`](crate::Reg::read) this register and get [`pr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`pr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).

See register [structure](https://stm32-rs.github.io/stm32-rs/STM32F100.html#IWDG:PR)

For information about available fields see [`mod@pr`]
module*/
pub type PR = crate::Reg<pr::PRrs>;
///Prescaler register (IWDG_PR)
pub mod pr;
/**RLR (rw) register accessor: Reload register (IWDG_RLR)

You can [`read`](crate::Reg::read) this register and get [`rlr::R`]. You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`rlr::W`]. You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).

See register [structure](https://stm32-rs.github.io/stm32-rs/STM32F100.html#IWDG:RLR)

For information about available fields see [`mod@rlr`]
module*/
pub type RLR = crate::Reg<rlr::RLRrs>;
///Reload register (IWDG_RLR)
pub mod rlr;
/**SR (r) register accessor: Status register (IWDG_SR)

You can [`read`](crate::Reg::read) this register and get [`sr::R`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).

See register [structure](https://stm32-rs.github.io/stm32-rs/STM32F100.html#IWDG:SR)

For information about available fields see [`mod@sr`]
module*/
pub type SR = crate::Reg<sr::SRrs>;
///Status register (IWDG_SR)
pub mod sr;
