bl61x_pac/
i2c.rs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
#[doc = r"Register block"]
#[repr(C)]
pub struct RegisterBlock {
    config: CONFIG,
    interrupt: INTERRUPT,
    sub_address: SUB_ADDRESS,
    bus_busy: BUS_BUSY,
    period_start: PERIOD_START,
    period_stop: PERIOD_STOP,
    period_data: PERIOD_DATA,
    _reserved7: [u8; 0x64],
    fifo_config_0: FIFO_CONFIG_0,
    fifo_config_1: FIFO_CONFIG_1,
    data_write: DATA_WRITE,
    data_read: DATA_READ,
}
impl RegisterBlock {
    #[doc = "0x00 - Function configuration register"]
    #[inline(always)]
    pub const fn config(&self) -> &CONFIG {
        &self.config
    }
    #[doc = "0x04 - Interrupt enables, states and masks"]
    #[inline(always)]
    pub const fn interrupt(&self) -> &INTERRUPT {
        &self.interrupt
    }
    #[doc = "0x08 - Register address of slave device"]
    #[inline(always)]
    pub const fn sub_address(&self) -> &SUB_ADDRESS {
        &self.sub_address
    }
    #[doc = "0x0c - Bus busy state indicator"]
    #[inline(always)]
    pub const fn bus_busy(&self) -> &BUS_BUSY {
        &self.bus_busy
    }
    #[doc = "0x10 - Duration of start phase"]
    #[inline(always)]
    pub const fn period_start(&self) -> &PERIOD_START {
        &self.period_start
    }
    #[doc = "0x14 - Duration of stop phase"]
    #[inline(always)]
    pub const fn period_stop(&self) -> &PERIOD_STOP {
        &self.period_stop
    }
    #[doc = "0x18 - Duration of data phase"]
    #[inline(always)]
    pub const fn period_data(&self) -> &PERIOD_DATA {
        &self.period_data
    }
    #[doc = "0x80 - FIFO configuration register 0"]
    #[inline(always)]
    pub const fn fifo_config_0(&self) -> &FIFO_CONFIG_0 {
        &self.fifo_config_0
    }
    #[doc = "0x84 - FIFO configuration register 1"]
    #[inline(always)]
    pub const fn fifo_config_1(&self) -> &FIFO_CONFIG_1 {
        &self.fifo_config_1
    }
    #[doc = "0x88 - FIFO write data register"]
    #[inline(always)]
    pub const fn data_write(&self) -> &DATA_WRITE {
        &self.data_write
    }
    #[doc = "0x8c - FIFO read data register"]
    #[inline(always)]
    pub const fn data_read(&self) -> &DATA_READ {
        &self.data_read
    }
}
#[doc = "config (rw) register accessor: Function configuration register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`config::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`config::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@config`]
module"]
pub type CONFIG = crate::Reg<config::CONFIG_SPEC>;
#[doc = "Function configuration register"]
pub mod config;
#[doc = "interrupt (rw) register accessor: Interrupt enables, states and masks\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`interrupt::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`interrupt::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@interrupt`]
module"]
pub type INTERRUPT = crate::Reg<interrupt::INTERRUPT_SPEC>;
#[doc = "Interrupt enables, states and masks"]
pub mod interrupt;
#[doc = "sub_address (rw) register accessor: Register address of slave device\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`sub_address::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`sub_address::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@sub_address`]
module"]
pub type SUB_ADDRESS = crate::Reg<sub_address::SUB_ADDRESS_SPEC>;
#[doc = "Register address of slave device"]
pub mod sub_address;
#[doc = "bus_busy (rw) register accessor: Bus busy state indicator\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`bus_busy::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`bus_busy::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@bus_busy`]
module"]
pub type BUS_BUSY = crate::Reg<bus_busy::BUS_BUSY_SPEC>;
#[doc = "Bus busy state indicator"]
pub mod bus_busy;
#[doc = "period_start (rw) register accessor: Duration of start phase\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`period_start::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`period_start::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@period_start`]
module"]
pub type PERIOD_START = crate::Reg<period_start::PERIOD_START_SPEC>;
#[doc = "Duration of start phase"]
pub mod period_start;
#[doc = "period_stop (rw) register accessor: Duration of stop phase\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`period_stop::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`period_stop::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@period_stop`]
module"]
pub type PERIOD_STOP = crate::Reg<period_stop::PERIOD_STOP_SPEC>;
#[doc = "Duration of stop phase"]
pub mod period_stop;
#[doc = "period_data (rw) register accessor: Duration of data phase\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`period_data::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`period_data::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@period_data`]
module"]
pub type PERIOD_DATA = crate::Reg<period_data::PERIOD_DATA_SPEC>;
#[doc = "Duration of data phase"]
pub mod period_data;
#[doc = "fifo_config_0 (rw) register accessor: FIFO configuration register 0\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`fifo_config_0::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`fifo_config_0::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@fifo_config_0`]
module"]
pub type FIFO_CONFIG_0 = crate::Reg<fifo_config_0::FIFO_CONFIG_0_SPEC>;
#[doc = "FIFO configuration register 0"]
pub mod fifo_config_0;
#[doc = "fifo_config_1 (rw) register accessor: FIFO configuration register 1\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`fifo_config_1::R`].  You can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`fifo_config_1::W`]. You can also [`modify`](crate::generic::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@fifo_config_1`]
module"]
pub type FIFO_CONFIG_1 = crate::Reg<fifo_config_1::FIFO_CONFIG_1_SPEC>;
#[doc = "FIFO configuration register 1"]
pub mod fifo_config_1;
#[doc = "data_write (w) register accessor: FIFO write data register\n\nYou can [`reset`](crate::generic::Reg::reset), [`write`](crate::generic::Reg::write), [`write_with_zero`](crate::generic::Reg::write_with_zero) this register using [`data_write::W`]. See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data_write`]
module"]
pub type DATA_WRITE = crate::Reg<data_write::DATA_WRITE_SPEC>;
#[doc = "FIFO write data register"]
pub mod data_write;
#[doc = "data_read (r) register accessor: FIFO read data register\n\nYou can [`read`](crate::generic::Reg::read) this register and get [`data_read::R`].  See [API](https://docs.rs/svd2rust/#read--modify--write-api).\n\nFor information about available fields see [`mod@data_read`]
module"]
pub type DATA_READ = crate::Reg<data_read::DATA_READ_SPEC>;
#[doc = "FIFO read data register"]
pub mod data_read;