]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/CORTEX_M0+_Atmel_SAMD20_XPlained/RTOSDemo/src/ASF/sam0/utils/cmsis/samd20/include/instance/instance_evsys.h
Starting point for the SAMD20 demo.
[freertos] / FreeRTOS / Demo / CORTEX_M0+_Atmel_SAMD20_XPlained / RTOSDemo / src / ASF / sam0 / utils / cmsis / samd20 / include / instance / instance_evsys.h
1 /**\r
2  * \file\r
3  *\r
4  * \brief Instance description for EVSYS\r
5  *\r
6  * Copyright (c) 2013 Atmel Corporation. All rights reserved.\r
7  *\r
8  * \asf_license_start\r
9  *\r
10  * \page License\r
11  *\r
12  * Redistribution and use in source and binary forms, with or without\r
13  * modification, are permitted provided that the following conditions are met:\r
14  *\r
15  * 1. Redistributions of source code must retain the above copyright notice,\r
16  *    this list of conditions and the following disclaimer.\r
17  *\r
18  * 2. Redistributions in binary form must reproduce the above copyright notice,\r
19  *    this list of conditions and the following disclaimer in the documentation\r
20  *    and/or other materials provided with the distribution.\r
21  *\r
22  * 3. The name of Atmel may not be used to endorse or promote products derived\r
23  *    from this software without specific prior written permission.\r
24  *\r
25  * 4. This software may only be redistributed and used in connection with an\r
26  *    Atmel microcontroller product.\r
27  *\r
28  * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED\r
29  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\r
30  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE\r
31  * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR\r
32  * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\r
33  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS\r
34  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)\r
35  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,\r
36  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN\r
37  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\r
38  * POSSIBILITY OF SUCH DAMAGE.\r
39  *\r
40  * \asf_license_stop\r
41  *\r
42  */\r
43 \r
44 #ifndef _SAMD20_EVSYS_INSTANCE_\r
45 #define _SAMD20_EVSYS_INSTANCE_\r
46 \r
47 /* ========== Register definition for EVSYS peripheral ========== */\r
48 #if (defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__))\r
49 #define REG_EVSYS_CTRL             (0x42000400U) /**< \brief (EVSYS) Control Register */\r
50 #define REG_EVSYS_CHANNEL          (0x42000404U) /**< \brief (EVSYS) Channel Register */\r
51 #define REG_EVSYS_USER             (0x42000408U) /**< \brief (EVSYS) User Mux Register */\r
52 #define REG_EVSYS_CHSTATUS         (0x4200040CU) /**< \brief (EVSYS) Channel Status Register */\r
53 #define REG_EVSYS_INTENCLR         (0x42000410U) /**< \brief (EVSYS) Interrupt Enable Clear Register */\r
54 #define REG_EVSYS_INTENSET         (0x42000414U) /**< \brief (EVSYS) Interrupt Enable Set Register */\r
55 #define REG_EVSYS_INTFLAG          (0x42000418U) /**< \brief (EVSYS) Interrupt Flag Status and Clear Register */\r
56 #else\r
57 #define REG_EVSYS_CTRL             (*(WoReg8 *)0x42000400U) /**< \brief (EVSYS) Control Register */\r
58 #define REG_EVSYS_CHANNEL          (*(RwReg  *)0x42000404U) /**< \brief (EVSYS) Channel Register */\r
59 #define REG_EVSYS_USER             (*(RwReg16*)0x42000408U) /**< \brief (EVSYS) User Mux Register */\r
60 #define REG_EVSYS_CHSTATUS         (*(RoReg  *)0x4200040CU) /**< \brief (EVSYS) Channel Status Register */\r
61 #define REG_EVSYS_INTENCLR         (*(RwReg  *)0x42000410U) /**< \brief (EVSYS) Interrupt Enable Clear Register */\r
62 #define REG_EVSYS_INTENSET         (*(RwReg  *)0x42000414U) /**< \brief (EVSYS) Interrupt Enable Set Register */\r
63 #define REG_EVSYS_INTFLAG          (*(RwReg  *)0x42000418U) /**< \brief (EVSYS) Interrupt Flag Status and Clear Register */\r
64 #endif /* (defined(__ASSEMBLY__) || defined(__IAR_SYSTEMS_ASM__)) */\r
65 \r
66 /* ========== Instance parameters for EVSYS peripheral ========== */\r
67 #define EVSYS_CHANNELS              8\r
68 #define EVSYS_CHANNELS_MSB          7\r
69 #define EVSYS_EXT_EVT_MSB           0\r
70 #define EVSYS_GCLK_ID_0             4\r
71 #define EVSYS_GCLK_ID_1             5\r
72 #define EVSYS_GCLK_ID_2             6\r
73 #define EVSYS_GCLK_ID_3             7\r
74 #define EVSYS_GCLK_ID_4             8\r
75 #define EVSYS_GCLK_ID_5             9\r
76 #define EVSYS_GCLK_ID_6             10\r
77 #define EVSYS_GCLK_ID_7             11\r
78 #define EVSYS_GCLK_ID_LSB           4\r
79 #define EVSYS_GCLK_ID_MSB           11\r
80 #define EVSYS_GCLK_ID_SIZE          8\r
81 #define EVSYS_GENERATORS            49\r
82 #define EVSYS_USERS                 14\r
83 \r
84 // GENERATORS\r
85 #define EVSYS_ID_GEN_RTC_CMP_0      1\r
86 #define EVSYS_ID_GEN_RTC_CMP_1      2\r
87 #define EVSYS_ID_GEN_RTC_OVF        3\r
88 #define EVSYS_ID_GEN_RTC_PER_0      4\r
89 #define EVSYS_ID_GEN_RTC_PER_1      5\r
90 #define EVSYS_ID_GEN_RTC_PER_2      6\r
91 #define EVSYS_ID_GEN_RTC_PER_3      7\r
92 #define EVSYS_ID_GEN_RTC_PER_4      8\r
93 #define EVSYS_ID_GEN_RTC_PER_5      9\r
94 #define EVSYS_ID_GEN_RTC_PER_6      10\r
95 #define EVSYS_ID_GEN_RTC_PER_7      11\r
96 #define EVSYS_ID_GEN_EIC_EXTINT_0   12\r
97 #define EVSYS_ID_GEN_EIC_EXTINT_1   13\r
98 #define EVSYS_ID_GEN_EIC_EXTINT_2   14\r
99 #define EVSYS_ID_GEN_EIC_EXTINT_3   15\r
100 #define EVSYS_ID_GEN_EIC_EXTINT_4   16\r
101 #define EVSYS_ID_GEN_EIC_EXTINT_5   17\r
102 #define EVSYS_ID_GEN_EIC_EXTINT_6   18\r
103 #define EVSYS_ID_GEN_EIC_EXTINT_7   19\r
104 #define EVSYS_ID_GEN_EIC_EXTINT_8   20\r
105 #define EVSYS_ID_GEN_EIC_EXTINT_9   21\r
106 #define EVSYS_ID_GEN_EIC_EXTINT_10  22\r
107 #define EVSYS_ID_GEN_EIC_EXTINT_11  23\r
108 #define EVSYS_ID_GEN_EIC_EXTINT_12  24\r
109 #define EVSYS_ID_GEN_EIC_EXTINT_13  25\r
110 #define EVSYS_ID_GEN_EIC_EXTINT_14  26\r
111 #define EVSYS_ID_GEN_EIC_EXTINT_15  27\r
112 #define EVSYS_ID_GEN_TC0_OVF        28\r
113 #define EVSYS_ID_GEN_TC0_MCX_0      29\r
114 #define EVSYS_ID_GEN_TC0_MCX_1      30\r
115 #define EVSYS_ID_GEN_TC1_OVF        31\r
116 #define EVSYS_ID_GEN_TC1_MCX_0      32\r
117 #define EVSYS_ID_GEN_TC1_MCX_1      33\r
118 #define EVSYS_ID_GEN_TC2_OVF        34\r
119 #define EVSYS_ID_GEN_TC2_MCX_0      35\r
120 #define EVSYS_ID_GEN_TC2_MCX_1      36\r
121 #define EVSYS_ID_GEN_TC3_OVF        37\r
122 #define EVSYS_ID_GEN_TC3_MCX_0      38\r
123 #define EVSYS_ID_GEN_TC3_MCX_1      39\r
124 #define EVSYS_ID_GEN_TC4_OVF        40\r
125 #define EVSYS_ID_GEN_TC4_MCX_0      41\r
126 #define EVSYS_ID_GEN_TC4_MCX_1      42\r
127 #define EVSYS_ID_GEN_TC5_OVF        43\r
128 #define EVSYS_ID_GEN_TC5_MCX_0      44\r
129 #define EVSYS_ID_GEN_TC5_MCX_1      45\r
130 #define EVSYS_ID_GEN_TC6_OVF        46\r
131 #define EVSYS_ID_GEN_TC6_MCX_0      47\r
132 #define EVSYS_ID_GEN_TC6_MCX_1      48\r
133 #define EVSYS_ID_GEN_TC7_OVF        49\r
134 #define EVSYS_ID_GEN_TC7_MCX_0      50\r
135 #define EVSYS_ID_GEN_TC7_MCX_1      51\r
136 #define EVSYS_ID_GEN_ADC_RESRDY     52\r
137 #define EVSYS_ID_GEN_ADC_WINMON     53\r
138 #define EVSYS_ID_GEN_AC_COMP_0      54\r
139 #define EVSYS_ID_GEN_AC_COMP_1      55\r
140 #define EVSYS_ID_GEN_AC_WIN         56\r
141 #define EVSYS_ID_GEN_DAC_EMPTY      57\r
142 #define EVSYS_ID_GEN_PTC_EOC        58\r
143 #define EVSYS_ID_GEN_PTC_WCOMP      59\r
144 \r
145 // USERS\r
146 #define EVSYS_ID_USER_TC0_EVU       0\r
147 #define EVSYS_ID_USER_TC1_EVU       1\r
148 #define EVSYS_ID_USER_TC2_EVU       2\r
149 #define EVSYS_ID_USER_TC3_EVU       3\r
150 #define EVSYS_ID_USER_TC4_EVU       4\r
151 #define EVSYS_ID_USER_TC5_EVU       5\r
152 #define EVSYS_ID_USER_TC6_EVU       6\r
153 #define EVSYS_ID_USER_TC7_EVU       7\r
154 #define EVSYS_ID_USER_ADC_START     8\r
155 #define EVSYS_ID_USER_ADC_SYNC      9\r
156 #define EVSYS_ID_USER_AC_SOC_0      10\r
157 #define EVSYS_ID_USER_AC_SOC_1      11\r
158 #define EVSYS_ID_USER_DAC_START     12\r
159 #define EVSYS_ID_USER_PTC_STCONV    13\r
160 \r
161 #endif /* _SAMD20_EVSYS_INSTANCE_ */\r