nrfxlib API 3.3.99
Loading...
Searching...
No Matches
nrf_sp_can.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2025 Nordic Semiconductor ASA
3 *
4 * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5 */
6
7#ifndef NRF_SP_CAN_H__
8#define NRF_SP_CAN_H__
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14#include "nrfx.h" // Resolve nrfXX_types.h for the correct target to get definitions for __IO, __IOM etc.
15
16/* ===========================================================================================================================
17 * ================ SP_CAN ================
18 * ===========================================================================================================================*/
19
20#if !defined(__ASSEMBLER__) && !defined(__ASSEMBLY__)
22/* ================================================== Struct SP_CAN_CONFIG =================================================== */
26typedef struct
27{
28 __IOM uint32_t PARSING;
29 __IOM uint32_t TIMING;
30 __IOM uint32_t REQUEST;
31 __IOM uint32_t MODE;
34/* SP_CAN_CONFIG_PARSING: SCAN parsing options */
35 #define SP_CAN_CONFIG_PARSING_ResetValue (0x00000000UL)
37/* REGGROUP @Bits 0..2 : Which register group to parse */
38 #define SP_CAN_CONFIG_PARSING_REGGROUP_Pos (0UL)
39 #define SP_CAN_CONFIG_PARSING_REGGROUP_Msk (0x7UL << SP_CAN_CONFIG_PARSING_REGGROUP_Pos)
40 #define SP_CAN_CONFIG_PARSING_REGGROUP_Min (0x0UL)
41 #define SP_CAN_CONFIG_PARSING_REGGROUP_Max (0x3UL)
42 #define SP_CAN_CONFIG_PARSING_REGGROUP_None (0x0UL)
43 #define SP_CAN_CONFIG_PARSING_REGGROUP_Timing (0x1UL)
44 #define SP_CAN_CONFIG_PARSING_REGGROUP_OperationMode (0x2UL)
45 #define SP_CAN_CONFIG_PARSING_REGGROUP_RxFilters (0x3UL)
47/* SP_CAN_CONFIG_TIMING: SCAN Timing parameters */
48 #define SP_CAN_CONFIG_TIMING_ResetValue (0x00000000UL)
50/* RSYNCJUMPWIDTH @Bits 0..7 : Re-synchronization jump width */
51 #define SP_CAN_CONFIG_TIMING_RSYNCJUMPWIDTH_Pos (0UL)
52 #define SP_CAN_CONFIG_TIMING_RSYNCJUMPWIDTH_Msk \
53 (0xFFUL << SP_CAN_CONFIG_TIMING_RSYNCJUMPWIDTH_Pos) \
54
57/* PHASESEG1 @Bits 8..15 : Number of time quanta in phase 1 */
58 #define SP_CAN_CONFIG_TIMING_PHASESEG1_Pos (8UL)
59 #define SP_CAN_CONFIG_TIMING_PHASESEG1_Msk (0xFFUL << SP_CAN_CONFIG_TIMING_PHASESEG1_Pos)
61/* PHASESEG2 @Bits 16..23 : Number of time quanta in phase 2 */
62 #define SP_CAN_CONFIG_TIMING_PHASESEG2_Pos (16UL)
63 #define SP_CAN_CONFIG_TIMING_PHASESEG2_Msk (0xFFUL << SP_CAN_CONFIG_TIMING_PHASESEG2_Pos)
65/* PRESCALER @Bits 24..31 : Data Bit Rate Prescaler */
66 #define SP_CAN_CONFIG_TIMING_PRESCALER_Pos (24UL)
67 #define SP_CAN_CONFIG_TIMING_PRESCALER_Msk (0xFFUL << SP_CAN_CONFIG_TIMING_PRESCALER_Pos)
69/* SP_CAN_CONFIG_REQUEST: (unspecified) */
70 #define SP_CAN_CONFIG_REQUEST_ResetValue (0x00000000UL)
72/* REQUEST @Bit 0 : Request either TX or RX */
73 #define SP_CAN_CONFIG_REQUEST_REQUEST_Pos (0UL)
74 #define SP_CAN_CONFIG_REQUEST_REQUEST_Msk (0x1UL << SP_CAN_CONFIG_REQUEST_REQUEST_Pos)
75 #define SP_CAN_CONFIG_REQUEST_REQUEST_Min (0x0UL)
76 #define SP_CAN_CONFIG_REQUEST_REQUEST_Max (0x1UL)
77 #define SP_CAN_CONFIG_REQUEST_REQUEST_RX (0x0UL)
78 #define SP_CAN_CONFIG_REQUEST_REQUEST_TX (0x1UL)
80/* SP_CAN_CONFIG_MODE: Operation mode */
81 #define SP_CAN_CONFIG_MODE_ResetValue (0x00000000UL)
83/* MODE @Bits 0..1 : Operation mode */
84 #define SP_CAN_CONFIG_MODE_MODE_Pos (0UL)
85 #define SP_CAN_CONFIG_MODE_MODE_Msk (0x3UL << SP_CAN_CONFIG_MODE_MODE_Pos)
86 #define SP_CAN_CONFIG_MODE_MODE_Min (0x0UL)
87 #define SP_CAN_CONFIG_MODE_MODE_Max (0x3UL)
88 #define SP_CAN_CONFIG_MODE_MODE_Normal (0x0UL)
89 #define SP_CAN_CONFIG_MODE_MODE_Loopback (0x1UL)
90 #define SP_CAN_CONFIG_MODE_MODE_ListenOnly (0x2UL)
91 #define SP_CAN_CONFIG_MODE_MODE_OneShot (0x3UL)
93/* ================================================= Struct SP_CAN_RXFILTER ================================================== */
97typedef struct
98{
99 __IOM uint32_t IDFILTER;
100 __IOM uint32_t IDMASK;
102 #define SP_CAN_RXFILTER_MaxCount (4UL)
103 #define SP_CAN_RXFILTER_MaxIndex (3UL)
104 #define SP_CAN_RXFILTER_MinIndex (0UL)
106/* SP_CAN_RXFILTER_IDFILTER: ID filter for RX */
107 #define SP_CAN_RXFILTER_IDFILTER_ResetValue (0x00000000UL)
109/* IDENTIFIER @Bits 0..28 : ID to match for RX */
110 #define SP_CAN_RXFILTER_IDFILTER_IDENTIFIER_Pos (0UL)
111 #define SP_CAN_RXFILTER_IDFILTER_IDENTIFIER_Msk \
112 (0x1FFFFFFFUL << SP_CAN_RXFILTER_IDFILTER_IDENTIFIER_Pos) \
113
116/* USEFILTER @Bit 29 : Enable the filter to match against a received message */
117 #define SP_CAN_RXFILTER_IDFILTER_USEFILTER_Pos (29UL)
118 #define SP_CAN_RXFILTER_IDFILTER_USEFILTER_Msk \
119 (0x1UL << SP_CAN_RXFILTER_IDFILTER_USEFILTER_Pos) \
120
122 #define SP_CAN_RXFILTER_IDFILTER_USEFILTER_Min (0x0UL)
123 #define SP_CAN_RXFILTER_IDFILTER_USEFILTER_Max (0x1UL)
124 #define SP_CAN_RXFILTER_IDFILTER_USEFILTER_Disabled (0x0UL)
125 #define SP_CAN_RXFILTER_IDFILTER_USEFILTER_Enabled (0x1UL)
127/* INMAILBOX @Bit 30 : sCAN driver has put the data in a mailbox */
128 #define SP_CAN_RXFILTER_IDFILTER_INMAILBOX_Pos (30UL)
129 #define SP_CAN_RXFILTER_IDFILTER_INMAILBOX_Msk \
130 (0x1UL << SP_CAN_RXFILTER_IDFILTER_INMAILBOX_Pos) \
131
133 #define SP_CAN_RXFILTER_IDFILTER_INMAILBOX_Min (0x0UL)
134 #define SP_CAN_RXFILTER_IDFILTER_INMAILBOX_Max (0x1UL)
135 #define SP_CAN_RXFILTER_IDFILTER_INMAILBOX_Disabled (0x0UL)
136 #define SP_CAN_RXFILTER_IDFILTER_INMAILBOX_Enabled (0x1UL)
138/* FILTERMATCHED @Bit 31 : Indicates that the filter has been matched */
139 #define SP_CAN_RXFILTER_IDFILTER_FILTERMATCHED_Pos (31UL)
140 #define SP_CAN_RXFILTER_IDFILTER_FILTERMATCHED_Msk \
141 (0x1UL << SP_CAN_RXFILTER_IDFILTER_FILTERMATCHED_Pos) \
142
144 #define SP_CAN_RXFILTER_IDFILTER_FILTERMATCHED_Min (0x0UL)
145 #define SP_CAN_RXFILTER_IDFILTER_FILTERMATCHED_Max (0x1UL)
146 #define SP_CAN_RXFILTER_IDFILTER_FILTERMATCHED_NoMatch (0x0UL)
147 #define SP_CAN_RXFILTER_IDFILTER_FILTERMATCHED_Match (0x1UL)
149/* SP_CAN_RXFILTER_IDMASK: ID mask filter for RX */
150 #define SP_CAN_RXFILTER_IDMASK_ResetValue (0x00000000UL)
152/* MASK @Bits 0..28 : ID mask filter for RX */
153 #define SP_CAN_RXFILTER_IDMASK_MASK_Pos (0UL)
154 #define SP_CAN_RXFILTER_IDMASK_MASK_Msk (0x1FFFFFFFUL << SP_CAN_RXFILTER_IDMASK_MASK_Pos)
156/* ================================================== Struct SP_CAN_TXFRAME ================================================== */
160typedef struct
161{
162 __IOM uint32_t IDENTIFIER;
163 __IOM uint32_t TXDATAL;
164 __IOM uint32_t TXDATAH;
165 __IOM uint32_t METADATA;
167 #define SP_CAN_TXFRAME_MaxCount (4UL)
168 #define SP_CAN_TXFRAME_MaxIndex (3UL)
169 #define SP_CAN_TXFRAME_MinIndex (0UL)
171/* SP_CAN_TXFRAME_IDENTIFIER: Frame Identifier */
172 #define SP_CAN_TXFRAME_IDENTIFIER_ResetValue (0x00000000UL)
174/* IDENTIFIER @Bits 0..28 : Frame Identifier */
175 #define SP_CAN_TXFRAME_IDENTIFIER_IDENTIFIER_Pos (0UL)
176 #define SP_CAN_TXFRAME_IDENTIFIER_IDENTIFIER_Msk \
177 (0x1FFFFFFFUL << SP_CAN_TXFRAME_IDENTIFIER_IDENTIFIER_Pos) \
178
181/* SP_CAN_TXFRAME_TXDATAL: TX data buffer LSB */
182 #define SP_CAN_TXFRAME_TXDATAL_ResetValue (0x00000000UL)
184/* TXDATA0 @Bits 0..7 : Data */
185 #define SP_CAN_TXFRAME_TXDATAL_TXDATA0_Pos (0UL)
186 #define SP_CAN_TXFRAME_TXDATAL_TXDATA0_Msk (0xFFUL << SP_CAN_TXFRAME_TXDATAL_TXDATA0_Pos)
188/* TXDATA1 @Bits 8..15 : Data */
189 #define SP_CAN_TXFRAME_TXDATAL_TXDATA1_Pos (8UL)
190 #define SP_CAN_TXFRAME_TXDATAL_TXDATA1_Msk (0xFFUL << SP_CAN_TXFRAME_TXDATAL_TXDATA1_Pos)
192/* TXDATA2 @Bits 16..23 : Data */
193 #define SP_CAN_TXFRAME_TXDATAL_TXDATA2_Pos (16UL)
194 #define SP_CAN_TXFRAME_TXDATAL_TXDATA2_Msk (0xFFUL << SP_CAN_TXFRAME_TXDATAL_TXDATA2_Pos)
196/* TXDATA3 @Bits 24..31 : Data */
197 #define SP_CAN_TXFRAME_TXDATAL_TXDATA3_Pos (24UL)
198 #define SP_CAN_TXFRAME_TXDATAL_TXDATA3_Msk (0xFFUL << SP_CAN_TXFRAME_TXDATAL_TXDATA3_Pos)
200/* SP_CAN_TXFRAME_TXDATAH: TX data buffer MSB */
201 #define SP_CAN_TXFRAME_TXDATAH_ResetValue (0x00000000UL)
203/* TXDATA4 @Bits 0..7 : Data */
204 #define SP_CAN_TXFRAME_TXDATAH_TXDATA4_Pos (0UL)
205 #define SP_CAN_TXFRAME_TXDATAH_TXDATA4_Msk (0xFFUL << SP_CAN_TXFRAME_TXDATAH_TXDATA4_Pos)
207/* TXDATA5 @Bits 8..15 : Data */
208 #define SP_CAN_TXFRAME_TXDATAH_TXDATA5_Pos (8UL)
209 #define SP_CAN_TXFRAME_TXDATAH_TXDATA5_Msk (0xFFUL << SP_CAN_TXFRAME_TXDATAH_TXDATA5_Pos)
211/* TXDATA6 @Bits 16..23 : Data */
212 #define SP_CAN_TXFRAME_TXDATAH_TXDATA6_Pos (16UL)
213 #define SP_CAN_TXFRAME_TXDATAH_TXDATA6_Msk (0xFFUL << SP_CAN_TXFRAME_TXDATAH_TXDATA6_Pos)
215/* TXDATA7 @Bits 24..31 : Data */
216 #define SP_CAN_TXFRAME_TXDATAH_TXDATA7_Pos (24UL)
217 #define SP_CAN_TXFRAME_TXDATAH_TXDATA7_Msk (0xFFUL << SP_CAN_TXFRAME_TXDATAH_TXDATA7_Pos)
219/* SP_CAN_TXFRAME_METADATA: Frame's metadata */
220 #define SP_CAN_TXFRAME_METADATA_ResetValue (0x00000000UL)
222/* EXTENDEDFORMAT @Bit 0 : Frame's IDE (Identifier Extension bit) */
223 #define SP_CAN_TXFRAME_METADATA_EXTENDEDFORMAT_Pos (0UL)
224 #define SP_CAN_TXFRAME_METADATA_EXTENDEDFORMAT_Msk \
225 (0x1UL << SP_CAN_TXFRAME_METADATA_EXTENDEDFORMAT_Pos) \
226
228 #define SP_CAN_TXFRAME_METADATA_EXTENDEDFORMAT_Min (0x0UL)
229 #define SP_CAN_TXFRAME_METADATA_EXTENDEDFORMAT_Max (0x1UL)
230 #define SP_CAN_TXFRAME_METADATA_EXTENDEDFORMAT_Disabled (0x0UL)
231 #define SP_CAN_TXFRAME_METADATA_EXTENDEDFORMAT_Enabled (0x1UL)
233/* REMOTEREQUEST @Bit 1 : Frame's RTR (Remote Transmission request bit) */
234 #define SP_CAN_TXFRAME_METADATA_REMOTEREQUEST_Pos (1UL)
235 #define SP_CAN_TXFRAME_METADATA_REMOTEREQUEST_Msk \
236 (0x1UL << SP_CAN_TXFRAME_METADATA_REMOTEREQUEST_Pos) \
237
239 #define SP_CAN_TXFRAME_METADATA_REMOTEREQUEST_Min (0x0UL)
240 #define SP_CAN_TXFRAME_METADATA_REMOTEREQUEST_Max (0x1UL)
241 #define SP_CAN_TXFRAME_METADATA_REMOTEREQUEST_Disabled (0x0UL)
242 #define SP_CAN_TXFRAME_METADATA_REMOTEREQUEST_Enabled (0x1UL)
244/* DATALENGTH @Bits 2..5 : Frame's DLC (Data Length Code) */
245 #define SP_CAN_TXFRAME_METADATA_DATALENGTH_Pos (2UL)
246 #define SP_CAN_TXFRAME_METADATA_DATALENGTH_Msk (0xFUL << SP_CAN_TXFRAME_METADATA_DATALENGTH_Pos)
249/* CRC @Bits 16..30 : Frame's CRC */
250 #define SP_CAN_TXFRAME_METADATA_CRC_Pos (16UL)
251 #define SP_CAN_TXFRAME_METADATA_CRC_Msk (0x7FFFUL << SP_CAN_TXFRAME_METADATA_CRC_Pos)
253/* ================================================== Struct SP_CAN_RXFRAME ================================================== */
257typedef struct
258{
259 __IOM uint32_t IDENTIFIER;
260 __IOM uint32_t RXDATAL;
261 __IOM uint32_t RXDATAH;
262 __IOM uint32_t METADATA;
264 #define SP_CAN_RXFRAME_MaxCount (4UL)
265 #define SP_CAN_RXFRAME_MaxIndex (3UL)
266 #define SP_CAN_RXFRAME_MinIndex (0UL)
268/* SP_CAN_RXFRAME_IDENTIFIER: Frame Identifier */
269 #define SP_CAN_RXFRAME_IDENTIFIER_ResetValue (0x00000000UL)
271/* IDENTIFIER @Bits 0..28 : Frame Identifier */
272 #define SP_CAN_RXFRAME_IDENTIFIER_IDENTIFIER_Pos (0UL)
273 #define SP_CAN_RXFRAME_IDENTIFIER_IDENTIFIER_Msk \
274 (0x1FFFFFFFUL << SP_CAN_RXFRAME_IDENTIFIER_IDENTIFIER_Pos) \
275
278/* SP_CAN_RXFRAME_RXDATAL: RX data buffer LSB */
279 #define SP_CAN_RXFRAME_RXDATAL_ResetValue (0x00000000UL)
281/* RXDATA0 @Bits 0..7 : Data */
282 #define SP_CAN_RXFRAME_RXDATAL_RXDATA0_Pos (0UL)
283 #define SP_CAN_RXFRAME_RXDATAL_RXDATA0_Msk (0xFFUL << SP_CAN_RXFRAME_RXDATAL_RXDATA0_Pos)
285/* RXDATA1 @Bits 8..15 : Data */
286 #define SP_CAN_RXFRAME_RXDATAL_RXDATA1_Pos (8UL)
287 #define SP_CAN_RXFRAME_RXDATAL_RXDATA1_Msk (0xFFUL << SP_CAN_RXFRAME_RXDATAL_RXDATA1_Pos)
289/* RXDATA2 @Bits 16..23 : Data */
290 #define SP_CAN_RXFRAME_RXDATAL_RXDATA2_Pos (16UL)
291 #define SP_CAN_RXFRAME_RXDATAL_RXDATA2_Msk (0xFFUL << SP_CAN_RXFRAME_RXDATAL_RXDATA2_Pos)
293/* RXDATA3 @Bits 24..31 : Data */
294 #define SP_CAN_RXFRAME_RXDATAL_RXDATA3_Pos (24UL)
295 #define SP_CAN_RXFRAME_RXDATAL_RXDATA3_Msk (0xFFUL << SP_CAN_RXFRAME_RXDATAL_RXDATA3_Pos)
297/* SP_CAN_RXFRAME_RXDATAH: RX data buffer MSB */
298 #define SP_CAN_RXFRAME_RXDATAH_ResetValue (0x00000000UL)
300/* RXDATA4 @Bits 0..7 : Data */
301 #define SP_CAN_RXFRAME_RXDATAH_RXDATA4_Pos (0UL)
302 #define SP_CAN_RXFRAME_RXDATAH_RXDATA4_Msk (0xFFUL << SP_CAN_RXFRAME_RXDATAH_RXDATA4_Pos)
304/* RXDATA5 @Bits 8..15 : Data */
305 #define SP_CAN_RXFRAME_RXDATAH_RXDATA5_Pos (8UL)
306 #define SP_CAN_RXFRAME_RXDATAH_RXDATA5_Msk (0xFFUL << SP_CAN_RXFRAME_RXDATAH_RXDATA5_Pos)
308/* RXDATA6 @Bits 16..23 : Data */
309 #define SP_CAN_RXFRAME_RXDATAH_RXDATA6_Pos (16UL)
310 #define SP_CAN_RXFRAME_RXDATAH_RXDATA6_Msk (0xFFUL << SP_CAN_RXFRAME_RXDATAH_RXDATA6_Pos)
312/* RXDATA7 @Bits 24..31 : Data */
313 #define SP_CAN_RXFRAME_RXDATAH_RXDATA7_Pos (24UL)
314 #define SP_CAN_RXFRAME_RXDATAH_RXDATA7_Msk (0xFFUL << SP_CAN_RXFRAME_RXDATAH_RXDATA7_Pos)
316/* SP_CAN_RXFRAME_METADATA: Frame's metadata */
317 #define SP_CAN_RXFRAME_METADATA_ResetValue (0x00000000UL)
319/* EXTENDEDFORMAT @Bit 0 : Frame's IDE (Identifier Extension bit) */
320 #define SP_CAN_RXFRAME_METADATA_EXTENDEDFORMAT_Pos (0UL)
321 #define SP_CAN_RXFRAME_METADATA_EXTENDEDFORMAT_Msk \
322 (0x1UL << SP_CAN_RXFRAME_METADATA_EXTENDEDFORMAT_Pos) \
323
325 #define SP_CAN_RXFRAME_METADATA_EXTENDEDFORMAT_Min (0x0UL)
326 #define SP_CAN_RXFRAME_METADATA_EXTENDEDFORMAT_Max (0x1UL)
327 #define SP_CAN_RXFRAME_METADATA_EXTENDEDFORMAT_Disabled (0x0UL)
328 #define SP_CAN_RXFRAME_METADATA_EXTENDEDFORMAT_Enabled (0x1UL)
330/* REMOTEREQUEST @Bit 1 : Frame's RTR (Remote Transmission request bit) */
331 #define SP_CAN_RXFRAME_METADATA_REMOTEREQUEST_Pos (1UL)
332 #define SP_CAN_RXFRAME_METADATA_REMOTEREQUEST_Msk \
333 (0x1UL << SP_CAN_RXFRAME_METADATA_REMOTEREQUEST_Pos) \
334
336 #define SP_CAN_RXFRAME_METADATA_REMOTEREQUEST_Min (0x0UL)
337 #define SP_CAN_RXFRAME_METADATA_REMOTEREQUEST_Max (0x1UL)
338 #define SP_CAN_RXFRAME_METADATA_REMOTEREQUEST_Disabled (0x0UL)
339 #define SP_CAN_RXFRAME_METADATA_REMOTEREQUEST_Enabled (0x1UL)
341/* DATALENGTH @Bits 2..5 : Frame's DLC (Data Length Code) */
342 #define SP_CAN_RXFRAME_METADATA_DATALENGTH_Pos (2UL)
343 #define SP_CAN_RXFRAME_METADATA_DATALENGTH_Msk (0xFUL << SP_CAN_RXFRAME_METADATA_DATALENGTH_Pos)
346/* CRC @Bits 16..30 : Frame's CRC */
347 #define SP_CAN_RXFRAME_METADATA_CRC_Pos (16UL)
348 #define SP_CAN_RXFRAME_METADATA_CRC_Msk (0x7FFFUL << SP_CAN_RXFRAME_METADATA_CRC_Pos)
350/* ================================================== Struct SP_CAN_STATUS =================================================== */
354typedef struct
355{
356 __IOM uint32_t STATUS;
359/* SP_CAN_STATUS_STATUS: SCAN status register */
360 #define SP_CAN_STATUS_STATUS_ResetValue (0x80000000UL)
362/* BITERROR @Bit 0 : Transmitter sends dominant/recessive but reads back recessive/dominant. Unable to transmit
363 * dominant/recessive */
364
365 #define SP_CAN_STATUS_STATUS_BITERROR_Pos (0UL)
366 #define SP_CAN_STATUS_STATUS_BITERROR_Msk (0x1UL << SP_CAN_STATUS_STATUS_BITERROR_Pos)
368/* BITSTUFFINGERROR @Bit 1 : Receiver detects a sequence of 6 dominant or recessive bits */
369 #define SP_CAN_STATUS_STATUS_BITSTUFFINGERROR_Pos (1UL)
370 #define SP_CAN_STATUS_STATUS_BITSTUFFINGERROR_Msk \
371 (0x1UL << SP_CAN_STATUS_STATUS_BITSTUFFINGERROR_Pos) \
372
375/* FORMERROR @Bit 2 : Receiver detects a bit with invalid logical level in SOF/EOF fields or ACK/CRC delimiters */
376 #define SP_CAN_STATUS_STATUS_FORMERROR_Pos (2UL)
377 #define SP_CAN_STATUS_STATUS_FORMERROR_Msk (0x1UL << SP_CAN_STATUS_STATUS_FORMERROR_Pos)
379/* ACKERROR @Bit 3 : Transmitter sends a message but ACK slot is not maide dominant by receiver(s) */
380 #define SP_CAN_STATUS_STATUS_ACKERROR_Pos (3UL)
381 #define SP_CAN_STATUS_STATUS_ACKERROR_Msk (0x1UL << SP_CAN_STATUS_STATUS_ACKERROR_Pos)
383/* CRCERROR @Bit 4 : Receiver calculates a CRC that differs fomr the transmitted CRC field value */
384 #define SP_CAN_STATUS_STATUS_CRCERROR_Pos (4UL)
385 #define SP_CAN_STATUS_STATUS_CRCERROR_Msk (0x1UL << SP_CAN_STATUS_STATUS_CRCERROR_Pos)
387/* BIT0ERROR @Bit 5 : Transmitter sends dominant but reads back recessive. Unable to transmit dominant */
388 #define SP_CAN_STATUS_STATUS_BIT0ERROR_Pos (5UL)
389 #define SP_CAN_STATUS_STATUS_BIT0ERROR_Msk (0x1UL << SP_CAN_STATUS_STATUS_BIT0ERROR_Pos)
391/* BIT1ERROR @Bit 6 : Transmitter sends recessive but reads back dominant. Unable to transmit recessive */
392 #define SP_CAN_STATUS_STATUS_BIT1ERROR_Pos (6UL)
393 #define SP_CAN_STATUS_STATUS_BIT1ERROR_Msk (0x1UL << SP_CAN_STATUS_STATUS_BIT1ERROR_Pos)
395/* PROTOCOLERROR @Bit 7 : Generic error response */
396 #define SP_CAN_STATUS_STATUS_PROTOCOLERROR_Pos (7UL)
397 #define SP_CAN_STATUS_STATUS_PROTOCOLERROR_Msk (0x1UL << SP_CAN_STATUS_STATUS_PROTOCOLERROR_Pos)
400/* ARBITRATIONLOST @Bit 8 : TX attempt lost arbitration */
401 #define SP_CAN_STATUS_STATUS_ARBITRATIONLOST_Pos (8UL)
402 #define SP_CAN_STATUS_STATUS_ARBITRATIONLOST_Msk \
403 (0x1UL << SP_CAN_STATUS_STATUS_ARBITRATIONLOST_Pos) \
404
407/* ARBITRATIONLOSTRXOK @Bit 9 : TX attempt lost arbitration, but there was a match for rx filter */
408 #define SP_CAN_STATUS_STATUS_ARBITRATIONLOSTRXOK_Pos (9UL)
409 #define SP_CAN_STATUS_STATUS_ARBITRATIONLOSTRXOK_Msk \
410 (0x1UL << SP_CAN_STATUS_STATUS_ARBITRATIONLOSTRXOK_Pos) \
411
414/* STATE @Bits 29..31 : sCAN state */
415 #define SP_CAN_STATUS_STATUS_STATE_Pos (29UL)
416 #define SP_CAN_STATUS_STATUS_STATE_Msk (0x7UL << SP_CAN_STATUS_STATUS_STATE_Pos)
417 #define SP_CAN_STATUS_STATUS_STATE_Min (0x0UL)
418 #define SP_CAN_STATUS_STATUS_STATE_Max (0x4UL)
419 #define SP_CAN_STATUS_STATUS_STATE_ERRORACTIVE (0x0UL)
420 #define SP_CAN_STATUS_STATUS_STATE_ERRORWARNING (0x1UL)
421 #define SP_CAN_STATUS_STATUS_STATE_ERRORPASSIVE (0x2UL)
422 #define SP_CAN_STATUS_STATUS_STATE_BUSOFF (0x3UL)
423 #define SP_CAN_STATUS_STATUS_STATE_STOPPED (0x4UL)
425/* ================================================== Struct SP_CAN_SPSYNC =================================================== */
429typedef struct
430{
431 __IOM uint32_t AUX[6];
434/* SP_CAN_SPSYNC_AUX: Auxiliary registers for XSB macro call handshaking */
435 #define SP_CAN_SPSYNC_AUX_MaxCount (6UL)
436 #define SP_CAN_SPSYNC_AUX_MaxIndex (5UL)
437 #define SP_CAN_SPSYNC_AUX_MinIndex (0UL)
438 #define SP_CAN_SPSYNC_AUX_ResetValue (0x00000000UL)
440/* AUX @Bits 0..31 : Auxiliary register */
441 #define SP_CAN_SPSYNC_AUX_AUX_Pos (0UL)
442 #define SP_CAN_SPSYNC_AUX_AUX_Msk (0xFFFFFFFFUL << SP_CAN_SPSYNC_AUX_AUX_Pos)
444/* ====================================================== Struct SP_CAN ====================================================== */
448typedef struct
449{
450 __OM uint32_t TASKS_START;
451 __OM uint32_t TASKS_RESET;
452 __IOM uint32_t SUBSCRIBE_START;
453 __IOM uint32_t SUBSCRIBE_RESET;
454 __IOM uint32_t EVENTS_TXCOMPLETE;
456 __IOM uint32_t EVENTS_RXCOMPLETE;
458 __IOM uint32_t EVENTS_ERRORDETECTED;
459 __IOM uint32_t EVENTS_STATECHANGED;
460 __IOM uint32_t PUBLISH_TXCOMPLETE;
461 __IOM uint32_t PUBLISH_RXCOMPLETE;
462 __IOM uint32_t PUBLISH_ERRORDETECTED;
463 __IOM uint32_t PUBLISH_STATECHANGED;
464 __IOM uint32_t INTEN;
465 __IOM uint32_t ENABLE;
467 __IOM NRF_SP_CAN_RXFILTER_Type RXFILTER[4];
468 __IOM NRF_SP_CAN_TXFRAME_Type TXFRAME[4];
469 __IOM NRF_SP_CAN_RXFRAME_Type RXFRAME[4];
474/* SP_CAN_TASKS_START: Trigger this task to start a request (RX/TX) */
475 #define SP_CAN_TASKS_START_ResetValue (0x00000000UL)
477/* TASKS_START @Bit 0 : Trigger this task to start a request (RX/TX) */
478 #define SP_CAN_TASKS_START_TASKS_START_Pos (0UL)
479 #define SP_CAN_TASKS_START_TASKS_START_Msk (0x1UL << SP_CAN_TASKS_START_TASKS_START_Pos)
480 #define SP_CAN_TASKS_START_TASKS_START_Min (0x1UL)
481 #define SP_CAN_TASKS_START_TASKS_START_Max (0x1UL)
482 #define SP_CAN_TASKS_START_TASKS_START_Trigger (0x1UL)
484/* SP_CAN_TASKS_RESET: Trigger this task to reset SCAN to UNINITIALIZED state */
485 #define SP_CAN_TASKS_RESET_ResetValue (0x00000000UL)
487/* TASKS_RESET @Bit 0 : Trigger this task to reset SCAN to UNINITIALIZED state */
488 #define SP_CAN_TASKS_RESET_TASKS_RESET_Pos (0UL)
489 #define SP_CAN_TASKS_RESET_TASKS_RESET_Msk (0x1UL << SP_CAN_TASKS_RESET_TASKS_RESET_Pos)
490 #define SP_CAN_TASKS_RESET_TASKS_RESET_Min (0x1UL)
491 #define SP_CAN_TASKS_RESET_TASKS_RESET_Max (0x1UL)
492 #define SP_CAN_TASKS_RESET_TASKS_RESET_Trigger (0x1UL)
494/* SP_CAN_SUBSCRIBE_START: Subscribe configuration for task START */
495 #define SP_CAN_SUBSCRIBE_START_ResetValue (0x00000000UL)
497/* CHIDX @Bits 0..7 : DPPI channel that task START will subscribe to */
498 #define SP_CAN_SUBSCRIBE_START_CHIDX_Pos (0UL)
499 #define SP_CAN_SUBSCRIBE_START_CHIDX_Msk (0xFFUL << SP_CAN_SUBSCRIBE_START_CHIDX_Pos)
500 #define SP_CAN_SUBSCRIBE_START_CHIDX_Min (0x00UL)
501 #define SP_CAN_SUBSCRIBE_START_CHIDX_Max (0xFFUL)
503/* EN @Bit 31 : (unspecified) */
504 #define SP_CAN_SUBSCRIBE_START_EN_Pos (31UL)
505 #define SP_CAN_SUBSCRIBE_START_EN_Msk (0x1UL << SP_CAN_SUBSCRIBE_START_EN_Pos)
506 #define SP_CAN_SUBSCRIBE_START_EN_Min (0x0UL)
507 #define SP_CAN_SUBSCRIBE_START_EN_Max (0x1UL)
508 #define SP_CAN_SUBSCRIBE_START_EN_Disabled (0x0UL)
509 #define SP_CAN_SUBSCRIBE_START_EN_Enabled (0x1UL)
511/* SP_CAN_SUBSCRIBE_RESET: Subscribe configuration for task RESET */
512 #define SP_CAN_SUBSCRIBE_RESET_ResetValue (0x00000000UL)
514/* CHIDX @Bits 0..7 : DPPI channel that task RESET will subscribe to */
515 #define SP_CAN_SUBSCRIBE_RESET_CHIDX_Pos (0UL)
516 #define SP_CAN_SUBSCRIBE_RESET_CHIDX_Msk (0xFFUL << SP_CAN_SUBSCRIBE_RESET_CHIDX_Pos)
517 #define SP_CAN_SUBSCRIBE_RESET_CHIDX_Min (0x00UL)
518 #define SP_CAN_SUBSCRIBE_RESET_CHIDX_Max (0xFFUL)
520/* EN @Bit 31 : (unspecified) */
521 #define SP_CAN_SUBSCRIBE_RESET_EN_Pos (31UL)
522 #define SP_CAN_SUBSCRIBE_RESET_EN_Msk (0x1UL << SP_CAN_SUBSCRIBE_RESET_EN_Pos)
523 #define SP_CAN_SUBSCRIBE_RESET_EN_Min (0x0UL)
524 #define SP_CAN_SUBSCRIBE_RESET_EN_Max (0x1UL)
525 #define SP_CAN_SUBSCRIBE_RESET_EN_Disabled (0x0UL)
526 #define SP_CAN_SUBSCRIBE_RESET_EN_Enabled (0x1UL)
528/* SP_CAN_EVENTS_TXCOMPLETE: This event signals that SCAN has completed a TX operation */
529 #define SP_CAN_EVENTS_TXCOMPLETE_ResetValue (0x00000000UL)
531/* EVENTS_TXCOMPLETE @Bit 0 : This event signals that SCAN has completed a TX operation */
532 #define SP_CAN_EVENTS_TXCOMPLETE_EVENTS_TXCOMPLETE_Pos (0UL)
533 #define SP_CAN_EVENTS_TXCOMPLETE_EVENTS_TXCOMPLETE_Msk \
534 (0x1UL << SP_CAN_EVENTS_TXCOMPLETE_EVENTS_TXCOMPLETE_Pos) \
535
537 #define SP_CAN_EVENTS_TXCOMPLETE_EVENTS_TXCOMPLETE_Min (0x0UL)
538 #define SP_CAN_EVENTS_TXCOMPLETE_EVENTS_TXCOMPLETE_Max (0x1UL)
539 #define SP_CAN_EVENTS_TXCOMPLETE_EVENTS_TXCOMPLETE_NotGenerated (0x0UL)
540 #define SP_CAN_EVENTS_TXCOMPLETE_EVENTS_TXCOMPLETE_Generated (0x1UL)
542/* SP_CAN_EVENTS_RXCOMPLETE: This event signals that SCAN has finished RX after an ID match */
543 #define SP_CAN_EVENTS_RXCOMPLETE_ResetValue (0x00000000UL)
545/* EVENTS_RXCOMPLETE @Bit 0 : This event signals that SCAN has finished RX after an ID match */
546 #define SP_CAN_EVENTS_RXCOMPLETE_EVENTS_RXCOMPLETE_Pos (0UL)
547 #define SP_CAN_EVENTS_RXCOMPLETE_EVENTS_RXCOMPLETE_Msk \
548 (0x1UL << SP_CAN_EVENTS_RXCOMPLETE_EVENTS_RXCOMPLETE_Pos) \
549
551 #define SP_CAN_EVENTS_RXCOMPLETE_EVENTS_RXCOMPLETE_Min (0x0UL)
552 #define SP_CAN_EVENTS_RXCOMPLETE_EVENTS_RXCOMPLETE_Max (0x1UL)
553 #define SP_CAN_EVENTS_RXCOMPLETE_EVENTS_RXCOMPLETE_NotGenerated (0x0UL)
554 #define SP_CAN_EVENTS_RXCOMPLETE_EVENTS_RXCOMPLETE_Generated (0x1UL)
556/* SP_CAN_EVENTS_ERRORDETECTED: This event signals that SCAN has detected an error. */
557 #define SP_CAN_EVENTS_ERRORDETECTED_ResetValue (0x00000000UL)
559/* EVENTS_ERRORDETECTED @Bit 0 : This event signals that SCAN has detected an error. */
560 #define SP_CAN_EVENTS_ERRORDETECTED_EVENTS_ERRORDETECTED_Pos (0UL)
561 #define SP_CAN_EVENTS_ERRORDETECTED_EVENTS_ERRORDETECTED_Msk \
562 (0x1UL << SP_CAN_EVENTS_ERRORDETECTED_EVENTS_ERRORDETECTED_Pos)
564 #define SP_CAN_EVENTS_ERRORDETECTED_EVENTS_ERRORDETECTED_Min (0x0UL)
565 #define SP_CAN_EVENTS_ERRORDETECTED_EVENTS_ERRORDETECTED_Max (0x1UL)
566 #define SP_CAN_EVENTS_ERRORDETECTED_EVENTS_ERRORDETECTED_NotGenerated (0x0UL)
567 #define SP_CAN_EVENTS_ERRORDETECTED_EVENTS_ERRORDETECTED_Generated (0x1UL)
569/* SP_CAN_EVENTS_STATECHANGED: This event signals that SCAN's state has changed. */
570 #define SP_CAN_EVENTS_STATECHANGED_ResetValue (0x00000000UL)
572/* EVENTS_STATECHANGED @Bit 0 : This event signals that SCAN's state has changed. */
573 #define SP_CAN_EVENTS_STATECHANGED_EVENTS_STATECHANGED_Pos (0UL)
574 #define SP_CAN_EVENTS_STATECHANGED_EVENTS_STATECHANGED_Msk \
575 (0x1UL << SP_CAN_EVENTS_STATECHANGED_EVENTS_STATECHANGED_Pos) \
576
578 #define SP_CAN_EVENTS_STATECHANGED_EVENTS_STATECHANGED_Min (0x0UL)
579 #define SP_CAN_EVENTS_STATECHANGED_EVENTS_STATECHANGED_Max (0x1UL)
580 #define SP_CAN_EVENTS_STATECHANGED_EVENTS_STATECHANGED_NotGenerated (0x0UL)
581 #define SP_CAN_EVENTS_STATECHANGED_EVENTS_STATECHANGED_Generated (0x1UL)
583/* SP_CAN_PUBLISH_TXCOMPLETE: Publish configuration for event TXCOMPLETE */
584 #define SP_CAN_PUBLISH_TXCOMPLETE_ResetValue (0x00000000UL)
586/* CHIDX @Bits 0..7 : DPPI channel that event TXCOMPLETE will publish to */
587 #define SP_CAN_PUBLISH_TXCOMPLETE_CHIDX_Pos (0UL)
588 #define SP_CAN_PUBLISH_TXCOMPLETE_CHIDX_Msk (0xFFUL << SP_CAN_PUBLISH_TXCOMPLETE_CHIDX_Pos)
589 #define SP_CAN_PUBLISH_TXCOMPLETE_CHIDX_Min (0x00UL)
590 #define SP_CAN_PUBLISH_TXCOMPLETE_CHIDX_Max (0xFFUL)
592/* EN @Bit 31 : (unspecified) */
593 #define SP_CAN_PUBLISH_TXCOMPLETE_EN_Pos (31UL)
594 #define SP_CAN_PUBLISH_TXCOMPLETE_EN_Msk (0x1UL << SP_CAN_PUBLISH_TXCOMPLETE_EN_Pos)
595 #define SP_CAN_PUBLISH_TXCOMPLETE_EN_Min (0x0UL)
596 #define SP_CAN_PUBLISH_TXCOMPLETE_EN_Max (0x1UL)
597 #define SP_CAN_PUBLISH_TXCOMPLETE_EN_Disabled (0x0UL)
598 #define SP_CAN_PUBLISH_TXCOMPLETE_EN_Enabled (0x1UL)
600/* SP_CAN_PUBLISH_RXCOMPLETE: Publish configuration for event RXCOMPLETE */
601 #define SP_CAN_PUBLISH_RXCOMPLETE_ResetValue (0x00000000UL)
603/* CHIDX @Bits 0..7 : DPPI channel that event RXCOMPLETE will publish to */
604 #define SP_CAN_PUBLISH_RXCOMPLETE_CHIDX_Pos (0UL)
605 #define SP_CAN_PUBLISH_RXCOMPLETE_CHIDX_Msk (0xFFUL << SP_CAN_PUBLISH_RXCOMPLETE_CHIDX_Pos)
606 #define SP_CAN_PUBLISH_RXCOMPLETE_CHIDX_Min (0x00UL)
607 #define SP_CAN_PUBLISH_RXCOMPLETE_CHIDX_Max (0xFFUL)
609/* EN @Bit 31 : (unspecified) */
610 #define SP_CAN_PUBLISH_RXCOMPLETE_EN_Pos (31UL)
611 #define SP_CAN_PUBLISH_RXCOMPLETE_EN_Msk (0x1UL << SP_CAN_PUBLISH_RXCOMPLETE_EN_Pos)
612 #define SP_CAN_PUBLISH_RXCOMPLETE_EN_Min (0x0UL)
613 #define SP_CAN_PUBLISH_RXCOMPLETE_EN_Max (0x1UL)
614 #define SP_CAN_PUBLISH_RXCOMPLETE_EN_Disabled (0x0UL)
615 #define SP_CAN_PUBLISH_RXCOMPLETE_EN_Enabled (0x1UL)
617/* SP_CAN_PUBLISH_ERRORDETECTED: Publish configuration for event ERRORDETECTED */
618 #define SP_CAN_PUBLISH_ERRORDETECTED_ResetValue (0x00000000UL)
620/* CHIDX @Bits 0..7 : DPPI channel that event ERRORDETECTED will publish to */
621 #define SP_CAN_PUBLISH_ERRORDETECTED_CHIDX_Pos (0UL)
622 #define SP_CAN_PUBLISH_ERRORDETECTED_CHIDX_Msk (0xFFUL << SP_CAN_PUBLISH_ERRORDETECTED_CHIDX_Pos)
624 #define SP_CAN_PUBLISH_ERRORDETECTED_CHIDX_Min (0x00UL)
625 #define SP_CAN_PUBLISH_ERRORDETECTED_CHIDX_Max (0xFFUL)
627/* EN @Bit 31 : (unspecified) */
628 #define SP_CAN_PUBLISH_ERRORDETECTED_EN_Pos (31UL)
629 #define SP_CAN_PUBLISH_ERRORDETECTED_EN_Msk (0x1UL << SP_CAN_PUBLISH_ERRORDETECTED_EN_Pos)
630 #define SP_CAN_PUBLISH_ERRORDETECTED_EN_Min (0x0UL)
631 #define SP_CAN_PUBLISH_ERRORDETECTED_EN_Max (0x1UL)
632 #define SP_CAN_PUBLISH_ERRORDETECTED_EN_Disabled (0x0UL)
633 #define SP_CAN_PUBLISH_ERRORDETECTED_EN_Enabled (0x1UL)
635/* SP_CAN_PUBLISH_STATECHANGED: Publish configuration for event STATECHANGED */
636 #define SP_CAN_PUBLISH_STATECHANGED_ResetValue (0x00000000UL)
638/* CHIDX @Bits 0..7 : DPPI channel that event STATECHANGED will publish to */
639 #define SP_CAN_PUBLISH_STATECHANGED_CHIDX_Pos (0UL)
640 #define SP_CAN_PUBLISH_STATECHANGED_CHIDX_Msk (0xFFUL << SP_CAN_PUBLISH_STATECHANGED_CHIDX_Pos)
641 #define SP_CAN_PUBLISH_STATECHANGED_CHIDX_Min (0x00UL)
642 #define SP_CAN_PUBLISH_STATECHANGED_CHIDX_Max (0xFFUL)
644/* EN @Bit 31 : (unspecified) */
645 #define SP_CAN_PUBLISH_STATECHANGED_EN_Pos (31UL)
646 #define SP_CAN_PUBLISH_STATECHANGED_EN_Msk (0x1UL << SP_CAN_PUBLISH_STATECHANGED_EN_Pos)
647 #define SP_CAN_PUBLISH_STATECHANGED_EN_Min (0x0UL)
648 #define SP_CAN_PUBLISH_STATECHANGED_EN_Max (0x1UL)
649 #define SP_CAN_PUBLISH_STATECHANGED_EN_Disabled (0x0UL)
650 #define SP_CAN_PUBLISH_STATECHANGED_EN_Enabled (0x1UL)
652/* SP_CAN_INTEN: Enable or disable interrupt */
653 #define SP_CAN_INTEN_ResetValue (0x00000000UL)
655/* TXCOMPLETE @Bit 0 : Enable or disable interrupt for event TXATTEMPTCOMPLETE */
656 #define SP_CAN_INTEN_TXCOMPLETE_Pos (0UL)
657 #define SP_CAN_INTEN_TXCOMPLETE_Msk (0x1UL << SP_CAN_INTEN_TXCOMPLETE_Pos)
658 #define SP_CAN_INTEN_TXCOMPLETE_Min (0x0UL)
659 #define SP_CAN_INTEN_TXCOMPLETE_Max (0x1UL)
660 #define SP_CAN_INTEN_TXCOMPLETE_Disabled (0x0UL)
661 #define SP_CAN_INTEN_TXCOMPLETE_Enabled (0x1UL)
663/* RXCOMPLETE @Bit 1 : Enable or disable interrupt for event RXCOMPLETE */
664 #define SP_CAN_INTEN_RXCOMPLETE_Pos (1UL)
665 #define SP_CAN_INTEN_RXCOMPLETE_Msk (0x1UL << SP_CAN_INTEN_RXCOMPLETE_Pos)
666 #define SP_CAN_INTEN_RXCOMPLETE_Min (0x0UL)
667 #define SP_CAN_INTEN_RXCOMPLETE_Max (0x1UL)
668 #define SP_CAN_INTEN_RXCOMPLETE_Disabled (0x0UL)
669 #define SP_CAN_INTEN_RXCOMPLETE_Enabled (0x1UL)
671/* ERRORDETECTED @Bit 2 : Enable or disable interrupt for event ERRORDETECTED */
672 #define SP_CAN_INTEN_ERRORDETECTED_Pos (2UL)
673 #define SP_CAN_INTEN_ERRORDETECTED_Msk (0x1UL << SP_CAN_INTEN_ERRORDETECTED_Pos)
674 #define SP_CAN_INTEN_ERRORDETECTED_Min (0x0UL)
675 #define SP_CAN_INTEN_ERRORDETECTED_Max (0x1UL)
676 #define SP_CAN_INTEN_ERRORDETECTED_Disabled (0x0UL)
677 #define SP_CAN_INTEN_ERRORDETECTED_Enabled (0x1UL)
679/* STATECHANGED @Bit 3 : Enable or disable interrupt for event STATECHANGED */
680 #define SP_CAN_INTEN_STATECHANGED_Pos (3UL)
681 #define SP_CAN_INTEN_STATECHANGED_Msk (0x1UL << SP_CAN_INTEN_STATECHANGED_Pos)
682 #define SP_CAN_INTEN_STATECHANGED_Min (0x0UL)
683 #define SP_CAN_INTEN_STATECHANGED_Max (0x1UL)
684 #define SP_CAN_INTEN_STATECHANGED_Disabled (0x0UL)
685 #define SP_CAN_INTEN_STATECHANGED_Enabled (0x1UL)
687/* SP_CAN_ENABLE: Enable the SCAN peripheral */
688 #define SP_CAN_ENABLE_ResetValue (0x00000000UL)
690/* ENABLE @Bit 0 : Enable or disable SCAN */
691 #define SP_CAN_ENABLE_ENABLE_Pos (0UL)
692 #define SP_CAN_ENABLE_ENABLE_Msk (0x1UL << SP_CAN_ENABLE_ENABLE_Pos)
693 #define SP_CAN_ENABLE_ENABLE_Min (0x0UL)
694 #define SP_CAN_ENABLE_ENABLE_Max (0x1UL)
695 #define SP_CAN_ENABLE_ENABLE_Disabled (0x0UL)
696 #define SP_CAN_ENABLE_ENABLE_Enabled (0x1UL)
698#endif \
699
701/* ========================================== End of section using anonymous unions ========================================== */
702#endif /* NRF_SP_CAN_H */
__IOM uint32_t MODE
Definition nrf_sp_can.h:31
__IOM uint32_t TIMING
Definition nrf_sp_can.h:29
__IOM uint32_t PARSING
Definition nrf_sp_can.h:28
__IOM uint32_t REQUEST
Definition nrf_sp_can.h:30
CONFIG [SP_CAN_CONFIG] SCAN configuration.
Definition nrf_sp_can.h:27
__IOM uint32_t IDFILTER
Definition nrf_sp_can.h:99
__IOM uint32_t IDMASK
Definition nrf_sp_can.h:100
RXFILTER [SP_CAN_RXFILTER] sCAN RX filters.
Definition nrf_sp_can.h:98
__IOM uint32_t IDENTIFIER
Definition nrf_sp_can.h:259
__IOM uint32_t METADATA
Definition nrf_sp_can.h:262
__IOM uint32_t RXDATAH
Definition nrf_sp_can.h:261
__IOM uint32_t RXDATAL
Definition nrf_sp_can.h:260
RXFRAME [SP_CAN_RXFRAME] sCAN frame configuration.
Definition nrf_sp_can.h:258
SPSYNC [SP_CAN_SPSYNC] Registers used to acknowledge API function calls.
Definition nrf_sp_can.h:430
__IOM uint32_t STATUS
Definition nrf_sp_can.h:356
STATUS [SP_CAN_STATUS] SCAN status.
Definition nrf_sp_can.h:355
__IOM uint32_t METADATA
Definition nrf_sp_can.h:165
__IOM uint32_t TXDATAH
Definition nrf_sp_can.h:164
__IOM uint32_t IDENTIFIER
Definition nrf_sp_can.h:162
__IOM uint32_t TXDATAL
Definition nrf_sp_can.h:163
TXFRAME [SP_CAN_TXFRAME] sCAN frame configuration.
Definition nrf_sp_can.h:161
__IOM NRF_SP_CAN_STATUS_Type STATUS
Definition nrf_sp_can.h:470
__IOM uint32_t INTEN
Definition nrf_sp_can.h:464
__IOM uint32_t EVENTS_RXCOMPLETE
Definition nrf_sp_can.h:456
__IOM uint32_t PUBLISH_STATECHANGED
Definition nrf_sp_can.h:463
__IOM uint32_t ENABLE
Definition nrf_sp_can.h:465
__IOM uint32_t PUBLISH_ERRORDETECTED
Definition nrf_sp_can.h:462
__IOM uint32_t PUBLISH_RXCOMPLETE
Definition nrf_sp_can.h:461
__IOM NRF_SP_CAN_CONFIG_Type CONFIG
Definition nrf_sp_can.h:466
__IOM uint32_t EVENTS_ERRORDETECTED
Definition nrf_sp_can.h:458
__IOM NRF_SP_CAN_SPSYNC_Type SPSYNC
Definition nrf_sp_can.h:471
__IOM uint32_t EVENTS_TXCOMPLETE
Definition nrf_sp_can.h:454
__IOM uint32_t SUBSCRIBE_RESET
Definition nrf_sp_can.h:453
__IOM uint32_t PUBLISH_TXCOMPLETE
Definition nrf_sp_can.h:460
__OM uint32_t TASKS_START
Definition nrf_sp_can.h:450
__OM uint32_t TASKS_RESET
Definition nrf_sp_can.h:451
__IOM uint32_t SUBSCRIBE_START
Definition nrf_sp_can.h:452
__IOM uint32_t EVENTS_STATECHANGED
Definition nrf_sp_can.h:459
Soft peripheral CAN.
Definition nrf_sp_can.h:449