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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
#[doc = r" Register block"]
#[repr(C)]
pub struct RegisterBlock {
    #[doc = "0x00 - Control A"]
    pub ctrla: CTRLA,
    #[doc = "0x01 - Reference Control"]
    pub refctrl: REFCTRL,
    #[doc = "0x02 - Average Control"]
    pub avgctrl: AVGCTRL,
    #[doc = "0x03 - Sampling Time Control"]
    pub sampctrl: SAMPCTRL,
    #[doc = "0x04 - Control B"]
    pub ctrlb: CTRLB,
    _reserved5: [u8; 2usize],
    #[doc = "0x08 - Window Monitor Control"]
    pub winctrl: WINCTRL,
    _reserved6: [u8; 3usize],
    #[doc = "0x0c - Software Trigger"]
    pub swtrig: SWTRIG,
    _reserved7: [u8; 3usize],
    #[doc = "0x10 - Input Control"]
    pub inputctrl: INPUTCTRL,
    #[doc = "0x14 - Event Control"]
    pub evctrl: EVCTRL,
    _reserved9: [u8; 1usize],
    #[doc = "0x16 - Interrupt Enable Clear"]
    pub intenclr: INTENCLR,
    #[doc = "0x17 - Interrupt Enable Set"]
    pub intenset: INTENSET,
    #[doc = "0x18 - Interrupt Flag Status and Clear"]
    pub intflag: INTFLAG,
    #[doc = "0x19 - Status"]
    pub status: STATUS,
    #[doc = "0x1a - Result"]
    pub result: RESULT,
    #[doc = "0x1c - Window Monitor Lower Threshold"]
    pub winlt: WINLT,
    _reserved15: [u8; 2usize],
    #[doc = "0x20 - Window Monitor Upper Threshold"]
    pub winut: WINUT,
    _reserved16: [u8; 2usize],
    #[doc = "0x24 - Gain Correction"]
    pub gaincorr: GAINCORR,
    #[doc = "0x26 - Offset Correction"]
    pub offsetcorr: OFFSETCORR,
    #[doc = "0x28 - Calibration"]
    pub calib: CALIB,
    #[doc = "0x2a - Debug Control"]
    pub dbgctrl: DBGCTRL,
}
#[doc = "Control A"]
pub struct CTRLA {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Control A"]
pub mod ctrla;
#[doc = "Reference Control"]
pub struct REFCTRL {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Reference Control"]
pub mod refctrl;
#[doc = "Average Control"]
pub struct AVGCTRL {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Average Control"]
pub mod avgctrl;
#[doc = "Sampling Time Control"]
pub struct SAMPCTRL {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Sampling Time Control"]
pub mod sampctrl;
#[doc = "Control B"]
pub struct CTRLB {
    register: ::vcell::VolatileCell<u16>,
}
#[doc = "Control B"]
pub mod ctrlb;
#[doc = "Window Monitor Control"]
pub struct WINCTRL {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Window Monitor Control"]
pub mod winctrl;
#[doc = "Software Trigger"]
pub struct SWTRIG {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Software Trigger"]
pub mod swtrig;
#[doc = "Input Control"]
pub struct INPUTCTRL {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Input Control"]
pub mod inputctrl;
#[doc = "Event Control"]
pub struct EVCTRL {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Event Control"]
pub mod evctrl;
#[doc = "Interrupt Enable Clear"]
pub struct INTENCLR {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Interrupt Enable Clear"]
pub mod intenclr;
#[doc = "Interrupt Enable Set"]
pub struct INTENSET {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Interrupt Enable Set"]
pub mod intenset;
#[doc = "Interrupt Flag Status and Clear"]
pub struct INTFLAG {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Interrupt Flag Status and Clear"]
pub mod intflag;
#[doc = "Status"]
pub struct STATUS {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Status"]
pub mod status;
#[doc = "Result"]
pub struct RESULT {
    register: ::vcell::VolatileCell<u16>,
}
#[doc = "Result"]
pub mod result;
#[doc = "Window Monitor Lower Threshold"]
pub struct WINLT {
    register: ::vcell::VolatileCell<u16>,
}
#[doc = "Window Monitor Lower Threshold"]
pub mod winlt;
#[doc = "Window Monitor Upper Threshold"]
pub struct WINUT {
    register: ::vcell::VolatileCell<u16>,
}
#[doc = "Window Monitor Upper Threshold"]
pub mod winut;
#[doc = "Gain Correction"]
pub struct GAINCORR {
    register: ::vcell::VolatileCell<u16>,
}
#[doc = "Gain Correction"]
pub mod gaincorr;
#[doc = "Offset Correction"]
pub struct OFFSETCORR {
    register: ::vcell::VolatileCell<u16>,
}
#[doc = "Offset Correction"]
pub mod offsetcorr;
#[doc = "Calibration"]
pub struct CALIB {
    register: ::vcell::VolatileCell<u16>,
}
#[doc = "Calibration"]
pub mod calib;
#[doc = "Debug Control"]
pub struct DBGCTRL {
    register: ::vcell::VolatileCell<u8>,
}
#[doc = "Debug Control"]
pub mod dbgctrl;