SAME54P20A Test Project
can1.h
Go to the documentation of this file.
1 
30 #ifndef _SAME54_CAN1_INSTANCE_
31 #define _SAME54_CAN1_INSTANCE_
32 
33 /* ========== Register definition for CAN1 peripheral ========== */
34 #if (defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__))
35 #define REG_CAN1_CREL (0x42000400)
36 #define REG_CAN1_ENDN (0x42000404)
37 #define REG_CAN1_MRCFG (0x42000408)
38 #define REG_CAN1_DBTP (0x4200040C)
39 #define REG_CAN1_TEST (0x42000410)
40 #define REG_CAN1_RWD (0x42000414)
41 #define REG_CAN1_CCCR (0x42000418)
42 #define REG_CAN1_NBTP (0x4200041C)
43 #define REG_CAN1_TSCC (0x42000420)
44 #define REG_CAN1_TSCV (0x42000424)
45 #define REG_CAN1_TOCC (0x42000428)
46 #define REG_CAN1_TOCV (0x4200042C)
47 #define REG_CAN1_ECR (0x42000440)
48 #define REG_CAN1_PSR (0x42000444)
49 #define REG_CAN1_TDCR (0x42000448)
50 #define REG_CAN1_IR (0x42000450)
51 #define REG_CAN1_IE (0x42000454)
52 #define REG_CAN1_ILS (0x42000458)
53 #define REG_CAN1_ILE (0x4200045C)
54 #define REG_CAN1_GFC (0x42000480)
55 #define REG_CAN1_SIDFC (0x42000484)
56 #define REG_CAN1_XIDFC (0x42000488)
57 #define REG_CAN1_XIDAM (0x42000490)
58 #define REG_CAN1_HPMS (0x42000494)
59 #define REG_CAN1_NDAT1 (0x42000498)
60 #define REG_CAN1_NDAT2 (0x4200049C)
61 #define REG_CAN1_RXF0C (0x420004A0)
62 #define REG_CAN1_RXF0S (0x420004A4)
63 #define REG_CAN1_RXF0A (0x420004A8)
64 #define REG_CAN1_RXBC (0x420004AC)
65 #define REG_CAN1_RXF1C (0x420004B0)
66 #define REG_CAN1_RXF1S (0x420004B4)
67 #define REG_CAN1_RXF1A (0x420004B8)
68 #define REG_CAN1_RXESC (0x420004BC)
69 #define REG_CAN1_TXBC (0x420004C0)
70 #define REG_CAN1_TXFQS (0x420004C4)
71 #define REG_CAN1_TXESC (0x420004C8)
72 #define REG_CAN1_TXBRP (0x420004CC)
73 #define REG_CAN1_TXBAR (0x420004D0)
74 #define REG_CAN1_TXBCR (0x420004D4)
75 #define REG_CAN1_TXBTO (0x420004D8)
76 #define REG_CAN1_TXBCF (0x420004DC)
77 #define REG_CAN1_TXBTIE (0x420004E0)
78 #define REG_CAN1_TXBCIE (0x420004E4)
79 #define REG_CAN1_TXEFC (0x420004F0)
80 #define REG_CAN1_TXEFS (0x420004F4)
81 #define REG_CAN1_TXEFA (0x420004F8)
82 #else
83 #define REG_CAN1_CREL (*(RoReg *)0x42000400UL)
84 #define REG_CAN1_ENDN (*(RoReg *)0x42000404UL)
85 #define REG_CAN1_MRCFG (*(RwReg *)0x42000408UL)
86 #define REG_CAN1_DBTP (*(RwReg *)0x4200040CUL)
87 #define REG_CAN1_TEST (*(RwReg *)0x42000410UL)
88 #define REG_CAN1_RWD (*(RwReg *)0x42000414UL)
89 #define REG_CAN1_CCCR (*(RwReg *)0x42000418UL)
90 #define REG_CAN1_NBTP (*(RwReg *)0x4200041CUL)
91 #define REG_CAN1_TSCC (*(RwReg *)0x42000420UL)
92 #define REG_CAN1_TSCV (*(RoReg *)0x42000424UL)
93 #define REG_CAN1_TOCC (*(RwReg *)0x42000428UL)
94 #define REG_CAN1_TOCV (*(RwReg *)0x4200042CUL)
95 #define REG_CAN1_ECR (*(RoReg *)0x42000440UL)
96 #define REG_CAN1_PSR (*(RoReg *)0x42000444UL)
97 #define REG_CAN1_TDCR (*(RwReg *)0x42000448UL)
98 #define REG_CAN1_IR (*(RwReg *)0x42000450UL)
99 #define REG_CAN1_IE (*(RwReg *)0x42000454UL)
100 #define REG_CAN1_ILS (*(RwReg *)0x42000458UL)
101 #define REG_CAN1_ILE (*(RwReg *)0x4200045CUL)
102 #define REG_CAN1_GFC (*(RwReg *)0x42000480UL)
103 #define REG_CAN1_SIDFC (*(RwReg *)0x42000484UL)
104 #define REG_CAN1_XIDFC (*(RwReg *)0x42000488UL)
105 #define REG_CAN1_XIDAM (*(RwReg *)0x42000490UL)
106 #define REG_CAN1_HPMS (*(RoReg *)0x42000494UL)
107 #define REG_CAN1_NDAT1 (*(RwReg *)0x42000498UL)
108 #define REG_CAN1_NDAT2 (*(RwReg *)0x4200049CUL)
109 #define REG_CAN1_RXF0C (*(RwReg *)0x420004A0UL)
110 #define REG_CAN1_RXF0S (*(RoReg *)0x420004A4UL)
111 #define REG_CAN1_RXF0A (*(RwReg *)0x420004A8UL)
112 #define REG_CAN1_RXBC (*(RwReg *)0x420004ACUL)
113 #define REG_CAN1_RXF1C (*(RwReg *)0x420004B0UL)
114 #define REG_CAN1_RXF1S (*(RoReg *)0x420004B4UL)
115 #define REG_CAN1_RXF1A (*(RwReg *)0x420004B8UL)
116 #define REG_CAN1_RXESC (*(RwReg *)0x420004BCUL)
117 #define REG_CAN1_TXBC (*(RwReg *)0x420004C0UL)
118 #define REG_CAN1_TXFQS (*(RoReg *)0x420004C4UL)
119 #define REG_CAN1_TXESC (*(RwReg *)0x420004C8UL)
120 #define REG_CAN1_TXBRP (*(RoReg *)0x420004CCUL)
121 #define REG_CAN1_TXBAR (*(RwReg *)0x420004D0UL)
122 #define REG_CAN1_TXBCR (*(RwReg *)0x420004D4UL)
123 #define REG_CAN1_TXBTO (*(RoReg *)0x420004D8UL)
124 #define REG_CAN1_TXBCF (*(RoReg *)0x420004DCUL)
125 #define REG_CAN1_TXBTIE (*(RwReg *)0x420004E0UL)
126 #define REG_CAN1_TXBCIE (*(RwReg *)0x420004E4UL)
127 #define REG_CAN1_TXEFC (*(RwReg *)0x420004F0UL)
128 #define REG_CAN1_TXEFS (*(RoReg *)0x420004F4UL)
129 #define REG_CAN1_TXEFA (*(RwReg *)0x420004F8UL)
130 #endif /* (defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */
131 
132 /* ========== Instance parameters for CAN1 peripheral ========== */
133 #define CAN1_CLK_AHB_ID 18 // Index of AHB clock
134 #define CAN1_DMAC_ID_DEBUG 21 // DMA CAN Debug Req
135 #define CAN1_GCLK_ID 28 // Index of Generic Clock
136 #define CAN1_MSG_RAM_ADDR 0x20000000
137 #define CAN1_QOS_RESET_VAL 1 // QOS reset value
138 
139 #endif /* _SAME54_CAN1_INSTANCE_ */