1 /**************************************************************************//**
2  * @file
3  * @brief efm32g_af_annels.h Register and Bit Field definitions
4  * @author Energy Micro AS
5  * @version 3.0.0
6  ******************************************************************************
7  * @section License
8  * <b>(C) Copyright 2012 Energy Micro AS, http://www.energymicro.com</b>
9  ******************************************************************************
10  *
11  * Permission is granted to anyone to use this software for any purpose,
12  * including commercial applications, and to alter it and redistribute it
13  * freely, subject to the following restrictions:
14  *
15  * 1. The origin of this software must not be misrepresented; you must not
16  *    claim that you wrote the original software.
17  * 2. Altered source versions must be plainly marked as such, and must not be
18  *    misrepresented as being the original software.
19  * 3. This notice may not be removed or altered from any source distribution.
20  *
21  * DISCLAIMER OF WARRANTY/LIMITATION OF REMEDIES: Energy Micro AS has no
22  * obligation to support this Software. Energy Micro AS is providing the
23  * Software "AS IS", with no express or implied warranties of any kind,
24  * including, but not limited to, any implied warranties of merchantability
25  * or fitness for any particular purpose or warranties against infringement
26  * of any proprietary rights of a third party.
27  *
28  * Energy Micro AS will not be liable for any consequential, incidental, or
29  * special damages, or any other relief, or for any claim by any third party,
30  * arising from your use of this Software.
31  *
32  *****************************************************************************/
33 /**************************************************************************//**
34  * @defgroup EFM32G_AF_Channels
35  * @{
36  *****************************************************************************/
37 
38 /** AF channels connect the different on-chip peripherals with the af-mux */
39 #define AFCHAN_MAX          79
40 #define AFCHANLOC_MAX       4
41 /** Analog AF channels */
42 #define AFACHAN_MAX         37
43 
44 /** Peripheral Alternate Function (AF) channels */
45 #define AF_CMU_CLK0         0
46 #define AF_CMU_CLK1         1
47 #define AF_EBI_AD00         2
48 #define AF_EBI_AD01         3
49 #define AF_EBI_AD02         4
50 #define AF_EBI_AD03         5
51 #define AF_EBI_AD04         6
52 #define AF_EBI_AD05         7
53 #define AF_EBI_AD06         8
54 #define AF_EBI_AD07         9
55 #define AF_EBI_AD08         10
56 #define AF_EBI_AD09         11
57 #define AF_EBI_AD10         12
58 #define AF_EBI_AD11         13
59 #define AF_EBI_AD12         14
60 #define AF_EBI_AD13         15
61 #define AF_EBI_AD14         16
62 #define AF_EBI_AD15         17
63 #define AF_EBI_CS0          18
64 #define AF_EBI_CS1          19
65 #define AF_EBI_CS2          20
66 #define AF_EBI_CS3          21
67 #define AF_EBI_WEn          22
68 #define AF_EBI_REn          23
69 #define AF_EBI_ARDY         24
70 #define AF_EBI_ALE          25
71 #define AF_TIMER0_CC0       26
72 #define AF_TIMER0_CC1       27
73 #define AF_TIMER0_CC2       28
74 #define AF_TIMER0_CDTI0     29
75 #define AF_TIMER0_CDTI1     30
76 #define AF_TIMER0_CDTI2     31
77 #define AF_TIMER1_CC0       32
78 #define AF_TIMER1_CC1       33
79 #define AF_TIMER1_CC2       34
80 #define AF_TIMER1_CDTI0     35
81 #define AF_TIMER1_CDTI1     36
82 #define AF_TIMER1_CDTI2     37
83 #define AF_TIMER2_CC0       38
84 #define AF_TIMER2_CC1       39
85 #define AF_TIMER2_CC2       40
86 #define AF_TIMER2_CDTI0     41
87 #define AF_TIMER2_CDTI1     42
88 #define AF_TIMER2_CDTI2     43
89 #define AF_USART0_TX        44
90 #define AF_USART0_RX        45
91 #define AF_USART0_CLK       46
92 #define AF_USART0_CS        47
93 #define AF_USART1_TX        48
94 #define AF_USART1_RX        49
95 #define AF_USART1_CLK       50
96 #define AF_USART1_CS        51
97 #define AF_USART2_TX        52
98 #define AF_USART2_RX        53
99 #define AF_USART2_CLK       54
100 #define AF_USART2_CS        55
101 #define AF_UART0_TX         56
102 #define AF_UART0_RX         57
103 #define AF_UART0_CLK        58
104 #define AF_UART0_CS         59
105 #define AF_LEUART0_TX       60
106 #define AF_LEUART0_RX       61
107 #define AF_LEUART1_TX       62
108 #define AF_LEUART1_RX       63
109 #define AF_LETIMER0_OUT0    64
110 #define AF_LETIMER0_OUT1    65
111 #define AF_PCNT0_S0IN       66
112 #define AF_PCNT0_S1IN       67
113 #define AF_PCNT1_S0IN       68
114 #define AF_PCNT1_S1IN       69
115 #define AF_PCNT2_S0IN       70
116 #define AF_PCNT2_S1IN       71
117 #define AF_I2C0_SDA         72
118 #define AF_I2C0_SCL         73
119 #define AF_ACMP0_OUT        74
120 #define AF_ACMP1_OUT        75
121 #define AF_DBG_SWO          76
122 #define AF_DBG_SWDIO        77
123 #define AF_DBG_SWCLK        78
124 
125 /** Analog Alternate Function (AF) channels */
126 #define AFA_MSC_TM0         0
127 #define AFA_MSC_TM1         1
128 #define AFA_MSC_TM2         2
129 #define AFA_ADC0_CH0        3
130 #define AFA_ADC0_CH1        4
131 #define AFA_ADC0_CH2        5
132 #define AFA_ADC0_CH3        6
133 #define AFA_ADC0_CH4        7
134 #define AFA_ADC0_CH5        8
135 #define AFA_ADC0_CH6        9
136 #define AFA_ADC0_CH7        10
137 #define AFA_ADC0_VCM        11
138 #define AFA_DAC0_OUT0       12
139 #define AFA_DAC0_OUT1       13
140 #define AFA_ACMP0_CH0       14
141 #define AFA_ACMP0_CH1       15
142 #define AFA_ACMP0_CH2       16
143 #define AFA_ACMP0_CH3       17
144 #define AFA_ACMP0_CH4       18
145 #define AFA_ACMP0_CH5       19
146 #define AFA_ACMP0_CH6       20
147 #define AFA_ACMP0_CH7       21
148 #define AFA_ACMP1_CH0       22
149 #define AFA_ACMP1_CH1       23
150 #define AFA_ACMP1_CH2       24
151 #define AFA_ACMP1_CH3       25
152 #define AFA_ACMP1_CH4       26
153 #define AFA_ACMP1_CH5       27
154 #define AFA_ACMP1_CH6       28
155 #define AFA_ACMP1_CH7       29
156 #define AFA_LCD_BCAP_P      30
157 #define AFA_LCD_BCAP_N      31
158 #define AFA_LCD_BEXT        32
159 #define AFA_HFXTAL_P        33
160 #define AFA_HFXTAL_N        34
161 #define AFA_LFXTAL_P        35
162 #define AFA_LFXTAL_N        36
163 
164 /** Digital Alternate Function (AF) */
165 #define AF_TIMER_CC0(i)       ((i) == 0 ? AF_TIMER0_CC0 : (i) == 1 ? AF_TIMER1_CC0 : (i) == 2 ? AF_TIMER2_CC0 :  -1)
166 #define AF_UART_CLK(i)        ((i) == 0 ? AF_UART0_CLK :  -1)
167 #define AF_I2C_SDA(i)         ((i) == 0 ? AF_I2C0_SDA :  -1)
168 #define AF_TIMER_CC1(i)       ((i) == 0 ? AF_TIMER0_CC1 : (i) == 1 ? AF_TIMER1_CC1 : (i) == 2 ? AF_TIMER2_CC1 :  -1)
169 #define AF_USART_CS(i)        ((i) == 0 ? AF_USART0_CS : (i) == 1 ? AF_USART1_CS : (i) == 2 ? AF_USART2_CS :  -1)
170 #define AF_I2C_SCL(i)         ((i) == 0 ? AF_I2C0_SCL :  -1)
171 #define AF_TIMER_CC2(i)       ((i) == 0 ? AF_TIMER0_CC2 : (i) == 1 ? AF_TIMER1_CC2 : (i) == 2 ? AF_TIMER2_CC2 :  -1)
172 #define AF_TIMER_CDTI1(i)     ((i) == 0 ? AF_TIMER0_CDTI1 : (i) == 1 ? AF_TIMER1_CDTI1 : (i) == 2 ? AF_TIMER2_CDTI1 :  -1)
173 #define AF_TIMER_CDTI0(i)     ((i) == 0 ? AF_TIMER0_CDTI0 : (i) == 1 ? AF_TIMER1_CDTI0 : (i) == 2 ? AF_TIMER2_CDTI0 :  -1)
174 #define AF_USART_CLK(i)       ((i) == 0 ? AF_USART0_CLK : (i) == 1 ? AF_USART1_CLK : (i) == 2 ? AF_USART2_CLK :  -1)
175 #define AF_UART_RX(i)         ((i) == 0 ? AF_UART0_RX :  -1)
176 #define AF_UART_TX(i)         ((i) == 0 ? AF_UART0_TX :  -1)
177 #define AF_LETIMER_OUT1(i)    ((i) == 0 ? AF_LETIMER0_OUT1 :  -1)
178 #define AF_LEUART_RX(i)       ((i) == 0 ? AF_LEUART0_RX : (i) == 1 ? AF_LEUART1_RX :  -1)
179 #define AF_PCNT_S1IN(i)       ((i) == 0 ? AF_PCNT0_S1IN : (i) == 1 ? AF_PCNT1_S1IN : (i) == 2 ? AF_PCNT2_S1IN :  -1)
180 #define AF_TIMER_CDTI2(i)     ((i) == 0 ? AF_TIMER0_CDTI2 : (i) == 1 ? AF_TIMER1_CDTI2 : (i) == 2 ? AF_TIMER2_CDTI2 :  -1)
181 #define AF_LEUART_TX(i)       ((i) == 0 ? AF_LEUART0_TX : (i) == 1 ? AF_LEUART1_TX :  -1)
182 #define AF_USART_TX(i)        ((i) == 0 ? AF_USART0_TX : (i) == 1 ? AF_USART1_TX : (i) == 2 ? AF_USART2_TX :  -1)
183 #define AF_LETIMER_OUT0(i)    ((i) == 0 ? AF_LETIMER0_OUT0 :  -1)
184 #define AF_ACMP_OUT(i)        ((i) == 0 ? AF_ACMP0_OUT : (i) == 1 ? AF_ACMP1_OUT :  -1)
185 #define AF_USART_RX(i)        ((i) == 0 ? AF_USART0_RX : (i) == 1 ? AF_USART1_RX : (i) == 2 ? AF_USART2_RX :  -1)
186 #define AF_UART_CS(i)         ((i) == 0 ? AF_UART0_CS :  -1)
187 #define AF_PCNT_S0IN(i)       ((i) == 0 ? AF_PCNT0_S0IN : (i) == 1 ? AF_PCNT1_S0IN : (i) == 2 ? AF_PCNT2_S0IN :  -1)
188 #define AFA_DAC_OUT1(i)       ((i) == 0 ? AFA_DAC0_OUT1 :  -1)
189 #define AFA_DAC_OUT0(i)       ((i) == 0 ? AFA_DAC0_OUT0 :  -1)
190 #define AFA_ADC_CH7(i)        ((i) == 0 ? AFA_ADC0_CH7 :  -1)
191 #define AFA_ADC_VCM(i)        ((i) == 0 ? AFA_ADC0_VCM :  -1)
192 #define AFA_ACMP_CH1(i)       ((i) == 0 ? AFA_ACMP0_CH1 : (i) == 1 ? AFA_ACMP1_CH1 :  -1)
193 #define AFA_ADC_CH0(i)        ((i) == 0 ? AFA_ADC0_CH0 :  -1)
194 #define AFA_ACMP_CH0(i)       ((i) == 0 ? AFA_ACMP0_CH0 : (i) == 1 ? AFA_ACMP1_CH0 :  -1)
195 #define AFA_ACMP_CH3(i)       ((i) == 0 ? AFA_ACMP0_CH3 : (i) == 1 ? AFA_ACMP1_CH3 :  -1)
196 #define AFA_ADC_CH1(i)        ((i) == 0 ? AFA_ADC0_CH1 :  -1)
197 #define AFA_ACMP_CH2(i)       ((i) == 0 ? AFA_ACMP0_CH2 : (i) == 1 ? AFA_ACMP1_CH2 :  -1)
198 #define AFA_ADC_CH2(i)        ((i) == 0 ? AFA_ADC0_CH2 :  -1)
199 #define AFA_ADC_CH3(i)        ((i) == 0 ? AFA_ADC0_CH3 :  -1)
200 #define AFA_ADC_CH4(i)        ((i) == 0 ? AFA_ADC0_CH4 :  -1)
201 #define AFA_ADC_CH5(i)        ((i) == 0 ? AFA_ADC0_CH5 :  -1)
202 #define AFA_ADC_CH6(i)        ((i) == 0 ? AFA_ADC0_CH6 :  -1)
203 #define AFA_ACMP_CH5(i)       ((i) == 0 ? AFA_ACMP0_CH5 : (i) == 1 ? AFA_ACMP1_CH5 :  -1)
204 #define AFA_ACMP_CH4(i)       ((i) == 0 ? AFA_ACMP0_CH4 : (i) == 1 ? AFA_ACMP1_CH4 :  -1)
205 #define AFA_ACMP_CH7(i)       ((i) == 0 ? AFA_ACMP0_CH7 : (i) == 1 ? AFA_ACMP1_CH7 :  -1)
206 #define AFA_ACMP_CH6(i)       ((i) == 0 ? AFA_ACMP0_CH6 : (i) == 1 ? AFA_ACMP1_CH6 :  -1)
207 
208 /** @} End of group EFM32G_AF_Channels  */
209 
210 
211