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
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
#[doc = r" Register block"]
#[repr(C)]
pub struct RegisterBlock {
    #[doc = "0x00 - Start temperature measurement"]
    pub tasks_start: TASKS_START,
    #[doc = "0x04 - Stop temperature measurement"]
    pub tasks_stop: TASKS_STOP,
    _reserved0: [u8; 248usize],
    #[doc = "0x100 - Temperature measurement complete, data ready"]
    pub events_datardy: EVENTS_DATARDY,
    _reserved1: [u8; 512usize],
    #[doc = "0x304 - Enable interrupt"]
    pub intenset: INTENSET,
    #[doc = "0x308 - Disable interrupt"]
    pub intenclr: INTENCLR,
    _reserved2: [u8; 508usize],
    #[doc = "0x508 - Temperature in degC (0.25deg steps)"]
    pub temp: TEMP,
    _reserved3: [u8; 20usize],
    #[doc = "0x520 - Slope of 1st piece wise linear function"]
    pub a0: A0,
    #[doc = "0x524 - Slope of 2nd piece wise linear function"]
    pub a1: A1,
    #[doc = "0x528 - Slope of 3rd piece wise linear function"]
    pub a2: A2,
    #[doc = "0x52c - Slope of 4th piece wise linear function"]
    pub a3: A3,
    #[doc = "0x530 - Slope of 5th piece wise linear function"]
    pub a4: A4,
    #[doc = "0x534 - Slope of 6th piece wise linear function"]
    pub a5: A5,
    _reserved4: [u8; 8usize],
    #[doc = "0x540 - y-intercept of 1st piece wise linear function"]
    pub b0: B0,
    #[doc = "0x544 - y-intercept of 2nd piece wise linear function"]
    pub b1: B1,
    #[doc = "0x548 - y-intercept of 3rd piece wise linear function"]
    pub b2: B2,
    #[doc = "0x54c - y-intercept of 4th piece wise linear function"]
    pub b3: B3,
    #[doc = "0x550 - y-intercept of 5th piece wise linear function"]
    pub b4: B4,
    #[doc = "0x554 - y-intercept of 6th piece wise linear function"]
    pub b5: B5,
    _reserved5: [u8; 8usize],
    #[doc = "0x560 - End point of 1st piece wise linear function"]
    pub t0: T0,
    #[doc = "0x564 - End point of 2nd piece wise linear function"]
    pub t1: T1,
    #[doc = "0x568 - End point of 3rd piece wise linear function"]
    pub t2: T2,
    #[doc = "0x56c - End point of 4th piece wise linear function"]
    pub t3: T3,
    #[doc = "0x570 - End point of 5th piece wise linear function"]
    pub t4: T4,
}
#[doc = "Start temperature measurement"]
pub struct TASKS_START {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Start temperature measurement"]
pub mod tasks_start;
#[doc = "Stop temperature measurement"]
pub struct TASKS_STOP {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Stop temperature measurement"]
pub mod tasks_stop;
#[doc = "Temperature measurement complete, data ready"]
pub struct EVENTS_DATARDY {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Temperature measurement complete, data ready"]
pub mod events_datardy;
#[doc = "Enable interrupt"]
pub struct INTENSET {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Enable interrupt"]
pub mod intenset;
#[doc = "Disable interrupt"]
pub struct INTENCLR {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Disable interrupt"]
pub mod intenclr;
#[doc = "Temperature in degC (0.25deg steps)"]
pub struct TEMP {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Temperature in degC (0.25deg steps)"]
pub mod temp;
#[doc = "Slope of 1st piece wise linear function"]
pub struct A0 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Slope of 1st piece wise linear function"]
pub mod a0;
#[doc = "Slope of 2nd piece wise linear function"]
pub struct A1 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Slope of 2nd piece wise linear function"]
pub mod a1;
#[doc = "Slope of 3rd piece wise linear function"]
pub struct A2 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Slope of 3rd piece wise linear function"]
pub mod a2;
#[doc = "Slope of 4th piece wise linear function"]
pub struct A3 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Slope of 4th piece wise linear function"]
pub mod a3;
#[doc = "Slope of 5th piece wise linear function"]
pub struct A4 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Slope of 5th piece wise linear function"]
pub mod a4;
#[doc = "Slope of 6th piece wise linear function"]
pub struct A5 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "Slope of 6th piece wise linear function"]
pub mod a5;
#[doc = "y-intercept of 1st piece wise linear function"]
pub struct B0 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "y-intercept of 1st piece wise linear function"]
pub mod b0;
#[doc = "y-intercept of 2nd piece wise linear function"]
pub struct B1 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "y-intercept of 2nd piece wise linear function"]
pub mod b1;
#[doc = "y-intercept of 3rd piece wise linear function"]
pub struct B2 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "y-intercept of 3rd piece wise linear function"]
pub mod b2;
#[doc = "y-intercept of 4th piece wise linear function"]
pub struct B3 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "y-intercept of 4th piece wise linear function"]
pub mod b3;
#[doc = "y-intercept of 5th piece wise linear function"]
pub struct B4 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "y-intercept of 5th piece wise linear function"]
pub mod b4;
#[doc = "y-intercept of 6th piece wise linear function"]
pub struct B5 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "y-intercept of 6th piece wise linear function"]
pub mod b5;
#[doc = "End point of 1st piece wise linear function"]
pub struct T0 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "End point of 1st piece wise linear function"]
pub mod t0;
#[doc = "End point of 2nd piece wise linear function"]
pub struct T1 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "End point of 2nd piece wise linear function"]
pub mod t1;
#[doc = "End point of 3rd piece wise linear function"]
pub struct T2 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "End point of 3rd piece wise linear function"]
pub mod t2;
#[doc = "End point of 4th piece wise linear function"]
pub struct T3 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "End point of 4th piece wise linear function"]
pub mod t3;
#[doc = "End point of 5th piece wise linear function"]
pub struct T4 {
    register: ::vcell::VolatileCell<u32>,
}
#[doc = "End point of 5th piece wise linear function"]
pub mod t4;