imxrt_ral/blocks/imxrt1011/
tempmon.rs

1#[doc = "Temperature Monitor"]
2#[repr(C)]
3pub struct RegisterBlock {
4    _reserved0: [u8; 0x0180],
5    #[doc = "Tempsensor Control Register 0"]
6    pub TEMPSENSE0: crate::RWRegister<u32>,
7    #[doc = "Tempsensor Control Register 0"]
8    pub TEMPSENSE0_SET: crate::RWRegister<u32>,
9    #[doc = "Tempsensor Control Register 0"]
10    pub TEMPSENSE0_CLR: crate::RWRegister<u32>,
11    #[doc = "Tempsensor Control Register 0"]
12    pub TEMPSENSE0_TOG: crate::RWRegister<u32>,
13    #[doc = "Tempsensor Control Register 1"]
14    pub TEMPSENSE1: crate::RWRegister<u32>,
15    #[doc = "Tempsensor Control Register 1"]
16    pub TEMPSENSE1_SET: crate::RWRegister<u32>,
17    #[doc = "Tempsensor Control Register 1"]
18    pub TEMPSENSE1_CLR: crate::RWRegister<u32>,
19    #[doc = "Tempsensor Control Register 1"]
20    pub TEMPSENSE1_TOG: crate::RWRegister<u32>,
21    _reserved1: [u8; 0xf0],
22    #[doc = "Tempsensor Control Register 2"]
23    pub TEMPSENSE2: crate::RWRegister<u32>,
24    #[doc = "Tempsensor Control Register 2"]
25    pub TEMPSENSE2_SET: crate::RWRegister<u32>,
26    #[doc = "Tempsensor Control Register 2"]
27    pub TEMPSENSE2_CLR: crate::RWRegister<u32>,
28    #[doc = "Tempsensor Control Register 2"]
29    pub TEMPSENSE2_TOG: crate::RWRegister<u32>,
30}
31#[doc = "Tempsensor Control Register 0"]
32pub mod TEMPSENSE0 {
33    #[doc = "This bit powers down the temperature sensor."]
34    pub mod POWER_DOWN {
35        pub const offset: u32 = 0;
36        pub const mask: u32 = 0x01 << offset;
37        pub mod R {}
38        pub mod W {}
39        pub mod RW {
40            #[doc = "Enable power to the temperature sensor."]
41            pub const POWER_UP: u32 = 0;
42            #[doc = "Power down the temperature sensor."]
43            pub const POWER_DOWN: u32 = 0x01;
44        }
45    }
46    #[doc = "Starts the measurement process"]
47    pub mod MEASURE_TEMP {
48        pub const offset: u32 = 1;
49        pub const mask: u32 = 0x01 << offset;
50        pub mod R {}
51        pub mod W {}
52        pub mod RW {
53            #[doc = "Do not start the measurement process."]
54            pub const STOP: u32 = 0;
55            #[doc = "Start the measurement process."]
56            pub const START: u32 = 0x01;
57        }
58    }
59    #[doc = "Indicates that the latest temp is valid"]
60    pub mod FINISHED {
61        pub const offset: u32 = 2;
62        pub const mask: u32 = 0x01 << offset;
63        pub mod R {}
64        pub mod W {}
65        pub mod RW {
66            #[doc = "Last measurement is not ready yet."]
67            pub const INVALID: u32 = 0;
68            #[doc = "Last measurement is valid."]
69            pub const VALID: u32 = 0x01;
70        }
71    }
72    #[doc = "This bit field contains the last measured temperature count."]
73    pub mod TEMP_CNT {
74        pub const offset: u32 = 8;
75        pub const mask: u32 = 0x0fff << offset;
76        pub mod R {}
77        pub mod W {}
78        pub mod RW {}
79    }
80    #[doc = "This bit field contains the temperature count (raw sensor output) that will generate a high alarm when TEMP_CNT is smaller than this field"]
81    pub mod ALARM_VALUE {
82        pub const offset: u32 = 20;
83        pub const mask: u32 = 0x0fff << offset;
84        pub mod R {}
85        pub mod W {}
86        pub mod RW {}
87    }
88}
89#[doc = "Tempsensor Control Register 0"]
90pub mod TEMPSENSE0_SET {
91    #[doc = "This bit powers down the temperature sensor."]
92    pub mod POWER_DOWN {
93        pub const offset: u32 = 0;
94        pub const mask: u32 = 0x01 << offset;
95        pub mod R {}
96        pub mod W {}
97        pub mod RW {
98            #[doc = "Enable power to the temperature sensor."]
99            pub const POWER_UP: u32 = 0;
100            #[doc = "Power down the temperature sensor."]
101            pub const POWER_DOWN: u32 = 0x01;
102        }
103    }
104    #[doc = "Starts the measurement process"]
105    pub mod MEASURE_TEMP {
106        pub const offset: u32 = 1;
107        pub const mask: u32 = 0x01 << offset;
108        pub mod R {}
109        pub mod W {}
110        pub mod RW {
111            #[doc = "Do not start the measurement process."]
112            pub const STOP: u32 = 0;
113            #[doc = "Start the measurement process."]
114            pub const START: u32 = 0x01;
115        }
116    }
117    #[doc = "Indicates that the latest temp is valid"]
118    pub mod FINISHED {
119        pub const offset: u32 = 2;
120        pub const mask: u32 = 0x01 << offset;
121        pub mod R {}
122        pub mod W {}
123        pub mod RW {
124            #[doc = "Last measurement is not ready yet."]
125            pub const INVALID: u32 = 0;
126            #[doc = "Last measurement is valid."]
127            pub const VALID: u32 = 0x01;
128        }
129    }
130    #[doc = "This bit field contains the last measured temperature count."]
131    pub mod TEMP_CNT {
132        pub const offset: u32 = 8;
133        pub const mask: u32 = 0x0fff << offset;
134        pub mod R {}
135        pub mod W {}
136        pub mod RW {}
137    }
138    #[doc = "This bit field contains the temperature count (raw sensor output) that will generate a high alarm when TEMP_CNT is smaller than this field"]
139    pub mod ALARM_VALUE {
140        pub const offset: u32 = 20;
141        pub const mask: u32 = 0x0fff << offset;
142        pub mod R {}
143        pub mod W {}
144        pub mod RW {}
145    }
146}
147#[doc = "Tempsensor Control Register 0"]
148pub mod TEMPSENSE0_CLR {
149    #[doc = "This bit powers down the temperature sensor."]
150    pub mod POWER_DOWN {
151        pub const offset: u32 = 0;
152        pub const mask: u32 = 0x01 << offset;
153        pub mod R {}
154        pub mod W {}
155        pub mod RW {
156            #[doc = "Enable power to the temperature sensor."]
157            pub const POWER_UP: u32 = 0;
158            #[doc = "Power down the temperature sensor."]
159            pub const POWER_DOWN: u32 = 0x01;
160        }
161    }
162    #[doc = "Starts the measurement process"]
163    pub mod MEASURE_TEMP {
164        pub const offset: u32 = 1;
165        pub const mask: u32 = 0x01 << offset;
166        pub mod R {}
167        pub mod W {}
168        pub mod RW {
169            #[doc = "Do not start the measurement process."]
170            pub const STOP: u32 = 0;
171            #[doc = "Start the measurement process."]
172            pub const START: u32 = 0x01;
173        }
174    }
175    #[doc = "Indicates that the latest temp is valid"]
176    pub mod FINISHED {
177        pub const offset: u32 = 2;
178        pub const mask: u32 = 0x01 << offset;
179        pub mod R {}
180        pub mod W {}
181        pub mod RW {
182            #[doc = "Last measurement is not ready yet."]
183            pub const INVALID: u32 = 0;
184            #[doc = "Last measurement is valid."]
185            pub const VALID: u32 = 0x01;
186        }
187    }
188    #[doc = "This bit field contains the last measured temperature count."]
189    pub mod TEMP_CNT {
190        pub const offset: u32 = 8;
191        pub const mask: u32 = 0x0fff << offset;
192        pub mod R {}
193        pub mod W {}
194        pub mod RW {}
195    }
196    #[doc = "This bit field contains the temperature count (raw sensor output) that will generate a high alarm when TEMP_CNT is smaller than this field"]
197    pub mod ALARM_VALUE {
198        pub const offset: u32 = 20;
199        pub const mask: u32 = 0x0fff << offset;
200        pub mod R {}
201        pub mod W {}
202        pub mod RW {}
203    }
204}
205#[doc = "Tempsensor Control Register 0"]
206pub mod TEMPSENSE0_TOG {
207    #[doc = "This bit powers down the temperature sensor."]
208    pub mod POWER_DOWN {
209        pub const offset: u32 = 0;
210        pub const mask: u32 = 0x01 << offset;
211        pub mod R {}
212        pub mod W {}
213        pub mod RW {
214            #[doc = "Enable power to the temperature sensor."]
215            pub const POWER_UP: u32 = 0;
216            #[doc = "Power down the temperature sensor."]
217            pub const POWER_DOWN: u32 = 0x01;
218        }
219    }
220    #[doc = "Starts the measurement process"]
221    pub mod MEASURE_TEMP {
222        pub const offset: u32 = 1;
223        pub const mask: u32 = 0x01 << offset;
224        pub mod R {}
225        pub mod W {}
226        pub mod RW {
227            #[doc = "Do not start the measurement process."]
228            pub const STOP: u32 = 0;
229            #[doc = "Start the measurement process."]
230            pub const START: u32 = 0x01;
231        }
232    }
233    #[doc = "Indicates that the latest temp is valid"]
234    pub mod FINISHED {
235        pub const offset: u32 = 2;
236        pub const mask: u32 = 0x01 << offset;
237        pub mod R {}
238        pub mod W {}
239        pub mod RW {
240            #[doc = "Last measurement is not ready yet."]
241            pub const INVALID: u32 = 0;
242            #[doc = "Last measurement is valid."]
243            pub const VALID: u32 = 0x01;
244        }
245    }
246    #[doc = "This bit field contains the last measured temperature count."]
247    pub mod TEMP_CNT {
248        pub const offset: u32 = 8;
249        pub const mask: u32 = 0x0fff << offset;
250        pub mod R {}
251        pub mod W {}
252        pub mod RW {}
253    }
254    #[doc = "This bit field contains the temperature count (raw sensor output) that will generate a high alarm when TEMP_CNT is smaller than this field"]
255    pub mod ALARM_VALUE {
256        pub const offset: u32 = 20;
257        pub const mask: u32 = 0x0fff << offset;
258        pub mod R {}
259        pub mod W {}
260        pub mod RW {}
261    }
262}
263#[doc = "Tempsensor Control Register 1"]
264pub mod TEMPSENSE1 {
265    #[doc = "This bits determines how many RTC clocks to wait before automatically repeating a temperature measurement"]
266    pub mod MEASURE_FREQ {
267        pub const offset: u32 = 0;
268        pub const mask: u32 = 0xffff << offset;
269        pub mod R {}
270        pub mod W {}
271        pub mod RW {}
272    }
273}
274#[doc = "Tempsensor Control Register 1"]
275pub mod TEMPSENSE1_SET {
276    #[doc = "This bits determines how many RTC clocks to wait before automatically repeating a temperature measurement"]
277    pub mod MEASURE_FREQ {
278        pub const offset: u32 = 0;
279        pub const mask: u32 = 0xffff << offset;
280        pub mod R {}
281        pub mod W {}
282        pub mod RW {}
283    }
284}
285#[doc = "Tempsensor Control Register 1"]
286pub mod TEMPSENSE1_CLR {
287    #[doc = "This bits determines how many RTC clocks to wait before automatically repeating a temperature measurement"]
288    pub mod MEASURE_FREQ {
289        pub const offset: u32 = 0;
290        pub const mask: u32 = 0xffff << offset;
291        pub mod R {}
292        pub mod W {}
293        pub mod RW {}
294    }
295}
296#[doc = "Tempsensor Control Register 1"]
297pub mod TEMPSENSE1_TOG {
298    #[doc = "This bits determines how many RTC clocks to wait before automatically repeating a temperature measurement"]
299    pub mod MEASURE_FREQ {
300        pub const offset: u32 = 0;
301        pub const mask: u32 = 0xffff << offset;
302        pub mod R {}
303        pub mod W {}
304        pub mod RW {}
305    }
306}
307#[doc = "Tempsensor Control Register 2"]
308pub mod TEMPSENSE2 {
309    #[doc = "This bit field contains the temperature count that will generate a low alarm interrupt when the field is exceeded by TEMP_CNT"]
310    pub mod LOW_ALARM_VALUE {
311        pub const offset: u32 = 0;
312        pub const mask: u32 = 0x0fff << offset;
313        pub mod R {}
314        pub mod W {}
315        pub mod RW {}
316    }
317    #[doc = "This bit field contains the temperature count that will generate a panic interrupt when TEMP_CNT is smaller than this field"]
318    pub mod PANIC_ALARM_VALUE {
319        pub const offset: u32 = 16;
320        pub const mask: u32 = 0x0fff << offset;
321        pub mod R {}
322        pub mod W {}
323        pub mod RW {}
324    }
325}
326#[doc = "Tempsensor Control Register 2"]
327pub mod TEMPSENSE2_SET {
328    #[doc = "This bit field contains the temperature count that will generate a low alarm interrupt when the field is exceeded by TEMP_CNT"]
329    pub mod LOW_ALARM_VALUE {
330        pub const offset: u32 = 0;
331        pub const mask: u32 = 0x0fff << offset;
332        pub mod R {}
333        pub mod W {}
334        pub mod RW {}
335    }
336    #[doc = "This bit field contains the temperature count that will generate a panic interrupt when TEMP_CNT is smaller than this field"]
337    pub mod PANIC_ALARM_VALUE {
338        pub const offset: u32 = 16;
339        pub const mask: u32 = 0x0fff << offset;
340        pub mod R {}
341        pub mod W {}
342        pub mod RW {}
343    }
344}
345#[doc = "Tempsensor Control Register 2"]
346pub mod TEMPSENSE2_CLR {
347    #[doc = "This bit field contains the temperature count that will generate a low alarm interrupt when the field is exceeded by TEMP_CNT"]
348    pub mod LOW_ALARM_VALUE {
349        pub const offset: u32 = 0;
350        pub const mask: u32 = 0x0fff << offset;
351        pub mod R {}
352        pub mod W {}
353        pub mod RW {}
354    }
355    #[doc = "This bit field contains the temperature count that will generate a panic interrupt when TEMP_CNT is smaller than this field"]
356    pub mod PANIC_ALARM_VALUE {
357        pub const offset: u32 = 16;
358        pub const mask: u32 = 0x0fff << offset;
359        pub mod R {}
360        pub mod W {}
361        pub mod RW {}
362    }
363}
364#[doc = "Tempsensor Control Register 2"]
365pub mod TEMPSENSE2_TOG {
366    #[doc = "This bit field contains the temperature count that will generate a low alarm interrupt when the field is exceeded by TEMP_CNT"]
367    pub mod LOW_ALARM_VALUE {
368        pub const offset: u32 = 0;
369        pub const mask: u32 = 0x0fff << offset;
370        pub mod R {}
371        pub mod W {}
372        pub mod RW {}
373    }
374    #[doc = "This bit field contains the temperature count that will generate a panic interrupt when TEMP_CNT is smaller than this field"]
375    pub mod PANIC_ALARM_VALUE {
376        pub const offset: u32 = 16;
377        pub const mask: u32 = 0x0fff << offset;
378        pub mod R {}
379        pub mod W {}
380        pub mod RW {}
381    }
382}