ISSDK  1.7
IoT Sensing Software Development Kit
pin_mux.c
Go to the documentation of this file.
1 /*
2  * The Clear BSD License
3  * Copyright (c) 2015, Freescale Semiconductor, Inc.
4  * Copyright 2016-2017 NXP
5  * All rights reserved.
6  *
7  * Redistribution and use in source and binary forms, with or without modification,
8  * are permitted (subject to the limitations in the disclaimer below) provided
9  * that the following conditions are met:
10  *
11  * o Redistributions of source code must retain the above copyright notice, this list
12  * of conditions and the following disclaimer.
13  *
14  * o Redistributions in binary form must reproduce the above copyright notice, this
15  * list of conditions and the following disclaimer in the documentation and/or
16  * other materials provided with the distribution.
17  *
18  * o Neither the name of the copyright holder nor the names of its
19  * contributors may be used to endorse or promote products derived from this
20  * software without specific prior written permission.
21  *
22  * NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE GRANTED BY THIS LICENSE.
23  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
24  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
25  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
26  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
27  * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
28  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
29  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
30  * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
32  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33  */
34 
35 /*
36  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
37 PinsProfile:
38 - !!product 'Pins v2.0'
39 - !!processor 'LPC54114J256'
40 - !!package 'LPC54114J256BD64'
41 - !!mcu_data 'ksdk2_0'
42 - !!processor_version '1.1.0'
43 - !!board 'LPCXpresso54114'
44  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
45  */
46 
47 #include "fsl_common.h"
48 #include "fsl_iocon.h"
49 #include "fsl_inputmux.h"
50 #include "pin_mux.h"
51 
52 #define IOCON_PIO_DIGITAL_EN 0x80u /*!< Enables digital function */
53 #define IOCON_PIO_FUNC1 0x01u /*!< Selects pin function 1 */
54 #define IOCON_PIO_INPFILT_OFF 0x0100u /*!< Input filter disabled */
55 #define IOCON_PIO_INV_DI 0x00u /*!< Input function is not inverted */
56 #define IOCON_PIO_MODE_INACT 0x00u /*!< No addition pin function */
57 #define IOCON_PIO_OPENDRAIN_DI 0x00u /*!< Open drain is disabled */
58 #define IOCON_PIO_SLEW_STANDARD 0x00u /*!< Standard mode, output slew rate control is enabled */
59 #define PIN0_IDX 0u /*!< Pin number for pin 0 in a port 0 */
60 #define PIN1_IDX 1u /*!< Pin number for pin 1 in a port 0 */
61 #define PORT0_IDX 0u /*!< Port index */
62 
63 /*
64  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
65 BOARD_InitPins:
66 - options: {prefix: BOARD_, coreID: core0, enableClock: 'true'}
67 - pin_list:
68  - {pin_num: '31', peripheral: FLEXCOMM0, signal: RXD_SDA_MOSI, pin_signal: PIO0_0/FC0_RXD_SDA_MOSI/FC3_CTS_SDA_SSEL0/CTIMER0_CAP0/SCT0_OUT3, mode: inactive, invert: disabled,
69  glitch_filter: disabled, slew_rate: standard, open_drain: disabled}
70  - {pin_num: '32', peripheral: FLEXCOMM0, signal: TXD_SCL_MISO, pin_signal: PIO0_1/FC0_TXD_SCL_MISO/FC3_RTS_SCL_SSEL1/CTIMER0_CAP1/SCT0_OUT1, mode: inactive, invert: disabled,
71  glitch_filter: disabled, slew_rate: standard, open_drain: disabled}
72  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
73  */
74 
75 /*FUNCTION**********************************************************************
76  *
77  * Function Name : BOARD_InitPins
78  * Description : Configures pin routing and optionally pin electrical features.
79  *
80  *END**************************************************************************/
81 void BOARD_InitPins(void) { /* Function assigned for the Core #0 (ARM Cortex-M4) */
82  CLOCK_EnableClock(kCLOCK_Iocon); /* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
83 
84  const uint32_t port0_pin0_config = (
85  IOCON_PIO_FUNC1 | /* Pin is configured as FC0_RXD_SDA_MOSI */
86  IOCON_PIO_MODE_INACT | /* No addition pin function */
87  IOCON_PIO_INV_DI | /* Input function is not inverted */
88  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
89  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
90  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
91  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
92  );
93  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN0_IDX, port0_pin0_config); /* PORT0 PIN0 (coords: 31) is configured as FC0_RXD_SDA_MOSI */
94  const uint32_t port0_pin1_config = (
95  IOCON_PIO_FUNC1 | /* Pin is configured as FC0_TXD_SCL_MISO */
96  IOCON_PIO_MODE_INACT | /* No addition pin function */
97  IOCON_PIO_INV_DI | /* Input function is not inverted */
98  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
99  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
100  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
101  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
102  );
103  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN1_IDX, port0_pin1_config); /* PORT0 PIN1 (coords: 32) is configured as FC0_TXD_SCL_MISO */
104 }
105 
106 
107 #define IOCON_PIO_DIGITAL_EN 0x80u /*!< Enables digital function */
108 #define IOCON_PIO_FUNC1 0x01u /*!< Selects pin function 1 */
109 #define IOCON_PIO_INPFILT_OFF 0x0100u /*!< Input filter disabled */
110 #define IOCON_PIO_INV_DI 0x00u /*!< Input function is not inverted */
111 #define IOCON_PIO_MODE_INACT 0x00u /*!< No addition pin function */
112 #define IOCON_PIO_OPENDRAIN_DI 0x00u /*!< Open drain is disabled */
113 #define IOCON_PIO_SLEW_STANDARD 0x00u /*!< Standard mode, output slew rate control is enabled */
114 #define PIN0_IDX 0u /*!< Pin number for pin 0 in a port 0 */
115 #define PIN1_IDX 1u /*!< Pin number for pin 1 in a port 0 */
116 #define PORT0_IDX 0u /*!< Port index */
117 
118 /*
119  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
120 USART0_InitPins:
121 - options: {prefix: BOARD_, coreID: core0, enableClock: 'true'}
122 - pin_list:
123  - {pin_num: '31', peripheral: FLEXCOMM0, signal: RXD_SDA_MOSI, pin_signal: PIO0_0/FC0_RXD_SDA_MOSI/FC3_CTS_SDA_SSEL0/CTIMER0_CAP0/SCT0_OUT3, mode: inactive, invert: disabled,
124  glitch_filter: disabled, slew_rate: standard, open_drain: disabled}
125  - {pin_num: '32', peripheral: FLEXCOMM0, signal: TXD_SCL_MISO, pin_signal: PIO0_1/FC0_TXD_SCL_MISO/FC3_RTS_SCL_SSEL1/CTIMER0_CAP1/SCT0_OUT1, mode: inactive, invert: disabled,
126  glitch_filter: disabled, slew_rate: standard, open_drain: disabled}
127  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
128  */
129 
130 /*FUNCTION**********************************************************************
131  *
132  * Function Name : USART0_InitPins
133  * Description : Configures pin routing and optionally pin electrical features.
134  *
135  *END**************************************************************************/
136 void USART0_InitPins(void) { /* Function assigned for the Core #0 (ARM Cortex-M4) */
137  CLOCK_EnableClock(kCLOCK_Iocon); /* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
138 
139  const uint32_t port0_pin0_config = (
140  IOCON_PIO_FUNC1 | /* Pin is configured as FC0_RXD_SDA_MOSI */
141  IOCON_PIO_MODE_INACT | /* No addition pin function */
142  IOCON_PIO_INV_DI | /* Input function is not inverted */
143  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
144  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
145  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
146  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
147  );
148  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN0_IDX, port0_pin0_config); /* PORT0 PIN0 (coords: 31) is configured as FC0_RXD_SDA_MOSI */
149  const uint32_t port0_pin1_config = (
150  IOCON_PIO_FUNC1 | /* Pin is configured as FC0_TXD_SCL_MISO */
151  IOCON_PIO_MODE_INACT | /* No addition pin function */
152  IOCON_PIO_INV_DI | /* Input function is not inverted */
153  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
154  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
155  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
156  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
157  );
158  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN1_IDX, port0_pin1_config); /* PORT0 PIN1 (coords: 32) is configured as FC0_TXD_SCL_MISO */
159 }
160 
161 
162 #define PIO00_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
163 #define PIO00_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
164 #define PIO01_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
165 #define PIO01_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
166 
167 /*
168  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
169 USART0_DeinitPins:
170 - options: {coreID: core0, enableClock: 'true'}
171 - pin_list:
172  - {pin_num: '31', peripheral: GPIO, signal: 'PIO0, 0', pin_signal: PIO0_0/FC0_RXD_SDA_MOSI/FC3_CTS_SDA_SSEL0/CTIMER0_CAP0/SCT0_OUT3}
173  - {pin_num: '32', peripheral: GPIO, signal: 'PIO0, 1', pin_signal: PIO0_1/FC0_TXD_SCL_MISO/FC3_RTS_SCL_SSEL1/CTIMER0_CAP1/SCT0_OUT1}
174  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
175  */
176 
177 /*FUNCTION**********************************************************************
178  *
179  * Function Name : USART0_DeinitPins
180  * Description : Configures pin routing and optionally pin electrical features.
181  *
182  *END**************************************************************************/
183 void USART0_DeinitPins(void) { /* Function assigned for the Core #0 (ARM Cortex-M4) */
184  CLOCK_EnableClock(kCLOCK_Iocon); /* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
185 
186  IOCON->PIO[0][0] = ((IOCON->PIO[0][0] &
187  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK))) /* Mask bits to zero which are setting */
188  | IOCON_PIO_FUNC(PIO00_FUNC_ALT0) /* Selects pin function.: PORT00 (pin 31) is configured as PIO0_0 */
189  | IOCON_PIO_DIGIMODE(PIO00_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
190  );
191  IOCON->PIO[0][1] = ((IOCON->PIO[0][1] &
192  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK))) /* Mask bits to zero which are setting */
193  | IOCON_PIO_FUNC(PIO01_FUNC_ALT0) /* Selects pin function.: PORT01 (pin 32) is configured as PIO0_1 */
194  | IOCON_PIO_DIGIMODE(PIO01_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
195  );
196 }
197 
198 
199 #define IOCON_PIO_DIGITAL_EN 0x80u /*!< Enables digital function */
200 #define IOCON_PIO_FUNC1 0x01u /*!< Selects pin function 1 */
201 #define IOCON_PIO_I2CDRIVE_LOW 0x00u /*!< Low drive: 4 mA */
202 #define IOCON_PIO_I2CFILTER_EN 0x00u /*!< I2C 50 ns glitch filter enabled */
203 #define IOCON_PIO_I2CSLEW_I2C 0x00u /*!< I2C mode */
204 #define IOCON_PIO_INPFILT_OFF 0x0100u /*!< Input filter disabled */
205 #define IOCON_PIO_INV_DI 0x00u /*!< Input function is not inverted */
206 #define PIN25_IDX 25u /*!< Pin number for pin 25 in a port 0 */
207 #define PIN26_IDX 26u /*!< Pin number for pin 26 in a port 0 */
208 #define PORT0_IDX 0u /*!< Port index */
209 
210 /*
211  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
212 I2C4_InitPins:
213 - options: {coreID: core0, enableClock: 'true'}
214 - pin_list:
215  - {pin_num: '4', peripheral: FLEXCOMM4, signal: CTS_SDA_SSEL0, pin_signal: PIO0_26/FC4_CTS_SDA_SSEL0/CTIMER0_CAP3, invert: disabled, glitch_filter: disabled, i2c_slew: i2c,
216  i2c_drive: low, i2c_filter: enabled}
217  - {pin_num: '3', peripheral: FLEXCOMM4, signal: RTS_SCL_SSEL1, pin_signal: PIO0_25/FC4_RTS_SCL_SSEL1/FC6_CTS_SDA_SSEL0/CTIMER0_CAP2/CTIMER1_CAP1, invert: disabled,
218  glitch_filter: disabled, i2c_slew: i2c, i2c_drive: low, i2c_filter: enabled}
219  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
220  */
221 
222 /*FUNCTION**********************************************************************
223  *
224  * Function Name : I2C4_InitPins
225  * Description : Configures pin routing and optionally pin electrical features.
226  *
227  *END**************************************************************************/
228 void I2C4_InitPins(void) { /* Function assigned for the Core #0 (ARM Cortex-M4) */
229  CLOCK_EnableClock(kCLOCK_Iocon); /* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
230 
231  const uint32_t port0_pin25_config = (
232  IOCON_PIO_FUNC1 | /* Pin is configured as FC4_RTS_SCL_SSEL1 */
233  IOCON_PIO_I2CSLEW_I2C | /* I2C mode */
234  IOCON_PIO_INV_DI | /* Input function is not inverted */
235  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
236  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
237  IOCON_PIO_I2CDRIVE_LOW | /* Low drive: 4 mA */
238  IOCON_PIO_I2CFILTER_EN /* I2C 50 ns glitch filter enabled */
239  );
240  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN25_IDX, port0_pin25_config); /* PORT0 PIN25 (coords: 3) is configured as FC4_RTS_SCL_SSEL1 */
241  const uint32_t port0_pin26_config = (
242  IOCON_PIO_FUNC1 | /* Pin is configured as FC4_CTS_SDA_SSEL0 */
243  IOCON_PIO_I2CSLEW_I2C | /* I2C mode */
244  IOCON_PIO_INV_DI | /* Input function is not inverted */
245  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
246  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
247  IOCON_PIO_I2CDRIVE_LOW | /* Low drive: 4 mA */
248  IOCON_PIO_I2CFILTER_EN /* I2C 50 ns glitch filter enabled */
249  );
250  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN26_IDX, port0_pin26_config); /* PORT0 PIN26 (coords: 4) is configured as FC4_CTS_SDA_SSEL0 */
251 }
252 
253 
254 #define PIO025_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
255 #define PIO025_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
256 #define PIO026_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
257 #define PIO026_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
258 
259 /*
260  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
261 I2C4_DeinitPins:
262 - options: {coreID: core0, enableClock: 'true'}
263 - pin_list:
264  - {pin_num: '4', peripheral: GPIO, signal: 'PIO0, 26', pin_signal: PIO0_26/FC4_CTS_SDA_SSEL0/CTIMER0_CAP3}
265  - {pin_num: '3', peripheral: GPIO, signal: 'PIO0, 25', pin_signal: PIO0_25/FC4_RTS_SCL_SSEL1/FC6_CTS_SDA_SSEL0/CTIMER0_CAP2/CTIMER1_CAP1}
266  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
267  */
268 
269 /*FUNCTION**********************************************************************
270  *
271  * Function Name : I2C4_DeinitPins
272  * Description : Configures pin routing and optionally pin electrical features.
273  *
274  *END**************************************************************************/
275 void I2C4_DeinitPins(void) { /* Function assigned for the Core #0 (ARM Cortex-M4) */
276  CLOCK_EnableClock(kCLOCK_Iocon); /* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
277 
278  IOCON->PIO[0][25] = ((IOCON->PIO[0][25] &
279  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK))) /* Mask bits to zero which are setting */
280  | IOCON_PIO_FUNC(PIO025_FUNC_ALT0) /* Selects pin function.: PORT025 (pin 3) is configured as PIO0_25 */
281  | IOCON_PIO_DIGIMODE(PIO025_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
282  );
283  IOCON->PIO[0][26] = ((IOCON->PIO[0][26] &
284  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK))) /* Mask bits to zero which are setting */
285  | IOCON_PIO_FUNC(PIO026_FUNC_ALT0) /* Selects pin function.: PORT026 (pin 4) is configured as PIO0_26 */
286  | IOCON_PIO_DIGIMODE(PIO026_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
287  );
288 }
289 
290 
291 #define IOCON_PIO_DIGITAL_EN 0x80u /*!< Enables digital function */
292 #define IOCON_PIO_FUNC1 0x01u /*!< Selects pin function 1 */
293 #define IOCON_PIO_INPFILT_OFF 0x0100u /*!< Input filter disabled */
294 #define IOCON_PIO_INV_DI 0x00u /*!< Input function is not inverted */
295 #define IOCON_PIO_MODE_INACT 0x00u /*!< No addition pin function */
296 #define IOCON_PIO_OPENDRAIN_DI 0x00u /*!< Open drain is disabled */
297 #define IOCON_PIO_SLEW_STANDARD 0x00u /*!< Standard mode, output slew rate control is enabled */
298 #define PIN18_IDX 18u /*!< Pin number for pin 18 in a port 0 */
299 #define PIN20_IDX 20u /*!< Pin number for pin 20 in a port 0 */
300 #define PORT0_IDX 0u /*!< Port index */
301 
302 /*
303  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
304 I2C5_InitPins:
305 - options: {coreID: core0, enableClock: 'true'}
306 - pin_list:
307  - {pin_num: '58', peripheral: FLEXCOMM5, signal: TXD_SCL_MISO, pin_signal: PIO0_18/FC5_TXD_SCL_MISO/SCT0_OUT0/CTIMER0_MAT0, mode: inactive, invert: disabled, glitch_filter: disabled,
308  slew_rate: standard, open_drain: disabled}
309  - {pin_num: '60', peripheral: FLEXCOMM5, signal: RXD_SDA_MOSI, pin_signal: PIO0_20/FC5_RXD_SDA_MOSI/FC0_SCK/CTIMER3_CAP0, mode: inactive, invert: disabled, glitch_filter: disabled,
310  slew_rate: standard, open_drain: disabled}
311  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
312  */
313 
314 /*FUNCTION**********************************************************************
315  *
316  * Function Name : I2C5_InitPins
317  * Description : Configures pin routing and optionally pin electrical features.
318  *
319  *END**************************************************************************/
320 void I2C5_InitPins(void) { /* Function assigned for the Core #0 (ARM Cortex-M4) */
321  CLOCK_EnableClock(kCLOCK_Iocon); /* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
322 
323  const uint32_t port0_pin18_config = (
324  IOCON_PIO_FUNC1 | /* Pin is configured as FC5_TXD_SCL_MISO */
325  IOCON_PIO_MODE_INACT | /* No addition pin function */
326  IOCON_PIO_INV_DI | /* Input function is not inverted */
327  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
328  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
329  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
330  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
331  );
332  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN18_IDX, port0_pin18_config); /* PORT0 PIN18 (coords: 58) is configured as FC5_TXD_SCL_MISO */
333  const uint32_t port0_pin20_config = (
334  IOCON_PIO_FUNC1 | /* Pin is configured as FC5_RXD_SDA_MOSI */
335  IOCON_PIO_MODE_INACT | /* No addition pin function */
336  IOCON_PIO_INV_DI | /* Input function is not inverted */
337  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
338  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
339  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
340  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
341  );
342  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN20_IDX, port0_pin20_config); /* PORT0 PIN20 (coords: 60) is configured as FC5_RXD_SDA_MOSI */
343 }
344 
345 
346 #define PIO018_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
347 #define PIO018_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
348 #define PIO020_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
349 #define PIO020_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
350 
351 /*
352  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
353 I2C5_DeinitPins:
354 - options: {coreID: core0, enableClock: 'true'}
355 - pin_list:
356  - {pin_num: '60', peripheral: GPIO, signal: 'PIO0, 20', pin_signal: PIO0_20/FC5_RXD_SDA_MOSI/FC0_SCK/CTIMER3_CAP0}
357  - {pin_num: '58', peripheral: GPIO, signal: 'PIO0, 18', pin_signal: PIO0_18/FC5_TXD_SCL_MISO/SCT0_OUT0/CTIMER0_MAT0}
358  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
359  */
360 
361 /*FUNCTION**********************************************************************
362  *
363  * Function Name : I2C5_DeinitPins
364  * Description : Configures pin routing and optionally pin electrical features.
365  *
366  *END**************************************************************************/
367 void I2C5_DeinitPins(void) { /* Function assigned for the Core #0 (ARM Cortex-M4) */
368  CLOCK_EnableClock(kCLOCK_Iocon); /* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
369 
370  IOCON->PIO[0][18] = ((IOCON->PIO[0][18] &
371  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK))) /* Mask bits to zero which are setting */
372  | IOCON_PIO_FUNC(PIO018_FUNC_ALT0) /* Selects pin function.: PORT018 (pin 58) is configured as PIO0_18 */
373  | IOCON_PIO_DIGIMODE(PIO018_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
374  );
375  IOCON->PIO[0][20] = ((IOCON->PIO[0][20] &
376  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK))) /* Mask bits to zero which are setting */
377  | IOCON_PIO_FUNC(PIO020_FUNC_ALT0) /* Selects pin function.: PORT020 (pin 60) is configured as PIO0_20 */
378  | IOCON_PIO_DIGIMODE(PIO020_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
379  );
380 }
381 
382 
383 #define IOCON_PIO_DIGITAL_EN 0x80u /*!< Enables digital function */
384 #define IOCON_PIO_FUNC1 0x01u /*!< Selects pin function 1 */
385 #define IOCON_PIO_FUNC2 0x02u /*!< Selects pin function 2 */
386 #define IOCON_PIO_INPFILT_OFF 0x0100u /*!< Input filter disabled */
387 #define IOCON_PIO_INV_DI 0x00u /*!< Input function is not inverted */
388 #define IOCON_PIO_MODE_PULLUP 0x10u /*!< Selects pull-up function */
389 #define IOCON_PIO_OPENDRAIN_DI 0x00u /*!< Open drain is disabled */
390 #define IOCON_PIO_SLEW_STANDARD 0x00u /*!< Standard mode, output slew rate control is enabled */
391 #define PIN4_IDX 4u /*!< Pin number for pin 4 in a port 0 */
392 #define PIN11_IDX 11u /*!< Pin number for pin 11 in a port 0 */
393 #define PIN12_IDX 12u /*!< Pin number for pin 12 in a port 0 */
394 #define PIN13_IDX 13u /*!< Pin number for pin 13 in a port 0 */
395 #define PORT0_IDX 0u /*!< Port index */
396 
397 /*
398  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
399 SPI3_InitPins:
400 - options: {coreID: core0, enableClock: 'true'}
401 - pin_list:
402  - {pin_num: '47', peripheral: FLEXCOMM3, signal: RXD_SDA_MOSI, pin_signal: PIO0_12/FC3_RXD_SDA_MOSI/FC6_TXD_SCL_MISO_WS/CTIMER2_MAT3, mode: pullUp, invert: disabled,
403  glitch_filter: disabled, slew_rate: standard, open_drain: disabled}
404  - {pin_num: '46', peripheral: FLEXCOMM3, signal: SCK, pin_signal: PIO0_11/FC3_SCK/FC6_RXD_SDA_MOSI_DATA/CTIMER2_MAT1, mode: pullUp, invert: disabled, glitch_filter: disabled,
405  slew_rate: standard, open_drain: disabled}
406  - {pin_num: '48', peripheral: FLEXCOMM3, signal: TXD_SCL_MISO, pin_signal: PIO0_13/FC3_TXD_SCL_MISO/SCT0_OUT4/CTIMER2_MAT0, mode: pullUp, invert: disabled, glitch_filter: disabled,
407  slew_rate: standard, open_drain: disabled}
408  - {pin_num: '38', peripheral: FLEXCOMM3, signal: SSEL2, pin_signal: PIO0_4/FC0_SCK/FC3_SSEL2/CTIMER0_CAP2, mode: pullUp, invert: disabled, glitch_filter: disabled,
409  slew_rate: standard, open_drain: disabled}
410  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
411  */
412 
413 /*FUNCTION**********************************************************************
414  *
415  * Function Name : SPI3_InitPins
416  * Description : Configures pin routing and optionally pin electrical features.
417  *
418  *END**************************************************************************/
419 void SPI3_InitPins(void) { /* Function assigned for the Core #0 (ARM Cortex-M4) */
420  CLOCK_EnableClock(kCLOCK_Iocon); /* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
421 
422  const uint32_t port0_pin11_config = (
423  IOCON_PIO_FUNC1 | /* Pin is configured as FC3_SCK */
424  IOCON_PIO_MODE_PULLUP | /* Selects pull-up function */
425  IOCON_PIO_INV_DI | /* Input function is not inverted */
426  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
427  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
428  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
429  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
430  );
431  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN11_IDX, port0_pin11_config); /* PORT0 PIN11 (coords: 46) is configured as FC3_SCK */
432  const uint32_t port0_pin12_config = (
433  IOCON_PIO_FUNC1 | /* Pin is configured as FC3_RXD_SDA_MOSI */
434  IOCON_PIO_MODE_PULLUP | /* Selects pull-up function */
435  IOCON_PIO_INV_DI | /* Input function is not inverted */
436  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
437  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
438  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
439  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
440  );
441  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN12_IDX, port0_pin12_config); /* PORT0 PIN12 (coords: 47) is configured as FC3_RXD_SDA_MOSI */
442  const uint32_t port0_pin13_config = (
443  IOCON_PIO_FUNC1 | /* Pin is configured as FC3_TXD_SCL_MISO */
444  IOCON_PIO_MODE_PULLUP | /* Selects pull-up function */
445  IOCON_PIO_INV_DI | /* Input function is not inverted */
446  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
447  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
448  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
449  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
450  );
451  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN13_IDX, port0_pin13_config); /* PORT0 PIN13 (coords: 48) is configured as FC3_TXD_SCL_MISO */
452  const uint32_t port0_pin4_config = (
453  IOCON_PIO_FUNC2 | /* Pin is configured as FC3_SSEL2 */
454  IOCON_PIO_MODE_PULLUP | /* Selects pull-up function */
455  IOCON_PIO_INV_DI | /* Input function is not inverted */
456  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
457  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
458  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
459  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
460  );
461  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN4_IDX, port0_pin4_config); /* PORT0 PIN4 (coords: 38) is configured as FC3_SSEL2 */
462 }
463 
464 
465 #define DMA_ITRIG_INMUX0_IDX 0u /*!< Inputmux DMA_ITRIG_INMUX register index 0 */
466 #define DMA_ITRIG_INMUX1_IDX 1u /*!< Inputmux DMA_ITRIG_INMUX register index 1 */
467 #define PINTSEL0_IDX 0u /*!< Inputmux PINTSEL register index 0 */
468 #define PINTSEL1_IDX 1u /*!< Inputmux PINTSEL register index 1 */
469 #define PINTSEL2_IDX 2u /*!< Inputmux PINTSEL register index 2 */
470 #define PINTSEL3_IDX 3u /*!< Inputmux PINTSEL register index 3 */
471 #define PIO011_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
472 #define PIO011_FILTEROFF_DISABLED 0x01u /*!< Controls input glitch filter.: Filter disabled. No input filtering is done. */
473 #define PIO011_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
474 #define PIO011_INVERT_DISABLED 0x00u /*!< Input polarity.: Disabled. Input function is not inverted. */
475 #define PIO011_OD_NORMAL 0x00u /*!< Controls open-drain mode.: Normal. Normal push-pull output */
476 #define PIO012_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
477 #define PIO012_FILTEROFF_DISABLED 0x01u /*!< Controls input glitch filter.: Filter disabled. No input filtering is done. */
478 #define PIO012_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
479 #define PIO012_INVERT_DISABLED 0x00u /*!< Input polarity.: Disabled. Input function is not inverted. */
480 #define PIO012_OD_NORMAL 0x00u /*!< Controls open-drain mode.: Normal. Normal push-pull output */
481 #define PIO013_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
482 #define PIO013_FILTEROFF_DISABLED 0x01u /*!< Controls input glitch filter.: Filter disabled. No input filtering is done. */
483 #define PIO013_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
484 #define PIO013_INVERT_DISABLED 0x00u /*!< Input polarity.: Disabled. Input function is not inverted. */
485 #define PIO013_OD_NORMAL 0x00u /*!< Controls open-drain mode.: Normal. Normal push-pull output */
486 #define PIO04_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
487 #define PIO04_FILTEROFF_DISABLED 0x01u /*!< Controls input glitch filter.: Filter disabled. No input filtering is done. */
488 #define PIO04_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
489 #define PIO04_INVERT_DISABLED 0x00u /*!< Input polarity.: Disabled. Input function is not inverted. */
490 #define PIO04_OD_NORMAL 0x00u /*!< Controls open-drain mode.: Normal. Normal push-pull output */
491 
492 /*
493  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
494 SPI3_DeinitPins:
495 - options: {coreID: core0, enableClock: 'true'}
496 - pin_list:
497  - {pin_num: '46', peripheral: ADC0, signal: 'TRIG, 0', pin_signal: PIO0_11/FC3_SCK/FC6_RXD_SDA_MOSI_DATA/CTIMER2_MAT1, mode: no_init, invert: disabled, glitch_filter: disabled,
498  slew_rate: no_init, open_drain: disabled}
499  - {pin_num: '47', peripheral: ADC0, signal: 'TRIG, 1', pin_signal: PIO0_12/FC3_RXD_SDA_MOSI/FC6_TXD_SCL_MISO_WS/CTIMER2_MAT3, mode: no_init, invert: disabled, glitch_filter: disabled,
500  slew_rate: no_init, open_drain: disabled}
501  - {pin_num: '48', peripheral: DMA0, signal: 'TRIG, 0', pin_signal: PIO0_13/FC3_TXD_SCL_MISO/SCT0_OUT4/CTIMER2_MAT0, mode: no_init, invert: disabled, glitch_filter: disabled,
502  slew_rate: no_init, open_drain: disabled}
503  - {pin_num: '38', peripheral: DMA0, signal: 'TRIG, 1', pin_signal: PIO0_4/FC0_SCK/FC3_SSEL2/CTIMER0_CAP2, mode: no_init, invert: disabled, glitch_filter: disabled,
504  slew_rate: no_init, open_drain: disabled}
505  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
506  */
507 
508 /*FUNCTION**********************************************************************
509  *
510  * Function Name : SPI3_DeinitPins
511  * Description : Configures pin routing and optionally pin electrical features.
512  *
513  *END**************************************************************************/
514 void SPI3_DeinitPins(void) { /* Function assigned for the Core #0 (ARM Cortex-M4) */
515  CLOCK_EnableClock(kCLOCK_InputMux); /* Enables the clock for the input muxes. 0 = Disable; 1 = Enable.: 0x01u */
516  CLOCK_EnableClock(kCLOCK_Iocon); /* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
517 
518  INPUTMUX_AttachSignal(INPUTMUX,DMA_ITRIG_INMUX0_IDX,kINPUTMUX_PinInt2ToDma); /* Pin interrupt 2 is selected as trigger input for DMA channel 0 */
519  INPUTMUX_AttachSignal(INPUTMUX,DMA_ITRIG_INMUX1_IDX,kINPUTMUX_PinInt3ToDma); /* Pin interrupt 3 is selected as trigger input for DMA channel 1 */
520  INPUTMUX_AttachSignal(INPUTMUX,PINTSEL0_IDX,kINPUTMUX_GpioPort0Pin11ToPintsel); /* PIO0_11 is selected for PINT input 0 */
521  INPUTMUX_AttachSignal(INPUTMUX,PINTSEL1_IDX,kINPUTMUX_GpioPort0Pin12ToPintsel); /* PIO0_12 is selected for PINT input 1 */
522  INPUTMUX_AttachSignal(INPUTMUX,PINTSEL2_IDX,kINPUTMUX_GpioPort0Pin13ToPintsel); /* PIO0_13 is selected for PINT input 2 */
523  INPUTMUX_AttachSignal(INPUTMUX,PINTSEL3_IDX,kINPUTMUX_GpioPort0Pin4ToPintsel); /* PIO0_4 is selected for PINT input 3 */
524  IOCON->PIO[0][11] = ((IOCON->PIO[0][11] &
525  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_INVERT_MASK | IOCON_PIO_DIGIMODE_MASK | IOCON_PIO_FILTEROFF_MASK | IOCON_PIO_OD_MASK))) /* Mask bits to zero which are setting */
526  | IOCON_PIO_FUNC(PIO011_FUNC_ALT0) /* Selects pin function.: PORT011 (pin 46) is configured as PIO0_11 */
527  | IOCON_PIO_INVERT(PIO011_INVERT_DISABLED) /* Input polarity.: Disabled. Input function is not inverted. */
528  | IOCON_PIO_DIGIMODE(PIO011_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
529  | IOCON_PIO_FILTEROFF(PIO011_FILTEROFF_DISABLED) /* Controls input glitch filter.: Filter disabled. No input filtering is done. */
530  | IOCON_PIO_OD(PIO011_OD_NORMAL) /* Controls open-drain mode.: Normal. Normal push-pull output */
531  );
532  IOCON->PIO[0][12] = ((IOCON->PIO[0][12] &
533  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_INVERT_MASK | IOCON_PIO_DIGIMODE_MASK | IOCON_PIO_FILTEROFF_MASK | IOCON_PIO_OD_MASK))) /* Mask bits to zero which are setting */
534  | IOCON_PIO_FUNC(PIO012_FUNC_ALT0) /* Selects pin function.: PORT012 (pin 47) is configured as PIO0_12 */
535  | IOCON_PIO_INVERT(PIO012_INVERT_DISABLED) /* Input polarity.: Disabled. Input function is not inverted. */
536  | IOCON_PIO_DIGIMODE(PIO012_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
537  | IOCON_PIO_FILTEROFF(PIO012_FILTEROFF_DISABLED) /* Controls input glitch filter.: Filter disabled. No input filtering is done. */
538  | IOCON_PIO_OD(PIO012_OD_NORMAL) /* Controls open-drain mode.: Normal. Normal push-pull output */
539  );
540  IOCON->PIO[0][13] = ((IOCON->PIO[0][13] &
541  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_INVERT_MASK | IOCON_PIO_DIGIMODE_MASK | IOCON_PIO_FILTEROFF_MASK | IOCON_PIO_OD_MASK))) /* Mask bits to zero which are setting */
542  | IOCON_PIO_FUNC(PIO013_FUNC_ALT0) /* Selects pin function.: PORT013 (pin 48) is configured as PIO0_13 */
543  | IOCON_PIO_INVERT(PIO013_INVERT_DISABLED) /* Input polarity.: Disabled. Input function is not inverted. */
544  | IOCON_PIO_DIGIMODE(PIO013_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
545  | IOCON_PIO_FILTEROFF(PIO013_FILTEROFF_DISABLED) /* Controls input glitch filter.: Filter disabled. No input filtering is done. */
546  | IOCON_PIO_OD(PIO013_OD_NORMAL) /* Controls open-drain mode.: Normal. Normal push-pull output */
547  );
548  IOCON->PIO[0][4] = ((IOCON->PIO[0][4] &
549  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_INVERT_MASK | IOCON_PIO_DIGIMODE_MASK | IOCON_PIO_FILTEROFF_MASK | IOCON_PIO_OD_MASK))) /* Mask bits to zero which are setting */
550  | IOCON_PIO_FUNC(PIO04_FUNC_ALT0) /* Selects pin function.: PORT04 (pin 38) is configured as PIO0_4 */
551  | IOCON_PIO_INVERT(PIO04_INVERT_DISABLED) /* Input polarity.: Disabled. Input function is not inverted. */
552  | IOCON_PIO_DIGIMODE(PIO04_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
553  | IOCON_PIO_FILTEROFF(PIO04_FILTEROFF_DISABLED) /* Controls input glitch filter.: Filter disabled. No input filtering is done. */
554  | IOCON_PIO_OD(PIO04_OD_NORMAL) /* Controls open-drain mode.: Normal. Normal push-pull output */
555  );
556 }
557 
558 
559 #define IOCON_PIO_DIGITAL_EN 0x80u /*!< Enables digital function */
560 #define IOCON_PIO_FUNC1 0x01u /*!< Selects pin function 1 */
561 #define IOCON_PIO_FUNC4 0x04u /*!< Selects pin function 4 */
562 #define IOCON_PIO_INPFILT_OFF 0x0100u /*!< Input filter disabled */
563 #define IOCON_PIO_INV_DI 0x00u /*!< Input function is not inverted */
564 #define IOCON_PIO_MODE_PULLUP 0x10u /*!< Selects pull-up function */
565 #define IOCON_PIO_OPENDRAIN_DI 0x00u /*!< Open drain is disabled */
566 #define IOCON_PIO_SLEW_STANDARD 0x00u /*!< Standard mode, output slew rate control is enabled */
567 #define PIN1_IDX 1u /*!< Pin number for pin 1 in a port 1 */
568 #define PIN18_IDX 18u /*!< Pin number for pin 18 in a port 0 */
569 #define PIN19_IDX 19u /*!< Pin number for pin 19 in a port 0 */
570 #define PIN20_IDX 20u /*!< Pin number for pin 20 in a port 0 */
571 #define PORT0_IDX 0u /*!< Port index */
572 #define PORT1_IDX 1u /*!< Port index */
573 
574 /*
575  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
576 SPI5_InitPins:
577 - options: {coreID: core0, enableClock: 'true'}
578 - pin_list:
579  - {pin_num: '15', peripheral: FLEXCOMM5, signal: SSEL2, pin_signal: PIO1_1/SWO/SCT0_OUT4/FC5_SSEL2/FC4_TXD_SCL_MISO/ADC0_4, mode: pullUp, invert: disabled, glitch_filter: disabled,
580  open_drain: disabled}
581  - {pin_num: '58', peripheral: FLEXCOMM5, signal: TXD_SCL_MISO, pin_signal: PIO0_18/FC5_TXD_SCL_MISO/SCT0_OUT0/CTIMER0_MAT0, mode: pullUp, invert: disabled, glitch_filter: disabled,
582  slew_rate: standard, open_drain: disabled}
583  - {pin_num: '59', peripheral: FLEXCOMM5, signal: SCK, pin_signal: PIO0_19/FC5_SCK/SCT0_OUT1/CTIMER0_MAT1, mode: pullUp, invert: disabled, glitch_filter: disabled,
584  slew_rate: standard, open_drain: disabled}
585  - {pin_num: '60', peripheral: FLEXCOMM5, signal: RXD_SDA_MOSI, pin_signal: PIO0_20/FC5_RXD_SDA_MOSI/FC0_SCK/CTIMER3_CAP0, mode: pullUp, invert: disabled, glitch_filter: disabled,
586  slew_rate: standard, open_drain: disabled}
587  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
588  */
589 
590 /*FUNCTION**********************************************************************
591  *
592  * Function Name : SPI5_InitPins
593  * Description : Configures pin routing and optionally pin electrical features.
594  *
595  *END**************************************************************************/
596 void SPI5_InitPins(void) { /* Function assigned for the Core #0 (ARM Cortex-M4) */
597  CLOCK_EnableClock(kCLOCK_Iocon); /* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
598 
599  const uint32_t port0_pin18_config = (
600  IOCON_PIO_FUNC1 | /* Pin is configured as FC5_TXD_SCL_MISO */
601  IOCON_PIO_MODE_PULLUP | /* Selects pull-up function */
602  IOCON_PIO_INV_DI | /* Input function is not inverted */
603  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
604  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
605  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
606  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
607  );
608  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN18_IDX, port0_pin18_config); /* PORT0 PIN18 (coords: 58) is configured as FC5_TXD_SCL_MISO */
609  const uint32_t port0_pin19_config = (
610  IOCON_PIO_FUNC1 | /* Pin is configured as FC5_SCK */
611  IOCON_PIO_MODE_PULLUP | /* Selects pull-up function */
612  IOCON_PIO_INV_DI | /* Input function is not inverted */
613  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
614  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
615  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
616  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
617  );
618  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN19_IDX, port0_pin19_config); /* PORT0 PIN19 (coords: 59) is configured as FC5_SCK */
619  const uint32_t port0_pin20_config = (
620  IOCON_PIO_FUNC1 | /* Pin is configured as FC5_RXD_SDA_MOSI */
621  IOCON_PIO_MODE_PULLUP | /* Selects pull-up function */
622  IOCON_PIO_INV_DI | /* Input function is not inverted */
623  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
624  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
625  IOCON_PIO_SLEW_STANDARD | /* Standard mode, output slew rate control is enabled */
626  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
627  );
628  IOCON_PinMuxSet(IOCON, PORT0_IDX, PIN20_IDX, port0_pin20_config); /* PORT0 PIN20 (coords: 60) is configured as FC5_RXD_SDA_MOSI */
629  const uint32_t port1_pin1_config = (
630  IOCON_PIO_FUNC4 | /* Pin is configured as FC5_SSEL2 */
631  IOCON_PIO_MODE_PULLUP | /* Selects pull-up function */
632  IOCON_PIO_INV_DI | /* Input function is not inverted */
633  IOCON_PIO_DIGITAL_EN | /* Enables digital function */
634  IOCON_PIO_INPFILT_OFF | /* Input filter disabled */
635  IOCON_PIO_OPENDRAIN_DI /* Open drain is disabled */
636  );
637  IOCON_PinMuxSet(IOCON, PORT1_IDX, PIN1_IDX, port1_pin1_config); /* PORT1 PIN1 (coords: 15) is configured as FC5_SSEL2 */
638 }
639 
640 
641 #define DMA_ITRIG_INMUX10_IDX 10u /*!< Inputmux DMA_ITRIG_INMUX register index 10 */
642 #define DMA_ITRIG_INMUX11_IDX 11u /*!< Inputmux DMA_ITRIG_INMUX register index 11 */
643 #define DMA_ITRIG_INMUX12_IDX 12u /*!< Inputmux DMA_ITRIG_INMUX register index 12 */
644 #define DMA_ITRIG_INMUX13_IDX 13u /*!< Inputmux DMA_ITRIG_INMUX register index 13 */
645 #define PINTSEL0_IDX 0u /*!< Inputmux PINTSEL register index 0 */
646 #define PINTSEL1_IDX 1u /*!< Inputmux PINTSEL register index 1 */
647 #define PINTSEL2_IDX 2u /*!< Inputmux PINTSEL register index 2 */
648 #define PINTSEL3_IDX 3u /*!< Inputmux PINTSEL register index 3 */
649 #define PIO018_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
650 #define PIO018_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
651 #define PIO019_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
652 #define PIO019_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
653 #define PIO020_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
654 #define PIO020_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
655 #define PIO11_DIGIMODE_DIGITAL 0x01u /*!< Select Analog/Digital mode.: Digital mode. */
656 #define PIO11_FUNC_ALT0 0x00u /*!< Selects pin function.: Alternative connection 0. */
657 
658 /*
659  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
660 SPI5_DeinitPins:
661 - options: {coreID: core0, enableClock: 'true'}
662 - pin_list:
663  - {pin_num: '15', peripheral: DMA0, signal: 'TRIG, 10', pin_signal: PIO1_1/SWO/SCT0_OUT4/FC5_SSEL2/FC4_TXD_SCL_MISO/ADC0_4, mode: no_init, invert: no_init, glitch_filter: no_init,
664  open_drain: no_init}
665  - {pin_num: '58', peripheral: DMA0, signal: 'TRIG, 11', pin_signal: PIO0_18/FC5_TXD_SCL_MISO/SCT0_OUT0/CTIMER0_MAT0, mode: no_init, invert: no_init, glitch_filter: no_init,
666  slew_rate: no_init, open_drain: no_init}
667  - {pin_num: '59', peripheral: DMA0, signal: 'TRIG, 12', pin_signal: PIO0_19/FC5_SCK/SCT0_OUT1/CTIMER0_MAT1, mode: no_init, invert: no_init, glitch_filter: no_init,
668  slew_rate: no_init, open_drain: no_init}
669  - {pin_num: '60', peripheral: DMA0, signal: 'TRIG, 13', pin_signal: PIO0_20/FC5_RXD_SDA_MOSI/FC0_SCK/CTIMER3_CAP0, mode: no_init, invert: no_init, glitch_filter: no_init,
670  slew_rate: no_init, open_drain: no_init}
671  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
672  */
673 
674 /*FUNCTION**********************************************************************
675  *
676  * Function Name : SPI5_DeinitPins
677  * Description : Configures pin routing and optionally pin electrical features.
678  *
679  *END**************************************************************************/
680 void SPI5_DeinitPins(void) { /* Function assigned for the Core #0 (ARM Cortex-M4) */
681  CLOCK_EnableClock(kCLOCK_InputMux); /* Enables the clock for the input muxes. 0 = Disable; 1 = Enable.: 0x01u */
682  CLOCK_EnableClock(kCLOCK_Iocon); /* Enables the clock for the IOCON block. 0 = Disable; 1 = Enable.: 0x01u */
683 
684  INPUTMUX_AttachSignal(INPUTMUX,DMA_ITRIG_INMUX10_IDX,kINPUTMUX_PinInt1ToDma); /* Pin interrupt 1 is selected as trigger input for DMA channel 10 */
685  INPUTMUX_AttachSignal(INPUTMUX,DMA_ITRIG_INMUX11_IDX,kINPUTMUX_PinInt2ToDma); /* Pin interrupt 2 is selected as trigger input for DMA channel 11 */
686  INPUTMUX_AttachSignal(INPUTMUX,DMA_ITRIG_INMUX12_IDX,kINPUTMUX_PinInt3ToDma); /* Pin interrupt 3 is selected as trigger input for DMA channel 12 */
687  INPUTMUX_AttachSignal(INPUTMUX,DMA_ITRIG_INMUX13_IDX,kINPUTMUX_PinInt0ToDma); /* Pin interrupt 0 is selected as trigger input for DMA channel 13 */
688  INPUTMUX_AttachSignal(INPUTMUX,PINTSEL0_IDX,kINPUTMUX_GpioPort0Pin20ToPintsel); /* PIO0_20 is selected for PINT input 0 */
689  INPUTMUX_AttachSignal(INPUTMUX,PINTSEL1_IDX,kINPUTMUX_GpioPort1Pin1ToPintsel); /* PIO1_1 is selected for PINT input 1 */
690  INPUTMUX_AttachSignal(INPUTMUX,PINTSEL2_IDX,kINPUTMUX_GpioPort0Pin18ToPintsel); /* PIO0_18 is selected for PINT input 2 */
691  INPUTMUX_AttachSignal(INPUTMUX,PINTSEL3_IDX,kINPUTMUX_GpioPort0Pin19ToPintsel); /* PIO0_19 is selected for PINT input 3 */
692  IOCON->PIO[0][18] = ((IOCON->PIO[0][18] &
693  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK))) /* Mask bits to zero which are setting */
694  | IOCON_PIO_FUNC(PIO018_FUNC_ALT0) /* Selects pin function.: PORT018 (pin 58) is configured as PIO0_18 */
695  | IOCON_PIO_DIGIMODE(PIO018_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
696  );
697  IOCON->PIO[0][19] = ((IOCON->PIO[0][19] &
698  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK))) /* Mask bits to zero which are setting */
699  | IOCON_PIO_FUNC(PIO019_FUNC_ALT0) /* Selects pin function.: PORT019 (pin 59) is configured as PIO0_19 */
700  | IOCON_PIO_DIGIMODE(PIO019_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
701  );
702  IOCON->PIO[0][20] = ((IOCON->PIO[0][20] &
703  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK))) /* Mask bits to zero which are setting */
704  | IOCON_PIO_FUNC(PIO020_FUNC_ALT0) /* Selects pin function.: PORT020 (pin 60) is configured as PIO0_20 */
705  | IOCON_PIO_DIGIMODE(PIO020_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
706  );
707  IOCON->PIO[1][1] = ((IOCON->PIO[1][1] &
708  (~(IOCON_PIO_FUNC_MASK | IOCON_PIO_DIGIMODE_MASK))) /* Mask bits to zero which are setting */
709  | IOCON_PIO_FUNC(PIO11_FUNC_ALT0) /* Selects pin function.: PORT11 (pin 15) is configured as PIO1_1 */
710  | IOCON_PIO_DIGIMODE(PIO11_DIGIMODE_DIGITAL) /* Select Analog/Digital mode.: Digital mode. */
711  );
712 }
713 
714 /*******************************************************************************
715  * EOF
716  ******************************************************************************/
#define PIO012_INVERT_DISABLED
Definition: pin_mux.c:479
#define IOCON_PIO_SLEW_STANDARD
Definition: pin_mux.c:566
#define PIN4_IDX
Definition: pin_mux.c:391
#define PIO018_DIGIMODE_DIGITAL
Definition: pin_mux.c:649
#define PIO00_DIGIMODE_DIGITAL
Definition: pin_mux.c:162
#define PIO026_FUNC_ALT0
Definition: pin_mux.c:257
#define PIO013_FILTEROFF_DISABLED
Definition: pin_mux.c:482
#define PIO020_DIGIMODE_DIGITAL
Definition: pin_mux.c:653
#define PIO04_OD_NORMAL
Definition: pin_mux.c:490
#define PIO013_FUNC_ALT0
Definition: pin_mux.c:483
#define PINTSEL1_IDX
Definition: pin_mux.c:646
#define IOCON_PIO_FUNC1
Definition: pin_mux.c:560
#define PINTSEL3_IDX
Definition: pin_mux.c:648
#define DMA_ITRIG_INMUX0_IDX
Definition: pin_mux.c:465
#define PIO11_FUNC_ALT0
Definition: pin_mux.c:656
#define PIO04_INVERT_DISABLED
Definition: pin_mux.c:489
#define PIO011_FILTEROFF_DISABLED
Definition: pin_mux.c:472
#define IOCON_PIO_INPFILT_OFF
Definition: pin_mux.c:562
#define IOCON_PIO_DIGITAL_EN
Definition: pin_mux.c:559
#define IOCON_PIO_I2CFILTER_EN
Definition: pin_mux.c:202
void SPI3_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:419
#define PIO012_FILTEROFF_DISABLED
Definition: pin_mux.c:477
#define PIN18_IDX
Definition: pin_mux.c:568
#define PIO04_FUNC_ALT0
Definition: pin_mux.c:488
#define IOCON_PIO_INV_DI
Definition: pin_mux.c:563
#define PIO01_FUNC_ALT0
Definition: pin_mux.c:165
void USART0_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:136
#define PIO011_DIGIMODE_DIGITAL
Definition: pin_mux.c:471
#define PIO025_DIGIMODE_DIGITAL
Definition: pin_mux.c:254
#define IOCON_PIO_I2CDRIVE_LOW
Definition: pin_mux.c:201
#define PIO012_DIGIMODE_DIGITAL
Definition: pin_mux.c:476
#define PIO018_FUNC_ALT0
Definition: pin_mux.c:650
#define PINTSEL0_IDX
Definition: pin_mux.c:645
#define PIO019_DIGIMODE_DIGITAL
Definition: pin_mux.c:651
#define DMA_ITRIG_INMUX12_IDX
Definition: pin_mux.c:643
#define PIO013_OD_NORMAL
Definition: pin_mux.c:485
#define PIO04_FILTEROFF_DISABLED
Definition: pin_mux.c:487
#define PIO013_INVERT_DISABLED
Definition: pin_mux.c:484
#define PIO019_FUNC_ALT0
Definition: pin_mux.c:652
#define PIO012_FUNC_ALT0
Definition: pin_mux.c:478
#define IOCON_PIO_FUNC4
Definition: pin_mux.c:561
void I2C4_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:275
void I2C4_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:228
#define PIO012_OD_NORMAL
Definition: pin_mux.c:480
#define PORT1_IDX
Definition: pin_mux.c:572
#define PIN26_IDX
Definition: pin_mux.c:207
#define IOCON_PIO_MODE_PULLUP
Definition: pin_mux.c:564
#define PIN1_IDX
Definition: pin_mux.c:567
#define DMA_ITRIG_INMUX13_IDX
Definition: pin_mux.c:644
void SPI5_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:596
#define PIO011_OD_NORMAL
Definition: pin_mux.c:475
#define PIO020_FUNC_ALT0
Definition: pin_mux.c:654
#define PIO11_DIGIMODE_DIGITAL
Definition: pin_mux.c:655
#define PIO04_DIGIMODE_DIGITAL
Definition: pin_mux.c:486
#define PIN0_IDX
Definition: pin_mux.c:114
void I2C5_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:320
#define PIO013_DIGIMODE_DIGITAL
Definition: pin_mux.c:481
#define IOCON_PIO_MODE_INACT
Definition: pin_mux.c:295
#define IOCON_PIO_I2CSLEW_I2C
Definition: pin_mux.c:203
#define PIN20_IDX
Definition: pin_mux.c:570
#define PIO011_FUNC_ALT0
Definition: pin_mux.c:473
void SPI5_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:680
#define PIN11_IDX
Definition: pin_mux.c:392
void USART0_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:183
#define IOCON_PIO_OPENDRAIN_DI
Definition: pin_mux.c:565
#define PIN19_IDX
Definition: pin_mux.c:569
#define PIO011_INVERT_DISABLED
Definition: pin_mux.c:474
#define DMA_ITRIG_INMUX11_IDX
Definition: pin_mux.c:642
#define PIN12_IDX
Definition: pin_mux.c:393
#define DMA_ITRIG_INMUX1_IDX
Definition: pin_mux.c:466
#define PINTSEL2_IDX
Definition: pin_mux.c:647
#define IOCON_PIO_FUNC2
Definition: pin_mux.c:385
void BOARD_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:73
#define PIO00_FUNC_ALT0
Definition: pin_mux.c:163
#define PIN25_IDX
Definition: pin_mux.c:206
void SPI3_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:514
#define DMA_ITRIG_INMUX10_IDX
Definition: pin_mux.c:641
#define PIO025_FUNC_ALT0
Definition: pin_mux.c:255
void I2C5_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:367
#define PIO026_DIGIMODE_DIGITAL
Definition: pin_mux.c:256
#define PORT0_IDX
Definition: pin_mux.c:571
#define PIO01_DIGIMODE_DIGITAL
Definition: pin_mux.c:164
#define PIN13_IDX
Definition: pin_mux.c:394