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 'MK22FN512xxx12'
40 - !!package 'MK22FN512VLH12'
41 - !!mcu_data 'ksdk2_0'
42 - !!processor_version '1.0.15'
43  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
44  */
45 
46 #include "fsl_common.h"
47 #include "fsl_port.h"
48 #include "pin_mux.h"
49 
50 
51 #define PIN0_IDX 0u /*!< Pin number for pin 0 in a port */
52 
53 #define PIN1_IDX 1u /*!< Pin number for pin 1 in a port */
54 
55 #define SOPT5_UART1TXSRC_UART_TX 0x00u /*!< UART 1 transmit data source select: UART1_TX pin */
56 
57 /*
58  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
59 BOARD_InitPins:
60 - options: {coreID: singlecore, enableClock: 'true'}
61 - pin_list:
62  - {pin_num: '1', peripheral: UART1, signal: TX, pin_signal: ADC1_SE4a/PTE0/CLKOUT32K/SPI1_PCS1/UART1_TX/I2C1_SDA/RTC_CLKOUT}
63  - {pin_num: '2', peripheral: UART1, signal: RX, pin_signal: ADC1_SE5a/PTE1/LLWU_P0/SPI1_SOUT/UART1_RX/I2C1_SCL/SPI1_SIN}
64  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
65  */
66 
67 /*FUNCTION**********************************************************************
68  *
69  * Function Name : BOARD_InitPins
70  * Description : Configures pin routing and optionally pin electrical features.
71  *
72  *END**************************************************************************/
73 void BOARD_InitPins(void) {
74  CLOCK_EnableClock(kCLOCK_PortE); /* Port E Clock Gate Control: Clock enabled */
75 
76  PORT_SetPinMux(PORTE, PIN0_IDX, kPORT_MuxAlt3); /* PORTE0 (pin 1) is configured as UART1_TX */
77  PORT_SetPinMux(PORTE, PIN1_IDX, kPORT_MuxAlt3); /* PORTE1 (pin 2) is configured as UART1_RX */
78  SIM->SOPT5 = ((SIM->SOPT5 &
79  (~(SIM_SOPT5_UART1TXSRC_MASK))) /* Mask bits to zero which are setting */
80  | SIM_SOPT5_UART1TXSRC(SOPT5_UART1TXSRC_UART_TX) /* UART 1 transmit data source select: UART1_TX pin */
81  );
82 }
83 
84 
85 
86 #define PIN2_IDX 2u /*!< Pin number for pin 2 in a port */
87 
88 #define PIN3_IDX 3u /*!< Pin number for pin 3 in a port */
89 
90 /*
91  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
92 I2C0_InitPins:
93 - options: {coreID: singlecore, enableClock: 'true'}
94 - pin_list:
95  - {pin_num: '37', peripheral: I2C0, signal: SCL, pin_signal: ADC0_SE12/PTB2/I2C0_SCL/UART0_RTS_b/FTM0_FLT3, slew_rate: fast, open_drain: enable, pull_select: up,
96  pull_enable: enable}
97  - {pin_num: '38', peripheral: I2C0, signal: SDA, pin_signal: ADC0_SE13/PTB3/I2C0_SDA/UART0_CTS_b/FTM0_FLT0, slew_rate: fast, open_drain: enable, pull_select: up,
98  pull_enable: enable}
99  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
100  */
101 
102 /*FUNCTION**********************************************************************
103  *
104  * Function Name : I2C0_InitPins
105  * Description : Configures pin routing and optionally pin electrical features.
106  *
107  *END**************************************************************************/
108 void I2C0_InitPins(void) {
109  CLOCK_EnableClock(kCLOCK_PortB); /* Port B Clock Gate Control: Clock enabled */
110 
111  const port_pin_config_t portb2_pin37_config = {
112  kPORT_PullUp, /* Internal pull-up resistor is enabled */
113  kPORT_FastSlewRate, /* Fast slew rate is configured */
114  kPORT_PassiveFilterDisable, /* Passive filter is disabled */
115  kPORT_OpenDrainEnable, /* Open drain is enabled */
116  kPORT_LowDriveStrength, /* Low drive strength is configured */
117  kPORT_MuxAlt2, /* Pin is configured as I2C0_SCL */
118  kPORT_UnlockRegister /* Pin Control Register fields [15:0] are not locked */
119  };
120  PORT_SetPinConfig(PORTB, PIN2_IDX, &portb2_pin37_config); /* PORTB2 (pin 37) is configured as I2C0_SCL */
121  const port_pin_config_t portb3_pin38_config = {
122  kPORT_PullUp, /* Internal pull-up resistor is enabled */
123  kPORT_FastSlewRate, /* Fast slew rate is configured */
124  kPORT_PassiveFilterDisable, /* Passive filter is disabled */
125  kPORT_OpenDrainEnable, /* Open drain is enabled */
126  kPORT_LowDriveStrength, /* Low drive strength is configured */
127  kPORT_MuxAlt2, /* Pin is configured as I2C0_SDA */
128  kPORT_UnlockRegister /* Pin Control Register fields [15:0] are not locked */
129  };
130  PORT_SetPinConfig(PORTB, PIN3_IDX, &portb3_pin38_config); /* PORTB3 (pin 38) is configured as I2C0_SDA */
131 }
132 
133 
134 
135 #define PIN2_IDX 2u /*!< Pin number for pin 2 in a port */
136 
137 #define PIN3_IDX 3u /*!< Pin number for pin 3 in a port */
138 /*
139  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
140 I2C0_DeinitPins:
141 - options: {coreID: singlecore, enableClock: 'false'}
142 - pin_list:
143  - {pin_num: '37', peripheral: ADC0, signal: 'SE, 12', pin_signal: ADC0_SE12/PTB2/I2C0_SCL/UART0_RTS_b/FTM0_FLT3}
144  - {pin_num: '38', peripheral: ADC0, signal: 'SE, 13', pin_signal: ADC0_SE13/PTB3/I2C0_SDA/UART0_CTS_b/FTM0_FLT0}
145  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
146  */
147 
148 /*FUNCTION**********************************************************************
149  *
150  * Function Name : I2C0_DeinitPins
151  * Description : Configures pin routing and optionally pin electrical features.
152  *
153  *END**************************************************************************/
154 void I2C0_DeinitPins(void) {
155  PORT_SetPinMux(PORTB, PIN2_IDX, kPORT_PinDisabledOrAnalog); /* PORTB2 (pin 37) is configured as ADC0_SE12 */
156  PORT_SetPinMux(PORTB, PIN3_IDX, kPORT_PinDisabledOrAnalog); /* PORTB3 (pin 38) is configured as ADC0_SE13 */
157 }
158 
159 
160 
161 #define PIN10_IDX 10u /*!< Pin number for pin 10 in a port */
162 
163 #define PIN11_IDX 11u /*!< Pin number for pin 11 in a port */
164 
165 /*
166  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
167 I2C1_InitPins:
168 - options: {coreID: singlecore, enableClock: 'true'}
169 - pin_list:
170  - {pin_num: '55', peripheral: I2C1, signal: SCL, pin_signal: ADC1_SE6b/PTC10/I2C1_SCL/FTM3_CH6/I2S0_RX_FS/FB_AD5, slew_rate: fast, open_drain: enable, pull_select: up,
171  pull_enable: enable}
172  - {pin_num: '56', peripheral: I2C1, signal: SDA, pin_signal: ADC1_SE7b/PTC11/LLWU_P11/I2C1_SDA/FTM3_CH7/FB_RW_b, slew_rate: fast, open_drain: enable, pull_select: up,
173  pull_enable: enable}
174  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
175  */
176 
177 /*FUNCTION**********************************************************************
178  *
179  * Function Name : I2C1_InitPins
180  * Description : Configures pin routing and optionally pin electrical features.
181  *
182  *END**************************************************************************/
183 void I2C1_InitPins(void) {
184  CLOCK_EnableClock(kCLOCK_PortC); /* Port C Clock Gate Control: Clock enabled */
185 
186  const port_pin_config_t portc10_pin55_config = {
187  kPORT_PullUp, /* Internal pull-up resistor is enabled */
188  kPORT_FastSlewRate, /* Fast slew rate is configured */
189  kPORT_PassiveFilterDisable, /* Passive filter is disabled */
190  kPORT_OpenDrainEnable, /* Open drain is enabled */
191  kPORT_LowDriveStrength, /* Low drive strength is configured */
192  kPORT_MuxAlt2, /* Pin is configured as I2C1_SCL */
193  kPORT_UnlockRegister /* Pin Control Register fields [15:0] are not locked */
194  };
195  PORT_SetPinConfig(PORTC, PIN10_IDX, &portc10_pin55_config); /* PORTC10 (pin 55) is configured as I2C1_SCL */
196  const port_pin_config_t portc11_pin56_config = {
197  kPORT_PullUp, /* Internal pull-up resistor is enabled */
198  kPORT_FastSlewRate, /* Fast slew rate is configured */
199  kPORT_PassiveFilterDisable, /* Passive filter is disabled */
200  kPORT_OpenDrainEnable, /* Open drain is enabled */
201  kPORT_LowDriveStrength, /* Low drive strength is configured */
202  kPORT_MuxAlt2, /* Pin is configured as I2C1_SDA */
203  kPORT_UnlockRegister /* Pin Control Register fields [15:0] are not locked */
204  };
205  PORT_SetPinConfig(PORTC, PIN11_IDX, &portc11_pin56_config); /* PORTC11 (pin 56) is configured as I2C1_SDA */
206 }
207 
208 
209 
210 #define PIN10_IDX 10u /*!< Pin number for pin 10 in a port */
211 
212 #define PIN11_IDX 11u /*!< Pin number for pin 11 in a port */
213 /*
214  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
215 I2C1_DeinitPins:
216 - options: {coreID: singlecore, enableClock: 'true'}
217 - pin_list:
218  - {pin_num: '55', peripheral: ADC1, signal: 'SE, 6b', pin_signal: ADC1_SE6b/PTC10/I2C1_SCL/FTM3_CH6/I2S0_RX_FS/FB_AD5}
219  - {pin_num: '56', peripheral: ADC1, signal: 'SE, 7b', pin_signal: ADC1_SE7b/PTC11/LLWU_P11/I2C1_SDA/FTM3_CH7/FB_RW_b}
220  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
221  */
222 
223 /*FUNCTION**********************************************************************
224  *
225  * Function Name : I2C1_DeinitPins
226  * Description : Configures pin routing and optionally pin electrical features.
227  *
228  *END**************************************************************************/
229 void I2C1_DeinitPins(void) {
230  CLOCK_EnableClock(kCLOCK_PortC); /* Port C Clock Gate Control: Clock enabled */
231 
232  PORT_SetPinMux(PORTC, PIN10_IDX, kPORT_PinDisabledOrAnalog); /* PORTC10 (pin 55) is configured as ADC1_SE6b */
233  PORT_SetPinMux(PORTC, PIN11_IDX, kPORT_PinDisabledOrAnalog); /* PORTC11 (pin 56) is configured as ADC1_SE7b */
234 }
235 
236 
237 
238 #define PIN5_IDX 5u /*!< Pin number for pin 5 in a port */
239 
240 #define PIN6_IDX 6u /*!< Pin number for pin 6 in a port */
241 
242 #define PIN7_IDX 7u /*!< Pin number for pin 7 in a port */
243 
244 /*
245  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
246 DSPI0_InitPins:
247 - options: {coreID: singlecore, enableClock: 'true'}
248 - pin_list:
249  - {pin_num: '50', peripheral: SPI0, signal: SCK, pin_signal: PTC5/LLWU_P9/SPI0_SCK/LPTMR0_ALT2/I2S0_RXD0/FB_AD10/CMP0_OUT/FTM0_CH2}
250  - {pin_num: '51', peripheral: SPI0, signal: SOUT, pin_signal: CMP0_IN0/PTC6/LLWU_P10/SPI0_SOUT/PDB0_EXTRG/I2S0_RX_BCLK/FB_AD9/I2S0_MCLK}
251  - {pin_num: '52', peripheral: SPI0, signal: SIN, pin_signal: CMP0_IN1/PTC7/SPI0_SIN/USB_SOF_OUT/I2S0_RX_FS/FB_AD8}
252  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
253  */
254 
255 /*FUNCTION**********************************************************************
256  *
257  * Function Name : DSPI0_InitPins
258  * Description : Configures pin routing and optionally pin electrical features.
259  *
260  *END**************************************************************************/
261 void DSPI0_InitPins(void) {
262  CLOCK_EnableClock(kCLOCK_PortC); /* Port C Clock Gate Control: Clock enabled */
263 
264  PORT_SetPinMux(PORTC, PIN5_IDX, kPORT_MuxAlt2); /* PORTC5 (pin 50) is configured as SPI0_SCK */
265  PORT_SetPinMux(PORTC, PIN6_IDX, kPORT_MuxAlt2); /* PORTC6 (pin 51) is configured as SPI0_SOUT */
266  PORT_SetPinMux(PORTC, PIN7_IDX, kPORT_MuxAlt2); /* PORTC7 (pin 52) is configured as SPI0_SIN */
267 }
268 
269 
270 
271 #define PIN5_IDX 5u /*!< Pin number for pin 5 in a port */
272 
273 #define PIN6_IDX 6u /*!< Pin number for pin 6 in a port */
274 
275 #define PIN7_IDX 7u /*!< Pin number for pin 7 in a port */
276 /*
277  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
278 DSPI0_DeinitPins:
279 - options: {coreID: singlecore, enableClock: 'false'}
280 - pin_list:
281  - {pin_num: '50', peripheral: n/a, signal: disabled, pin_signal: PTC5/LLWU_P9/SPI0_SCK/LPTMR0_ALT2/I2S0_RXD0/FB_AD10/CMP0_OUT/FTM0_CH2}
282  - {pin_num: '51', peripheral: CMP0, signal: 'IN, 0', pin_signal: CMP0_IN0/PTC6/LLWU_P10/SPI0_SOUT/PDB0_EXTRG/I2S0_RX_BCLK/FB_AD9/I2S0_MCLK}
283  - {pin_num: '52', peripheral: CMP0, signal: 'IN, 1', pin_signal: CMP0_IN1/PTC7/SPI0_SIN/USB_SOF_OUT/I2S0_RX_FS/FB_AD8}
284  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
285  */
286 
287 /*FUNCTION**********************************************************************
288  *
289  * Function Name : DSPI0_DeinitPins
290  * Description : Configures pin routing and optionally pin electrical features.
291  *
292  *END**************************************************************************/
293 void DSPI0_DeinitPins(void) {
294  PORT_SetPinMux(PORTC, PIN5_IDX, kPORT_PinDisabledOrAnalog); /* PORTC5 (pin 50) is disabled */
295  PORT_SetPinMux(PORTC, PIN6_IDX, kPORT_PinDisabledOrAnalog); /* PORTC6 (pin 51) is configured as CMP0_IN0 */
296  PORT_SetPinMux(PORTC, PIN7_IDX, kPORT_PinDisabledOrAnalog); /* PORTC7 (pin 52) is configured as CMP0_IN1 */
297 }
298 
299 
300 
301 #define PIN5_IDX 5u /*!< Pin number for pin 5 in a port */
302 
303 #define PIN6_IDX 6u /*!< Pin number for pin 6 in a port */
304 
305 #define PIN7_IDX 7u /*!< Pin number for pin 7 in a port */
306 /*
307  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
308 DSPI1_InitPins:
309 - options: {coreID: singlecore, enableClock: 'true'}
310 - pin_list:
311  - {pin_num: '62', peripheral: SPI1, signal: SCK, pin_signal: ADC0_SE6b/PTD5/SPI0_PCS2/UART0_CTS_b/FTM0_CH5/FB_AD1/EWM_OUT_b/SPI1_SCK}
312  - {pin_num: '63', peripheral: SPI1, signal: SOUT, pin_signal: ADC0_SE7b/PTD6/LLWU_P15/SPI0_PCS3/UART0_RX/FTM0_CH6/FB_AD0/FTM0_FLT0/SPI1_SOUT}
313  - {pin_num: '64', peripheral: SPI1, signal: SIN, pin_signal: PTD7/UART0_TX/FTM0_CH7/FTM0_FLT1/SPI1_SIN}
314  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
315  */
316 
317 /*FUNCTION**********************************************************************
318  *
319  * Function Name : DSPI1_InitPins
320  * Description : Configures pin routing and optionally pin electrical features.
321  *
322  *END**************************************************************************/
323 void DSPI1_InitPins(void) {
324  CLOCK_EnableClock(kCLOCK_PortD); /* Port D Clock Gate Control: Clock enabled */
325 
326  PORT_SetPinMux(PORTD, PIN5_IDX, kPORT_MuxAlt7); /* PORTD5 (pin 62) is configured as SPI1_SCK */
327  PORT_SetPinMux(PORTD, PIN6_IDX, kPORT_MuxAlt7); /* PORTD6 (pin 63) is configured as SPI1_SOUT */
328  PORT_SetPinMux(PORTD, PIN7_IDX, kPORT_MuxAlt7); /* PORTD7 (pin 64) is configured as SPI1_SIN */
329 }
330 
331 
332 
333 #define PIN5_IDX 5u /*!< Pin number for pin 5 in a port */
334 
335 #define PIN6_IDX 6u /*!< Pin number for pin 6 in a port */
336 
337 #define PIN7_IDX 7u /*!< Pin number for pin 7 in a port */
338 /*
339  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
340 DSPI1_DeinitPins:
341 - options: {coreID: singlecore, enableClock: 'false'}
342 - pin_list:
343  - {pin_num: '62', peripheral: ADC0, signal: 'SE, 6b', pin_signal: ADC0_SE6b/PTD5/SPI0_PCS2/UART0_CTS_b/FTM0_CH5/FB_AD1/EWM_OUT_b/SPI1_SCK}
344  - {pin_num: '63', peripheral: ADC0, signal: 'SE, 7b', pin_signal: ADC0_SE7b/PTD6/LLWU_P15/SPI0_PCS3/UART0_RX/FTM0_CH6/FB_AD0/FTM0_FLT0/SPI1_SOUT}
345  - {pin_num: '64', peripheral: n/a, signal: disabled, pin_signal: PTD7/UART0_TX/FTM0_CH7/FTM0_FLT1/SPI1_SIN}
346  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
347  */
348 
349 /*FUNCTION**********************************************************************
350  *
351  * Function Name : DSPI1_DeinitPins
352  * Description : Configures pin routing and optionally pin electrical features.
353  *
354  *END**************************************************************************/
355 void DSPI1_DeinitPins(void) {
356  PORT_SetPinMux(PORTD, PIN5_IDX, kPORT_PinDisabledOrAnalog); /* PORTD5 (pin 62) is configured as ADC0_SE6b */
357  PORT_SetPinMux(PORTD, PIN6_IDX, kPORT_PinDisabledOrAnalog); /* PORTD6 (pin 63) is configured as ADC0_SE7b */
358  PORT_SetPinMux(PORTD, PIN7_IDX, kPORT_PinDisabledOrAnalog); /* PORTD7 (pin 64) is disabled */
359 }
360 
361 
362 
363 #define PIN1_IDX 1u /*!< Pin number for pin 1 in a port */
364 
365 #define PIN2_IDX 2u /*!< Pin number for pin 2 in a port */
366 
367 #define SOPT5_UART0TXSRC_UART_TX 0x00u /*!< UART 0 transmit data source select: UART0_TX pin */
368 
369 /*
370  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
371 UART0_InitPins:
372 - options: {coreID: singlecore, enableClock: 'true'}
373 - pin_list:
374  - {pin_num: '23', peripheral: UART0, signal: RX, pin_signal: PTA1/UART0_RX/FTM0_CH6/JTAG_TDI/EZP_DI}
375  - {pin_num: '24', peripheral: UART0, signal: TX, pin_signal: PTA2/UART0_TX/FTM0_CH7/JTAG_TDO/TRACE_SWO/EZP_DO}
376  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
377  */
378 
379 /*FUNCTION**********************************************************************
380  *
381  * Function Name : UART0_InitPins
382  * Description : Configures pin routing and optionally pin electrical features.
383  *
384  *END**************************************************************************/
385 void UART0_InitPins(void) {
386  CLOCK_EnableClock(kCLOCK_PortA); /* Port A Clock Gate Control: Clock enabled */
387 
388  PORT_SetPinMux(PORTA, PIN1_IDX, kPORT_MuxAlt2); /* PORTA1 (pin 23) is configured as UART0_RX */
389  PORT_SetPinMux(PORTA, PIN2_IDX, kPORT_MuxAlt2); /* PORTA2 (pin 24) is configured as UART0_TX */
390  SIM->SOPT5 = ((SIM->SOPT5 &
391  (~(SIM_SOPT5_UART0TXSRC_MASK))) /* Mask bits to zero which are setting */
392  | SIM_SOPT5_UART0TXSRC(SOPT5_UART0TXSRC_UART_TX) /* UART 0 transmit data source select: UART0_TX pin */
393  );
394 }
395 
396 
397 
398 #define PIN1_IDX 1u /*!< Pin number for pin 1 in a port */
399 
400 #define PIN2_IDX 2u /*!< Pin number for pin 2 in a port */
401 /*
402  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
403 UART0_DeinitPins:
404 - options: {coreID: singlecore, enableClock: 'false'}
405 - pin_list:
406  - {pin_num: '23', peripheral: n/a, signal: disabled, pin_signal: PTA1/UART0_RX/FTM0_CH6/JTAG_TDI/EZP_DI}
407  - {pin_num: '24', peripheral: n/a, signal: disabled, pin_signal: PTA2/UART0_TX/FTM0_CH7/JTAG_TDO/TRACE_SWO/EZP_DO}
408  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
409  */
410 
411 /*FUNCTION**********************************************************************
412  *
413  * Function Name : UART0_DeinitPins
414  * Description : Configures pin routing and optionally pin electrical features.
415  *
416  *END**************************************************************************/
417 void UART0_DeinitPins(void) {
418  PORT_SetPinMux(PORTA, PIN1_IDX, kPORT_PinDisabledOrAnalog); /* PORTA1 (pin 23) is disabled */
419  PORT_SetPinMux(PORTA, PIN2_IDX, kPORT_PinDisabledOrAnalog); /* PORTA2 (pin 24) is disabled */
420 }
421 
422 
423 
424 #define PIN0_IDX 0u /*!< Pin number for pin 0 in a port */
425 
426 #define PIN1_IDX 1u /*!< Pin number for pin 1 in a port */
427 
428 #define SOPT5_UART1TXSRC_UART_TX 0x00u /*!< UART 1 transmit data source select: UART1_TX pin */
429 /*
430  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
431 UART1_InitPins:
432 - options: {coreID: singlecore, enableClock: 'true'}
433 - pin_list:
434  - {pin_num: '1', peripheral: UART1, signal: TX, pin_signal: ADC1_SE4a/PTE0/CLKOUT32K/SPI1_PCS1/UART1_TX/I2C1_SDA/RTC_CLKOUT}
435  - {pin_num: '2', peripheral: UART1, signal: RX, pin_signal: ADC1_SE5a/PTE1/LLWU_P0/SPI1_SOUT/UART1_RX/I2C1_SCL/SPI1_SIN}
436  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
437  */
438 
439 /*FUNCTION**********************************************************************
440  *
441  * Function Name : UART1_InitPins
442  * Description : Configures pin routing and optionally pin electrical features.
443  *
444  *END**************************************************************************/
445 void UART1_InitPins(void) {
446  CLOCK_EnableClock(kCLOCK_PortE); /* Port E Clock Gate Control: Clock enabled */
447 
448  PORT_SetPinMux(PORTE, PIN0_IDX, kPORT_MuxAlt3); /* PORTE0 (pin 1) is configured as UART1_TX */
449  PORT_SetPinMux(PORTE, PIN1_IDX, kPORT_MuxAlt3); /* PORTE1 (pin 2) is configured as UART1_RX */
450  SIM->SOPT5 = ((SIM->SOPT5 &
451  (~(SIM_SOPT5_UART1TXSRC_MASK))) /* Mask bits to zero which are setting */
452  | SIM_SOPT5_UART1TXSRC(SOPT5_UART1TXSRC_UART_TX) /* UART 1 transmit data source select: UART1_TX pin */
453  );
454 }
455 
456 
457 
458 #define PIN0_IDX 0u /*!< Pin number for pin 0 in a port */
459 
460 #define PIN1_IDX 1u /*!< Pin number for pin 1 in a port */
461 /*
462  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
463 UART1_DeinitPins:
464 - options: {coreID: singlecore, enableClock: 'false'}
465 - pin_list:
466  - {pin_num: '1', peripheral: ADC1, signal: 'SE, 4a', pin_signal: ADC1_SE4a/PTE0/CLKOUT32K/SPI1_PCS1/UART1_TX/I2C1_SDA/RTC_CLKOUT}
467  - {pin_num: '2', peripheral: ADC1, signal: 'SE, 5a', pin_signal: ADC1_SE5a/PTE1/LLWU_P0/SPI1_SOUT/UART1_RX/I2C1_SCL/SPI1_SIN}
468  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
469  */
470 
471 /*FUNCTION**********************************************************************
472  *
473  * Function Name : UART1_DeinitPins
474  * Description : Configures pin routing and optionally pin electrical features.
475  *
476  *END**************************************************************************/
477 void UART1_DeinitPins(void) {
478  PORT_SetPinMux(PORTE, PIN0_IDX, kPORT_PinDisabledOrAnalog); /* PORTE0 (pin 1) is configured as ADC1_SE4a */
479  PORT_SetPinMux(PORTE, PIN1_IDX, kPORT_PinDisabledOrAnalog); /* PORTE1 (pin 2) is configured as ADC1_SE5a */
480 }
481 
482 
483 
484 #define PIN2_IDX 2u /*!< Pin number for pin 2 in a port */
485 
486 #define PIN3_IDX 3u /*!< Pin number for pin 3 in a port */
487 /*
488  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
489 UART2_InitPins:
490 - options: {coreID: singlecore, enableClock: 'true'}
491 - pin_list:
492  - {pin_num: '59', peripheral: UART2, signal: RX, pin_signal: PTD2/LLWU_P13/SPI0_SOUT/UART2_RX/FTM3_CH2/FB_AD4/LPUART0_RX/I2C0_SCL}
493  - {pin_num: '60', peripheral: UART2, signal: TX, pin_signal: PTD3/SPI0_SIN/UART2_TX/FTM3_CH3/FB_AD3/LPUART0_TX/I2C0_SDA}
494  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
495  */
496 
497 /*FUNCTION**********************************************************************
498  *
499  * Function Name : UART2_InitPins
500  * Description : Configures pin routing and optionally pin electrical features.
501  *
502  *END**************************************************************************/
503 void UART2_InitPins(void) {
504  CLOCK_EnableClock(kCLOCK_PortD); /* Port D Clock Gate Control: Clock enabled */
505 
506  PORT_SetPinMux(PORTD, PIN2_IDX, kPORT_MuxAlt3); /* PORTD2 (pin 59) is configured as UART2_RX */
507  PORT_SetPinMux(PORTD, PIN3_IDX, kPORT_MuxAlt3); /* PORTD3 (pin 60) is configured as UART2_TX */
508 }
509 
510 
511 
512 #define PIN2_IDX 2u /*!< Pin number for pin 2 in a port */
513 
514 #define PIN3_IDX 3u /*!< Pin number for pin 3 in a port */
515 /*
516  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
517 UART2_DeinitPins:
518 - options: {coreID: singlecore, enableClock: 'false'}
519 - pin_list:
520  - {pin_num: '59', peripheral: n/a, signal: disabled, pin_signal: PTD2/LLWU_P13/SPI0_SOUT/UART2_RX/FTM3_CH2/FB_AD4/LPUART0_RX/I2C0_SCL}
521  - {pin_num: '60', peripheral: n/a, signal: disabled, pin_signal: PTD3/SPI0_SIN/UART2_TX/FTM3_CH3/FB_AD3/LPUART0_TX/I2C0_SDA}
522  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
523  */
524 
525 /*FUNCTION**********************************************************************
526  *
527  * Function Name : UART2_DeinitPins
528  * Description : Configures pin routing and optionally pin electrical features.
529  *
530  *END**************************************************************************/
531 void UART2_DeinitPins(void) {
532  PORT_SetPinMux(PORTD, PIN2_IDX, kPORT_PinDisabledOrAnalog); /* PORTD2 (pin 59) is disabled */
533  PORT_SetPinMux(PORTD, PIN3_IDX, kPORT_PinDisabledOrAnalog); /* PORTD3 (pin 60) is disabled */
534 }
535 
536 /*******************************************************************************
537  * EOF
538  ******************************************************************************/
void DSPI1_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:680
void I2C0_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:438
void UART2_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:255
void UART0_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:139
void I2C0_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:392
#define PIN7_IDX
Definition: pin_mux.c:337
void UART1_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:168
void I2C1_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:513
#define PIN6_IDX
Definition: pin_mux.c:335
void UART0_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:107
#define PIN1_IDX
Definition: pin_mux.c:460
void DSPI0_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:617
#define SOPT5_UART0TXSRC_UART_TX
Definition: pin_mux.c:367
#define PIN5_IDX
Definition: pin_mux.c:333
void UART2_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:227
void DSPI1_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:712
void UART1_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:200
#define PIN10_IDX
Definition: pin_mux.c:210
void DSPI0_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:649
#define PIN2_IDX
Definition: pin_mux.c:512
#define PIN0_IDX
Definition: pin_mux.c:458
#define PIN11_IDX
Definition: pin_mux.c:212
void I2C1_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:467
#define SOPT5_UART1TXSRC_UART_TX
Definition: pin_mux.c:428
void BOARD_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:73
#define PIN3_IDX
Definition: pin_mux.c:514