1#[doc = "Register `SCISETINT` reader"]
2pub type R = crate::R<ScisetintSpec>;
3#[doc = "Register `SCISETINT` writer"]
4pub type W = crate::W<ScisetintSpec>;
5#[doc = "Field `SETBRKDTINT` reader - 0:0\\]
6Set break-detect interrupt. This bit is effective in SCI-compatible mode only. Setting this bit enables the SCI/LIN to generate an interrupt if a break condition is detected on the LINRX pin. This field is writable in SCI mode only."]
7pub type SetbrkdtintR = crate::BitReader;
8#[doc = "Field `SETBRKDTINT` writer - 0:0\\]
9Set break-detect interrupt. This bit is effective in SCI-compatible mode only. Setting this bit enables the SCI/LIN to generate an interrupt if a break condition is detected on the LINRX pin. This field is writable in SCI mode only."]
10pub type SetbrkdtintW<'a, REG> = crate::BitWriter<'a, REG>;
11#[doc = "Field `SETWAKEUPINT` reader - 1:1\\]
12Set wake-up interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN to generate a wake-up interrupt and thereby exit low-power mode. The wake-up interrupt is asserted on falling edge of the wake-up pulse. If enabled, the wake-up interrupt is asserted when local low-power mode is requested while the receiver is busy or if a low level is detected on the SCIRX pin during low-power mode. Wake-up interrupt is not asserted upon a wakeup pulse if the module is not in power down mode."]
13pub type SetwakeupintR = crate::BitReader;
14#[doc = "Field `SETWAKEUPINT` writer - 1:1\\]
15Set wake-up interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN to generate a wake-up interrupt and thereby exit low-power mode. The wake-up interrupt is asserted on falling edge of the wake-up pulse. If enabled, the wake-up interrupt is asserted when local low-power mode is requested while the receiver is busy or if a low level is detected on the SCIRX pin during low-power mode. Wake-up interrupt is not asserted upon a wakeup pulse if the module is not in power down mode."]
16pub type SetwakeupintW<'a, REG> = crate::BitWriter<'a, REG>;
17#[doc = "Field `SETTIMEOUTINT` reader - 4:4\\]
18Set timeout interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN to generate an interrupt when no LIN bus activity (bus idle) occurs for at least 4 seconds. This field is writable in LIN mode only."]
19pub type SettimeoutintR = crate::BitReader;
20#[doc = "Field `SETTIMEOUTINT` writer - 4:4\\]
21Set timeout interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN to generate an interrupt when no LIN bus activity (bus idle) occurs for at least 4 seconds. This field is writable in LIN mode only."]
22pub type SettimeoutintW<'a, REG> = crate::BitWriter<'a, REG>;
23#[doc = "Field `Reserved1` reader - 5:5\\]
24Reserved"]
25pub type Reserved1R = crate::BitReader;
26#[doc = "Field `Reserved1` writer - 5:5\\]
27Reserved"]
28pub type Reserved1W<'a, REG> = crate::BitWriter<'a, REG>;
29#[doc = "Field `SETTOAWUSINT` reader - 6:6\\]
30Set Timeout After Wakeup Signal interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN to generate an interrupt when there is a timeout after one wakeup signal has been sent. This field is writable in LIN mode only."]
31pub type SettoawusintR = crate::BitReader;
32#[doc = "Field `SETTOAWUSINT` writer - 6:6\\]
33Set Timeout After Wakeup Signal interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN to generate an interrupt when there is a timeout after one wakeup signal has been sent. This field is writable in LIN mode only."]
34pub type SettoawusintW<'a, REG> = crate::BitWriter<'a, REG>;
35#[doc = "Field `SETTOA3WUSINT` reader - 7:7\\]
36Set Timeout After 3 Wakeup Signals interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN to generate an interrupt when there is a timeout after 3 wakeup signals have been sent. This field is writable in LIN mode only."]
37pub type Settoa3wusintR = crate::BitReader;
38#[doc = "Field `SETTOA3WUSINT` writer - 7:7\\]
39Set Timeout After 3 Wakeup Signals interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN to generate an interrupt when there is a timeout after 3 wakeup signals have been sent. This field is writable in LIN mode only."]
40pub type Settoa3wusintW<'a, REG> = crate::BitWriter<'a, REG>;
41#[doc = "Field `SETTXINT` reader - 8:8\\]
42Set Transmitter interrupt. Setting this bit enables the SCI/LIN to generate a transmit interrupt as data is being transferred from SCITD to SCITXSHF and the TXRDY bit is being set."]
43pub type SettxintR = crate::BitReader;
44#[doc = "Field `SETTXINT` writer - 8:8\\]
45Set Transmitter interrupt. Setting this bit enables the SCI/LIN to generate a transmit interrupt as data is being transferred from SCITD to SCITXSHF and the TXRDY bit is being set."]
46pub type SettxintW<'a, REG> = crate::BitWriter<'a, REG>;
47#[doc = "Field `SETRXINT` reader - 9:9\\]
48Set Receiver interrupt. Setting this bit enables the SCI/LIN to generate a receive interrupt after a frame has been completely received and the data is being transferred from SCIRXSHF to SCIRD."]
49pub type SetrxintR = crate::BitReader;
50#[doc = "Field `SETRXINT` writer - 9:9\\]
51Set Receiver interrupt. Setting this bit enables the SCI/LIN to generate a receive interrupt after a frame has been completely received and the data is being transferred from SCIRXSHF to SCIRD."]
52pub type SetrxintW<'a, REG> = crate::BitWriter<'a, REG>;
53#[doc = "Field `Reserved2` reader - 12:10\\]
54Reserved"]
55pub type Reserved2R = crate::FieldReader;
56#[doc = "Field `Reserved2` writer - 12:10\\]
57Reserved"]
58pub type Reserved2W<'a, REG> = crate::FieldWriter<'a, REG, 3>;
59#[doc = "Field `SETIDINT` reader - 13:13\\]
60Set Identification interrupt. This bit is effective in LIN mode only. This bit is set to enable interrupt once a valid matching identifier is received."]
61pub type SetidintR = crate::BitReader;
62#[doc = "Field `SETIDINT` writer - 13:13\\]
63Set Identification interrupt. This bit is effective in LIN mode only. This bit is set to enable interrupt once a valid matching identifier is received."]
64pub type SetidintW<'a, REG> = crate::BitWriter<'a, REG>;
65#[doc = "Field `Reserved3` reader - 15:14\\]
66Reserved"]
67pub type Reserved3R = crate::FieldReader;
68#[doc = "Field `Reserved3` writer - 15:14\\]
69Reserved"]
70pub type Reserved3W<'a, REG> = crate::FieldWriter<'a, REG, 2>;
71#[doc = "Field `SET_TX_DMA` reader - 16:16\\]
72Set transmit DMA. This bit is effective in LIN or SCI-compatible mode. To enable DMA requests for the transmitter, this bit must be set. If it is cleared, interrupt requests are generated depending on SETTXINT."]
73pub type SetTxDmaR = crate::BitReader;
74#[doc = "Field `SET_TX_DMA` writer - 16:16\\]
75Set transmit DMA. This bit is effective in LIN or SCI-compatible mode. To enable DMA requests for the transmitter, this bit must be set. If it is cleared, interrupt requests are generated depending on SETTXINT."]
76pub type SetTxDmaW<'a, REG> = crate::BitWriter<'a, REG>;
77#[doc = "Field `SET_RX_DMA` reader - 17:17\\]
78Set receiver DMA. This bit is effective in LIN or SCI-compatible mode. To enable DMA requests for the receiver this bit must be set. If it is cleared, interrupt requests are generated depending on SETRXINT."]
79pub type SetRxDmaR = crate::BitReader;
80#[doc = "Field `SET_RX_DMA` writer - 17:17\\]
81Set receiver DMA. This bit is effective in LIN or SCI-compatible mode. To enable DMA requests for the receiver this bit must be set. If it is cleared, interrupt requests are generated depending on SETRXINT."]
82pub type SetRxDmaW<'a, REG> = crate::BitWriter<'a, REG>;
83#[doc = "Field `SET_RX_DMA_ALL` reader - 18:18\\]
84Set receiver DMA for Address & Data frames. This bit is effective in LIN or SCI-compatible mode. To enable RX DMA request for address and data frames this bit must be set. If it is cleared, RX interrupt request is generated for address frames and DMA requests are generated for data frames."]
85pub type SetRxDmaAllR = crate::BitReader;
86#[doc = "Field `SET_RX_DMA_ALL` writer - 18:18\\]
87Set receiver DMA for Address & Data frames. This bit is effective in LIN or SCI-compatible mode. To enable RX DMA request for address and data frames this bit must be set. If it is cleared, RX interrupt request is generated for address frames and DMA requests are generated for data frames."]
88pub type SetRxDmaAllW<'a, REG> = crate::BitWriter<'a, REG>;
89#[doc = "Field `Reserved4` reader - 23:19\\]
90Reserved"]
91pub type Reserved4R = crate::FieldReader;
92#[doc = "Field `Reserved4` writer - 23:19\\]
93Reserved"]
94pub type Reserved4W<'a, REG> = crate::FieldWriter<'a, REG, 5>;
95#[doc = "Field `SETPEINT` reader - 24:24\\]
96Set parity interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN module to generate an interrupt when a parity error occurs."]
97pub type SetpeintR = crate::BitReader;
98#[doc = "Field `SETPEINT` writer - 24:24\\]
99Set parity interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN module to generate an interrupt when a parity error occurs."]
100pub type SetpeintW<'a, REG> = crate::BitWriter<'a, REG>;
101#[doc = "Field `SETOEINT` reader - 25:25\\]
102Set overrun-error interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN module to generate an interrupt when an overrun error occurs."]
103pub type SetoeintR = crate::BitReader;
104#[doc = "Field `SETOEINT` writer - 25:25\\]
105Set overrun-error interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN module to generate an interrupt when an overrun error occurs."]
106pub type SetoeintW<'a, REG> = crate::BitWriter<'a, REG>;
107#[doc = "Field `SETFEINT` reader - 26:26\\]
108Set framing-error interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN module to generate an interrupt when a framing error occurs."]
109pub type SetfeintR = crate::BitReader;
110#[doc = "Field `SETFEINT` writer - 26:26\\]
111Set framing-error interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN module to generate an interrupt when a framing error occurs."]
112pub type SetfeintW<'a, REG> = crate::BitWriter<'a, REG>;
113#[doc = "Field `SETNREINT` reader - 27:27\\]
114Set no-response-error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when a no-response error occurs. This field is writable in LIN mode only."]
115pub type SetnreintR = crate::BitReader;
116#[doc = "Field `SETNREINT` writer - 27:27\\]
117Set no-response-error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when a no-response error occurs. This field is writable in LIN mode only."]
118pub type SetnreintW<'a, REG> = crate::BitWriter<'a, REG>;
119#[doc = "Field `SETISFEINT` reader - 28:28\\]
120Set inconsistent-sync-field-error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when there is an inconsistent sync field error. This field is writable in LIN mode only."]
121pub type SetisfeintR = crate::BitReader;
122#[doc = "Field `SETISFEINT` writer - 28:28\\]
123Set inconsistent-sync-field-error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when there is an inconsistent sync field error. This field is writable in LIN mode only."]
124pub type SetisfeintW<'a, REG> = crate::BitWriter<'a, REG>;
125#[doc = "Field `SETCEINT` reader - 29:29\\]
126Set checksum-error Interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when there is a checksum error. This field is writable in LIN mode only."]
127pub type SetceintR = crate::BitReader;
128#[doc = "Field `SETCEINT` writer - 29:29\\]
129Set checksum-error Interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when there is a checksum error. This field is writable in LIN mode only."]
130pub type SetceintW<'a, REG> = crate::BitWriter<'a, REG>;
131#[doc = "Field `SETPBEINT` reader - 30:30\\]
132Set physical bus error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when a physical bus error occurs. This field is writable in LIN mode only."]
133pub type SetpbeintR = crate::BitReader;
134#[doc = "Field `SETPBEINT` writer - 30:30\\]
135Set physical bus error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when a physical bus error occurs. This field is writable in LIN mode only."]
136pub type SetpbeintW<'a, REG> = crate::BitWriter<'a, REG>;
137#[doc = "Field `SETBEINT` reader - 31:31\\]
138Set bit error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when there is a bit error. This field is writable in LIN mode only."]
139pub type SetbeintR = crate::BitReader;
140#[doc = "Field `SETBEINT` writer - 31:31\\]
141Set bit error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when there is a bit error. This field is writable in LIN mode only."]
142pub type SetbeintW<'a, REG> = crate::BitWriter<'a, REG>;
143impl R {
144 #[doc = "Bit 0 - 0:0\\]
145Set break-detect interrupt. This bit is effective in SCI-compatible mode only. Setting this bit enables the SCI/LIN to generate an interrupt if a break condition is detected on the LINRX pin. This field is writable in SCI mode only."]
146 #[inline(always)]
147 pub fn setbrkdtint(&self) -> SetbrkdtintR {
148 SetbrkdtintR::new((self.bits & 1) != 0)
149 }
150 #[doc = "Bit 1 - 1:1\\]
151Set wake-up interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN to generate a wake-up interrupt and thereby exit low-power mode. The wake-up interrupt is asserted on falling edge of the wake-up pulse. If enabled, the wake-up interrupt is asserted when local low-power mode is requested while the receiver is busy or if a low level is detected on the SCIRX pin during low-power mode. Wake-up interrupt is not asserted upon a wakeup pulse if the module is not in power down mode."]
152 #[inline(always)]
153 pub fn setwakeupint(&self) -> SetwakeupintR {
154 SetwakeupintR::new(((self.bits >> 1) & 1) != 0)
155 }
156 #[doc = "Bit 4 - 4:4\\]
157Set timeout interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN to generate an interrupt when no LIN bus activity (bus idle) occurs for at least 4 seconds. This field is writable in LIN mode only."]
158 #[inline(always)]
159 pub fn settimeoutint(&self) -> SettimeoutintR {
160 SettimeoutintR::new(((self.bits >> 4) & 1) != 0)
161 }
162 #[doc = "Bit 5 - 5:5\\]
163Reserved"]
164 #[inline(always)]
165 pub fn reserved1(&self) -> Reserved1R {
166 Reserved1R::new(((self.bits >> 5) & 1) != 0)
167 }
168 #[doc = "Bit 6 - 6:6\\]
169Set Timeout After Wakeup Signal interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN to generate an interrupt when there is a timeout after one wakeup signal has been sent. This field is writable in LIN mode only."]
170 #[inline(always)]
171 pub fn settoawusint(&self) -> SettoawusintR {
172 SettoawusintR::new(((self.bits >> 6) & 1) != 0)
173 }
174 #[doc = "Bit 7 - 7:7\\]
175Set Timeout After 3 Wakeup Signals interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN to generate an interrupt when there is a timeout after 3 wakeup signals have been sent. This field is writable in LIN mode only."]
176 #[inline(always)]
177 pub fn settoa3wusint(&self) -> Settoa3wusintR {
178 Settoa3wusintR::new(((self.bits >> 7) & 1) != 0)
179 }
180 #[doc = "Bit 8 - 8:8\\]
181Set Transmitter interrupt. Setting this bit enables the SCI/LIN to generate a transmit interrupt as data is being transferred from SCITD to SCITXSHF and the TXRDY bit is being set."]
182 #[inline(always)]
183 pub fn settxint(&self) -> SettxintR {
184 SettxintR::new(((self.bits >> 8) & 1) != 0)
185 }
186 #[doc = "Bit 9 - 9:9\\]
187Set Receiver interrupt. Setting this bit enables the SCI/LIN to generate a receive interrupt after a frame has been completely received and the data is being transferred from SCIRXSHF to SCIRD."]
188 #[inline(always)]
189 pub fn setrxint(&self) -> SetrxintR {
190 SetrxintR::new(((self.bits >> 9) & 1) != 0)
191 }
192 #[doc = "Bits 10:12 - 12:10\\]
193Reserved"]
194 #[inline(always)]
195 pub fn reserved2(&self) -> Reserved2R {
196 Reserved2R::new(((self.bits >> 10) & 7) as u8)
197 }
198 #[doc = "Bit 13 - 13:13\\]
199Set Identification interrupt. This bit is effective in LIN mode only. This bit is set to enable interrupt once a valid matching identifier is received."]
200 #[inline(always)]
201 pub fn setidint(&self) -> SetidintR {
202 SetidintR::new(((self.bits >> 13) & 1) != 0)
203 }
204 #[doc = "Bits 14:15 - 15:14\\]
205Reserved"]
206 #[inline(always)]
207 pub fn reserved3(&self) -> Reserved3R {
208 Reserved3R::new(((self.bits >> 14) & 3) as u8)
209 }
210 #[doc = "Bit 16 - 16:16\\]
211Set transmit DMA. This bit is effective in LIN or SCI-compatible mode. To enable DMA requests for the transmitter, this bit must be set. If it is cleared, interrupt requests are generated depending on SETTXINT."]
212 #[inline(always)]
213 pub fn set_tx_dma(&self) -> SetTxDmaR {
214 SetTxDmaR::new(((self.bits >> 16) & 1) != 0)
215 }
216 #[doc = "Bit 17 - 17:17\\]
217Set receiver DMA. This bit is effective in LIN or SCI-compatible mode. To enable DMA requests for the receiver this bit must be set. If it is cleared, interrupt requests are generated depending on SETRXINT."]
218 #[inline(always)]
219 pub fn set_rx_dma(&self) -> SetRxDmaR {
220 SetRxDmaR::new(((self.bits >> 17) & 1) != 0)
221 }
222 #[doc = "Bit 18 - 18:18\\]
223Set receiver DMA for Address & Data frames. This bit is effective in LIN or SCI-compatible mode. To enable RX DMA request for address and data frames this bit must be set. If it is cleared, RX interrupt request is generated for address frames and DMA requests are generated for data frames."]
224 #[inline(always)]
225 pub fn set_rx_dma_all(&self) -> SetRxDmaAllR {
226 SetRxDmaAllR::new(((self.bits >> 18) & 1) != 0)
227 }
228 #[doc = "Bits 19:23 - 23:19\\]
229Reserved"]
230 #[inline(always)]
231 pub fn reserved4(&self) -> Reserved4R {
232 Reserved4R::new(((self.bits >> 19) & 0x1f) as u8)
233 }
234 #[doc = "Bit 24 - 24:24\\]
235Set parity interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN module to generate an interrupt when a parity error occurs."]
236 #[inline(always)]
237 pub fn setpeint(&self) -> SetpeintR {
238 SetpeintR::new(((self.bits >> 24) & 1) != 0)
239 }
240 #[doc = "Bit 25 - 25:25\\]
241Set overrun-error interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN module to generate an interrupt when an overrun error occurs."]
242 #[inline(always)]
243 pub fn setoeint(&self) -> SetoeintR {
244 SetoeintR::new(((self.bits >> 25) & 1) != 0)
245 }
246 #[doc = "Bit 26 - 26:26\\]
247Set framing-error interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN module to generate an interrupt when a framing error occurs."]
248 #[inline(always)]
249 pub fn setfeint(&self) -> SetfeintR {
250 SetfeintR::new(((self.bits >> 26) & 1) != 0)
251 }
252 #[doc = "Bit 27 - 27:27\\]
253Set no-response-error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when a no-response error occurs. This field is writable in LIN mode only."]
254 #[inline(always)]
255 pub fn setnreint(&self) -> SetnreintR {
256 SetnreintR::new(((self.bits >> 27) & 1) != 0)
257 }
258 #[doc = "Bit 28 - 28:28\\]
259Set inconsistent-sync-field-error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when there is an inconsistent sync field error. This field is writable in LIN mode only."]
260 #[inline(always)]
261 pub fn setisfeint(&self) -> SetisfeintR {
262 SetisfeintR::new(((self.bits >> 28) & 1) != 0)
263 }
264 #[doc = "Bit 29 - 29:29\\]
265Set checksum-error Interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when there is a checksum error. This field is writable in LIN mode only."]
266 #[inline(always)]
267 pub fn setceint(&self) -> SetceintR {
268 SetceintR::new(((self.bits >> 29) & 1) != 0)
269 }
270 #[doc = "Bit 30 - 30:30\\]
271Set physical bus error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when a physical bus error occurs. This field is writable in LIN mode only."]
272 #[inline(always)]
273 pub fn setpbeint(&self) -> SetpbeintR {
274 SetpbeintR::new(((self.bits >> 30) & 1) != 0)
275 }
276 #[doc = "Bit 31 - 31:31\\]
277Set bit error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when there is a bit error. This field is writable in LIN mode only."]
278 #[inline(always)]
279 pub fn setbeint(&self) -> SetbeintR {
280 SetbeintR::new(((self.bits >> 31) & 1) != 0)
281 }
282}
283impl W {
284 #[doc = "Bit 0 - 0:0\\]
285Set break-detect interrupt. This bit is effective in SCI-compatible mode only. Setting this bit enables the SCI/LIN to generate an interrupt if a break condition is detected on the LINRX pin. This field is writable in SCI mode only."]
286 #[inline(always)]
287 #[must_use]
288 pub fn setbrkdtint(&mut self) -> SetbrkdtintW<ScisetintSpec> {
289 SetbrkdtintW::new(self, 0)
290 }
291 #[doc = "Bit 1 - 1:1\\]
292Set wake-up interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN to generate a wake-up interrupt and thereby exit low-power mode. The wake-up interrupt is asserted on falling edge of the wake-up pulse. If enabled, the wake-up interrupt is asserted when local low-power mode is requested while the receiver is busy or if a low level is detected on the SCIRX pin during low-power mode. Wake-up interrupt is not asserted upon a wakeup pulse if the module is not in power down mode."]
293 #[inline(always)]
294 #[must_use]
295 pub fn setwakeupint(&mut self) -> SetwakeupintW<ScisetintSpec> {
296 SetwakeupintW::new(self, 1)
297 }
298 #[doc = "Bit 4 - 4:4\\]
299Set timeout interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN to generate an interrupt when no LIN bus activity (bus idle) occurs for at least 4 seconds. This field is writable in LIN mode only."]
300 #[inline(always)]
301 #[must_use]
302 pub fn settimeoutint(&mut self) -> SettimeoutintW<ScisetintSpec> {
303 SettimeoutintW::new(self, 4)
304 }
305 #[doc = "Bit 5 - 5:5\\]
306Reserved"]
307 #[inline(always)]
308 #[must_use]
309 pub fn reserved1(&mut self) -> Reserved1W<ScisetintSpec> {
310 Reserved1W::new(self, 5)
311 }
312 #[doc = "Bit 6 - 6:6\\]
313Set Timeout After Wakeup Signal interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN to generate an interrupt when there is a timeout after one wakeup signal has been sent. This field is writable in LIN mode only."]
314 #[inline(always)]
315 #[must_use]
316 pub fn settoawusint(&mut self) -> SettoawusintW<ScisetintSpec> {
317 SettoawusintW::new(self, 6)
318 }
319 #[doc = "Bit 7 - 7:7\\]
320Set Timeout After 3 Wakeup Signals interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN to generate an interrupt when there is a timeout after 3 wakeup signals have been sent. This field is writable in LIN mode only."]
321 #[inline(always)]
322 #[must_use]
323 pub fn settoa3wusint(&mut self) -> Settoa3wusintW<ScisetintSpec> {
324 Settoa3wusintW::new(self, 7)
325 }
326 #[doc = "Bit 8 - 8:8\\]
327Set Transmitter interrupt. Setting this bit enables the SCI/LIN to generate a transmit interrupt as data is being transferred from SCITD to SCITXSHF and the TXRDY bit is being set."]
328 #[inline(always)]
329 #[must_use]
330 pub fn settxint(&mut self) -> SettxintW<ScisetintSpec> {
331 SettxintW::new(self, 8)
332 }
333 #[doc = "Bit 9 - 9:9\\]
334Set Receiver interrupt. Setting this bit enables the SCI/LIN to generate a receive interrupt after a frame has been completely received and the data is being transferred from SCIRXSHF to SCIRD."]
335 #[inline(always)]
336 #[must_use]
337 pub fn setrxint(&mut self) -> SetrxintW<ScisetintSpec> {
338 SetrxintW::new(self, 9)
339 }
340 #[doc = "Bits 10:12 - 12:10\\]
341Reserved"]
342 #[inline(always)]
343 #[must_use]
344 pub fn reserved2(&mut self) -> Reserved2W<ScisetintSpec> {
345 Reserved2W::new(self, 10)
346 }
347 #[doc = "Bit 13 - 13:13\\]
348Set Identification interrupt. This bit is effective in LIN mode only. This bit is set to enable interrupt once a valid matching identifier is received."]
349 #[inline(always)]
350 #[must_use]
351 pub fn setidint(&mut self) -> SetidintW<ScisetintSpec> {
352 SetidintW::new(self, 13)
353 }
354 #[doc = "Bits 14:15 - 15:14\\]
355Reserved"]
356 #[inline(always)]
357 #[must_use]
358 pub fn reserved3(&mut self) -> Reserved3W<ScisetintSpec> {
359 Reserved3W::new(self, 14)
360 }
361 #[doc = "Bit 16 - 16:16\\]
362Set transmit DMA. This bit is effective in LIN or SCI-compatible mode. To enable DMA requests for the transmitter, this bit must be set. If it is cleared, interrupt requests are generated depending on SETTXINT."]
363 #[inline(always)]
364 #[must_use]
365 pub fn set_tx_dma(&mut self) -> SetTxDmaW<ScisetintSpec> {
366 SetTxDmaW::new(self, 16)
367 }
368 #[doc = "Bit 17 - 17:17\\]
369Set receiver DMA. This bit is effective in LIN or SCI-compatible mode. To enable DMA requests for the receiver this bit must be set. If it is cleared, interrupt requests are generated depending on SETRXINT."]
370 #[inline(always)]
371 #[must_use]
372 pub fn set_rx_dma(&mut self) -> SetRxDmaW<ScisetintSpec> {
373 SetRxDmaW::new(self, 17)
374 }
375 #[doc = "Bit 18 - 18:18\\]
376Set receiver DMA for Address & Data frames. This bit is effective in LIN or SCI-compatible mode. To enable RX DMA request for address and data frames this bit must be set. If it is cleared, RX interrupt request is generated for address frames and DMA requests are generated for data frames."]
377 #[inline(always)]
378 #[must_use]
379 pub fn set_rx_dma_all(&mut self) -> SetRxDmaAllW<ScisetintSpec> {
380 SetRxDmaAllW::new(self, 18)
381 }
382 #[doc = "Bits 19:23 - 23:19\\]
383Reserved"]
384 #[inline(always)]
385 #[must_use]
386 pub fn reserved4(&mut self) -> Reserved4W<ScisetintSpec> {
387 Reserved4W::new(self, 19)
388 }
389 #[doc = "Bit 24 - 24:24\\]
390Set parity interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN module to generate an interrupt when a parity error occurs."]
391 #[inline(always)]
392 #[must_use]
393 pub fn setpeint(&mut self) -> SetpeintW<ScisetintSpec> {
394 SetpeintW::new(self, 24)
395 }
396 #[doc = "Bit 25 - 25:25\\]
397Set overrun-error interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN module to generate an interrupt when an overrun error occurs."]
398 #[inline(always)]
399 #[must_use]
400 pub fn setoeint(&mut self) -> SetoeintW<ScisetintSpec> {
401 SetoeintW::new(self, 25)
402 }
403 #[doc = "Bit 26 - 26:26\\]
404Set framing-error interrupt. This bit is effective in LIN or SCI-compatible mode. Setting this bit enables the SCI/LIN module to generate an interrupt when a framing error occurs."]
405 #[inline(always)]
406 #[must_use]
407 pub fn setfeint(&mut self) -> SetfeintW<ScisetintSpec> {
408 SetfeintW::new(self, 26)
409 }
410 #[doc = "Bit 27 - 27:27\\]
411Set no-response-error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when a no-response error occurs. This field is writable in LIN mode only."]
412 #[inline(always)]
413 #[must_use]
414 pub fn setnreint(&mut self) -> SetnreintW<ScisetintSpec> {
415 SetnreintW::new(self, 27)
416 }
417 #[doc = "Bit 28 - 28:28\\]
418Set inconsistent-sync-field-error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when there is an inconsistent sync field error. This field is writable in LIN mode only."]
419 #[inline(always)]
420 #[must_use]
421 pub fn setisfeint(&mut self) -> SetisfeintW<ScisetintSpec> {
422 SetisfeintW::new(self, 28)
423 }
424 #[doc = "Bit 29 - 29:29\\]
425Set checksum-error Interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when there is a checksum error. This field is writable in LIN mode only."]
426 #[inline(always)]
427 #[must_use]
428 pub fn setceint(&mut self) -> SetceintW<ScisetintSpec> {
429 SetceintW::new(self, 29)
430 }
431 #[doc = "Bit 30 - 30:30\\]
432Set physical bus error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when a physical bus error occurs. This field is writable in LIN mode only."]
433 #[inline(always)]
434 #[must_use]
435 pub fn setpbeint(&mut self) -> SetpbeintW<ScisetintSpec> {
436 SetpbeintW::new(self, 30)
437 }
438 #[doc = "Bit 31 - 31:31\\]
439Set bit error interrupt. This bit is effective in LIN mode only. Setting this bit enables the SCI/LIN module to generate an interrupt when there is a bit error. This field is writable in LIN mode only."]
440 #[inline(always)]
441 #[must_use]
442 pub fn setbeint(&mut self) -> SetbeintW<ScisetintSpec> {
443 SetbeintW::new(self, 31)
444 }
445}
446#[doc = "The SCISETINT register is used to enable the various interrupts available in the LIN module.\n\nYou can [`read`](crate::Reg::read) this register and get [`scisetint::R`](R). You can [`reset`](crate::Reg::reset), [`write`](crate::Reg::write), [`write_with_zero`](crate::Reg::write_with_zero) this register using [`scisetint::W`](W). You can also [`modify`](crate::Reg::modify) this register. See [API](https://docs.rs/svd2rust/#read--modify--write-api)."]
447pub struct ScisetintSpec;
448impl crate::RegisterSpec for ScisetintSpec {
449 type Ux = u32;
450}
451#[doc = "`read()` method returns [`scisetint::R`](R) reader structure"]
452impl crate::Readable for ScisetintSpec {}
453#[doc = "`write(|w| ..)` method takes [`scisetint::W`](W) writer structure"]
454impl crate::Writable for ScisetintSpec {
455 type Safety = crate::Unsafe;
456 const ZERO_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
457 const ONE_TO_MODIFY_FIELDS_BITMAP: u32 = 0;
458}
459#[doc = "`reset()` method sets SCISETINT to value 0"]
460impl crate::Resettable for ScisetintSpec {
461 const RESET_VALUE: u32 = 0;
462}