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 'MKL27Z64xxx4'
40 - !!package 'MKL27Z64VLH4'
41 - !!mcu_data 'ksdk2_0'
42 - !!processor_version '1.0.9'
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 PIN1_IDX 1u /*!< Pin number for pin 1 in a port */
52 
53 #define PIN2_IDX 2u /*!< Pin number for pin 2 in a port */
54 
55 #define SOPT5_LPUART0RXSRC_LPUART_RX 0x00u /*!< LPUART0 Receive Data Source Select: LPUART_RX pin */
56 
57 #define SOPT5_LPUART0TXSRC_LPUART_TX 0x00u /*!< LPUART0 Transmit Data Source Select: LPUART0_TX pin */
58 
59 /*
60  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
61 BOARD_InitPins:
62 - options: {coreID: singlecore, enableClock: 'true'}
63 - pin_list:
64  - {pin_num: '23', peripheral: LPUART0, signal: RX, pin_signal: PTA1/LPUART0_RX/TPM2_CH0}
65  - {pin_num: '24', peripheral: LPUART0, signal: TX, pin_signal: PTA2/LPUART0_TX/TPM2_CH1}
66  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
67  */
68 
69 /*FUNCTION**********************************************************************
70  *
71  * Function Name : BOARD_InitPins
72  * Description : Configures pin routing and optionally pin electrical features.
73  *
74  *END**************************************************************************/
75 void BOARD_InitPins(void) {
76  CLOCK_EnableClock(kCLOCK_PortA); /* Port A Clock Gate Control: Clock enabled */
77 
78  PORT_SetPinMux(PORTA, PIN1_IDX, kPORT_MuxAlt2); /* PORTA1 (pin 23) is configured as LPUART0_RX */
79  PORT_SetPinMux(PORTA, PIN2_IDX, kPORT_MuxAlt2); /* PORTA2 (pin 24) is configured as LPUART0_TX */
80  SIM->SOPT5 = ((SIM->SOPT5 &
81  (~(SIM_SOPT5_LPUART0TXSRC_MASK | SIM_SOPT5_LPUART0RXSRC_MASK))) /* Mask bits to zero which are setting */
82  | SIM_SOPT5_LPUART0TXSRC(SOPT5_LPUART0TXSRC_LPUART_TX) /* LPUART0 Transmit Data Source Select: LPUART0_TX pin */
83  | SIM_SOPT5_LPUART0RXSRC(SOPT5_LPUART0RXSRC_LPUART_RX) /* LPUART0 Receive Data Source Select: LPUART_RX pin */
84  );
85 }
86 
87 
88 
89 #define PIN0_IDX 0u /*!< Pin number for pin 0 in a port */
90 
91 #define PIN1_IDX 1u /*!< Pin number for pin 1 in a port */
92 
93 /*
94  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
95 I2C0_InitPins:
96 - options: {coreID: singlecore, enableClock: 'true'}
97 - pin_list:
98  - {pin_num: '35', peripheral: I2C0, signal: SCL, pin_signal: ADC0_SE8/PTB0/LLWU_P5/I2C0_SCL/TPM1_CH0/SPI1_MOSI/SPI1_MISO, pull_enable: no_init}
99  - {pin_num: '36', peripheral: I2C0, signal: SDA, pin_signal: ADC0_SE9/PTB1/I2C0_SDA/TPM1_CH1/SPI1_MISO/SPI1_MOSI, pull_enable: no_init}
100  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
101  */
102 
103 /*FUNCTION**********************************************************************
104  *
105  * Function Name : I2C0_InitPins
106  * Description : Configures pin routing and optionally pin electrical features.
107  *
108  *END**************************************************************************/
109 void I2C0_InitPins(void) {
110  CLOCK_EnableClock(kCLOCK_PortB); /* Port B Clock Gate Control: Clock enabled */
111 
112  PORT_SetPinMux(PORTB, PIN0_IDX, kPORT_MuxAlt2); /* PORTB0 (pin 35) is configured as I2C0_SCL */
113  PORT_SetPinMux(PORTB, PIN1_IDX, kPORT_MuxAlt2); /* PORTB1 (pin 36) is configured as I2C0_SDA */
114 }
115 
116 
117 
118 #define PIN0_IDX 0u /*!< Pin number for pin 0 in a port */
119 
120 #define PIN1_IDX 1u /*!< Pin number for pin 1 in a port */
121 /*
122  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
123 I2C0_DeinitPins:
124 - options: {coreID: singlecore, enableClock: 'true'}
125 - pin_list:
126  - {pin_num: '35', peripheral: ADC0, signal: 'SE, 8', pin_signal: ADC0_SE8/PTB0/LLWU_P5/I2C0_SCL/TPM1_CH0/SPI1_MOSI/SPI1_MISO}
127  - {pin_num: '36', peripheral: ADC0, signal: 'SE, 9', pin_signal: ADC0_SE9/PTB1/I2C0_SDA/TPM1_CH1/SPI1_MISO/SPI1_MOSI}
128  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
129  */
130 
131 /*FUNCTION**********************************************************************
132  *
133  * Function Name : I2C0_DeinitPins
134  * Description : Configures pin routing and optionally pin electrical features.
135  *
136  *END**************************************************************************/
137 void I2C0_DeinitPins(void) {
138  CLOCK_EnableClock(kCLOCK_PortB); /* Port B Clock Gate Control: Clock enabled */
139 
140  PORT_SetPinMux(PORTB, PIN0_IDX, kPORT_PinDisabledOrAnalog); /* PORTB0 (pin 35) is configured as ADC0_SE8 */
141  PORT_SetPinMux(PORTB, PIN1_IDX, kPORT_PinDisabledOrAnalog); /* PORTB1 (pin 36) is configured as ADC0_SE9 */
142 }
143 
144 
145 
146 #define PIN6_IDX 6u /*!< Pin number for pin 6 in a port */
147 
148 #define PIN7_IDX 7u /*!< Pin number for pin 7 in a port */
149 
150 /*
151  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
152 I2C1_InitPins:
153 - options: {coreID: singlecore, enableClock: 'true'}
154 - pin_list:
155  - {pin_num: '63', peripheral: I2C1, signal: SDA, pin_signal: ADC0_SE7b/PTD6/LLWU_P15/SPI1_MOSI/LPUART0_RX/I2C1_SDA/SPI1_MISO/FXIO0_D6}
156  - {pin_num: '64', peripheral: I2C1, signal: SCL, pin_signal: PTD7/SPI1_MISO/LPUART0_TX/I2C1_SCL/SPI1_MOSI/FXIO0_D7}
157  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
158  */
159 
160 /*FUNCTION**********************************************************************
161  *
162  * Function Name : I2C1_InitPins
163  * Description : Configures pin routing and optionally pin electrical features.
164  *
165  *END**************************************************************************/
166 void I2C1_InitPins(void) {
167  CLOCK_EnableClock(kCLOCK_PortD); /* Port D Clock Gate Control: Clock enabled */
168 
169  PORT_SetPinMux(PORTD, PIN6_IDX, kPORT_MuxAlt4); /* PORTD6 (pin 63) is configured as I2C1_SDA */
170  PORT_SetPinMux(PORTD, PIN7_IDX, kPORT_MuxAlt4); /* PORTD7 (pin 64) is configured as I2C1_SCL */
171 }
172 
173 
174 
175 #define PIN6_IDX 6u /*!< Pin number for pin 6 in a port */
176 
177 #define PIN7_IDX 7u /*!< Pin number for pin 7 in a port */
178 /*
179  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
180 I2C1_DeinitPins:
181 - options: {coreID: singlecore, enableClock: 'false'}
182 - pin_list:
183  - {pin_num: '63', peripheral: ADC0, signal: 'SE, 7b', pin_signal: ADC0_SE7b/PTD6/LLWU_P15/SPI1_MOSI/LPUART0_RX/I2C1_SDA/SPI1_MISO/FXIO0_D6}
184  - {pin_num: '64', peripheral: n/a, signal: disabled, pin_signal: PTD7/SPI1_MISO/LPUART0_TX/I2C1_SCL/SPI1_MOSI/FXIO0_D7}
185  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
186  */
187 
188 /*FUNCTION**********************************************************************
189  *
190  * Function Name : I2C1_DeinitPins
191  * Description : Configures pin routing and optionally pin electrical features.
192  *
193  *END**************************************************************************/
194 void I2C1_DeinitPins(void) {
195  PORT_SetPinMux(PORTD, PIN6_IDX, kPORT_PinDisabledOrAnalog); /* PORTD6 (pin 63) is configured as ADC0_SE7b */
196  PORT_SetPinMux(PORTD, PIN7_IDX, kPORT_PinDisabledOrAnalog); /* PORTD7 (pin 64) is disabled */
197 }
198 
199 
200 
201 #define PIN5_IDX 5u /*!< Pin number for pin 5 in a port */
202 
203 #define PIN6_IDX 6u /*!< Pin number for pin 6 in a port */
204 
205 #define PIN7_IDX 7u /*!< Pin number for pin 7 in a port */
206 
207 /*
208  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
209 SPI0_InitPins:
210 - options: {coreID: singlecore, enableClock: 'true'}
211 - pin_list:
212  - {pin_num: '50', peripheral: SPI0, signal: SCK, pin_signal: PTC5/LLWU_P9/SPI0_SCK/LPTMR0_ALT2/CMP0_OUT}
213  - {pin_num: '51', peripheral: SPI0, signal: MOSI, pin_signal: CMP0_IN0/PTC6/LLWU_P10/SPI0_MOSI/EXTRG_IN/SPI0_MISO}
214  - {pin_num: '52', peripheral: SPI0, signal: MISO, pin_signal: CMP0_IN1/PTC7/SPI0_MISO/USB_SOF_OUT/SPI0_MOSI}
215  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
216  */
217 
218 /*FUNCTION**********************************************************************
219  *
220  * Function Name : SPI0_InitPins
221  * Description : Configures pin routing and optionally pin electrical features.
222  *
223  *END**************************************************************************/
224 void SPI0_InitPins(void) {
225  CLOCK_EnableClock(kCLOCK_PortC); /* Port C Clock Gate Control: Clock enabled */
226 
227  PORT_SetPinMux(PORTC, PIN5_IDX, kPORT_MuxAlt2); /* PORTC5 (pin 50) is configured as SPI0_SCK */
228  PORT_SetPinMux(PORTC, PIN6_IDX, kPORT_MuxAlt2); /* PORTC6 (pin 51) is configured as SPI0_MOSI */
229  PORT_SetPinMux(PORTC, PIN7_IDX, kPORT_MuxAlt2); /* PORTC7 (pin 52) is configured as SPI0_MISO */
230 }
231 
232 
233 
234 #define PIN5_IDX 5u /*!< Pin number for pin 5 in a port */
235 
236 #define PIN6_IDX 6u /*!< Pin number for pin 6 in a port */
237 
238 #define PIN7_IDX 7u /*!< Pin number for pin 7 in a port */
239 /*
240  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
241 SPI0_DeinitPins:
242 - options: {coreID: singlecore, enableClock: 'false'}
243 - pin_list:
244  - {pin_num: '50', peripheral: n/a, signal: disabled, pin_signal: PTC5/LLWU_P9/SPI0_SCK/LPTMR0_ALT2/CMP0_OUT}
245  - {pin_num: '51', peripheral: CMP0, signal: 'IN, 0', pin_signal: CMP0_IN0/PTC6/LLWU_P10/SPI0_MOSI/EXTRG_IN/SPI0_MISO}
246  - {pin_num: '52', peripheral: CMP0, signal: 'IN, 1', pin_signal: CMP0_IN1/PTC7/SPI0_MISO/USB_SOF_OUT/SPI0_MOSI}
247  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
248  */
249 
250 /*FUNCTION**********************************************************************
251  *
252  * Function Name : SPI0_DeinitPins
253  * Description : Configures pin routing and optionally pin electrical features.
254  *
255  *END**************************************************************************/
256 void SPI0_DeinitPins(void) {
257  PORT_SetPinMux(PORTC, PIN5_IDX, kPORT_PinDisabledOrAnalog); /* PORTC5 (pin 50) is disabled */
258  PORT_SetPinMux(PORTC, PIN6_IDX, kPORT_PinDisabledOrAnalog); /* PORTC6 (pin 51) is configured as CMP0_IN0 */
259  PORT_SetPinMux(PORTC, PIN7_IDX, kPORT_PinDisabledOrAnalog); /* PORTC7 (pin 52) is configured as CMP0_IN1 */
260 }
261 
262 
263 
264 #define PIN5_IDX 5u /*!< Pin number for pin 5 in a port */
265 
266 #define PIN6_IDX 6u /*!< Pin number for pin 6 in a port */
267 
268 #define PIN7_IDX 7u /*!< Pin number for pin 7 in a port */
269 /*
270  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
271 SPI1_InitPins:
272 - options: {coreID: singlecore, enableClock: 'true'}
273 - pin_list:
274  - {pin_num: '62', peripheral: SPI1, signal: SCK, pin_signal: ADC0_SE6b/PTD5/SPI1_SCK/UART2_TX/TPM0_CH5/FXIO0_D5}
275  - {pin_num: '63', peripheral: SPI1, signal: MOSI, pin_signal: ADC0_SE7b/PTD6/LLWU_P15/SPI1_MOSI/LPUART0_RX/I2C1_SDA/SPI1_MISO/FXIO0_D6}
276  - {pin_num: '64', peripheral: SPI1, signal: MISO, pin_signal: PTD7/SPI1_MISO/LPUART0_TX/I2C1_SCL/SPI1_MOSI/FXIO0_D7}
277  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
278  */
279 
280 /*FUNCTION**********************************************************************
281  *
282  * Function Name : SPI1_InitPins
283  * Description : Configures pin routing and optionally pin electrical features.
284  *
285  *END**************************************************************************/
286 void SPI1_InitPins(void) {
287  CLOCK_EnableClock(kCLOCK_PortD); /* Port D Clock Gate Control: Clock enabled */
288 
289  PORT_SetPinMux(PORTD, PIN5_IDX, kPORT_MuxAlt2); /* PORTD5 (pin 62) is configured as SPI1_SCK */
290  PORT_SetPinMux(PORTD, PIN6_IDX, kPORT_MuxAlt2); /* PORTD6 (pin 63) is configured as SPI1_MOSI */
291  PORT_SetPinMux(PORTD, PIN7_IDX, kPORT_MuxAlt2); /* PORTD7 (pin 64) is configured as SPI1_MISO */
292 }
293 
294 
295 
296 #define PIN5_IDX 5u /*!< Pin number for pin 5 in a port */
297 
298 #define PIN6_IDX 6u /*!< Pin number for pin 6 in a port */
299 
300 #define PIN7_IDX 7u /*!< Pin number for pin 7 in a port */
301 /*
302  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
303 SPI1_DeinitPins:
304 - options: {coreID: singlecore, enableClock: 'false'}
305 - pin_list:
306  - {pin_num: '62', peripheral: ADC0, signal: 'SE, 6b', pin_signal: ADC0_SE6b/PTD5/SPI1_SCK/UART2_TX/TPM0_CH5/FXIO0_D5}
307  - {pin_num: '63', peripheral: ADC0, signal: 'SE, 7b', pin_signal: ADC0_SE7b/PTD6/LLWU_P15/SPI1_MOSI/LPUART0_RX/I2C1_SDA/SPI1_MISO/FXIO0_D6}
308  - {pin_num: '64', peripheral: n/a, signal: disabled, pin_signal: PTD7/SPI1_MISO/LPUART0_TX/I2C1_SCL/SPI1_MOSI/FXIO0_D7}
309  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
310  */
311 
312 /*FUNCTION**********************************************************************
313  *
314  * Function Name : SPI1_DeinitPins
315  * Description : Configures pin routing and optionally pin electrical features.
316  *
317  *END**************************************************************************/
318 void SPI1_DeinitPins(void) {
319  PORT_SetPinMux(PORTD, PIN5_IDX, kPORT_PinDisabledOrAnalog); /* PORTD5 (pin 62) is configured as ADC0_SE6b */
320  PORT_SetPinMux(PORTD, PIN6_IDX, kPORT_PinDisabledOrAnalog); /* PORTD6 (pin 63) is configured as ADC0_SE7b */
321  PORT_SetPinMux(PORTD, PIN7_IDX, kPORT_PinDisabledOrAnalog); /* PORTD7 (pin 64) is disabled */
322 }
323 
324 
325 
326 #define PIN1_IDX 1u /*!< Pin number for pin 1 in a port */
327 
328 #define PIN2_IDX 2u /*!< Pin number for pin 2 in a port */
329 
330 #define SOPT5_LPUART0RXSRC_LPUART_RX 0x00u /*!< LPUART0 Receive Data Source Select: LPUART_RX pin */
331 
332 #define SOPT5_LPUART0TXSRC_LPUART_TX 0x00u /*!< LPUART0 Transmit Data Source Select: LPUART0_TX pin */
333 /*
334  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
335 LPUART0_InitPins:
336 - options: {coreID: singlecore, enableClock: 'true'}
337 - pin_list:
338  - {pin_num: '23', peripheral: LPUART0, signal: RX, pin_signal: PTA1/LPUART0_RX/TPM2_CH0}
339  - {pin_num: '24', peripheral: LPUART0, signal: TX, pin_signal: PTA2/LPUART0_TX/TPM2_CH1}
340  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
341  */
342 
343 /*FUNCTION**********************************************************************
344  *
345  * Function Name : LPUART0_InitPins
346  * Description : Configures pin routing and optionally pin electrical features.
347  *
348  *END**************************************************************************/
349 void LPUART0_InitPins(void) {
350  CLOCK_EnableClock(kCLOCK_PortA); /* Port A Clock Gate Control: Clock enabled */
351 
352  PORT_SetPinMux(PORTA, PIN1_IDX, kPORT_MuxAlt2); /* PORTA1 (pin 23) is configured as LPUART0_RX */
353  PORT_SetPinMux(PORTA, PIN2_IDX, kPORT_MuxAlt2); /* PORTA2 (pin 24) is configured as LPUART0_TX */
354  SIM->SOPT5 = ((SIM->SOPT5 &
355  (~(SIM_SOPT5_LPUART0TXSRC_MASK | SIM_SOPT5_LPUART0RXSRC_MASK))) /* Mask bits to zero which are setting */
356  | SIM_SOPT5_LPUART0TXSRC(SOPT5_LPUART0TXSRC_LPUART_TX) /* LPUART0 Transmit Data Source Select: LPUART0_TX pin */
357  | SIM_SOPT5_LPUART0RXSRC(SOPT5_LPUART0RXSRC_LPUART_RX) /* LPUART0 Receive Data Source Select: LPUART_RX pin */
358  );
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  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
368 LPUART0_DeinitPins:
369 - options: {coreID: singlecore, enableClock: 'false'}
370 - pin_list:
371  - {pin_num: '24', peripheral: n/a, signal: disabled, pin_signal: PTA2/LPUART0_TX/TPM2_CH1}
372  - {pin_num: '23', peripheral: n/a, signal: disabled, pin_signal: PTA1/LPUART0_RX/TPM2_CH0}
373  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
374  */
375 
376 /*FUNCTION**********************************************************************
377  *
378  * Function Name : LPUART0_DeinitPins
379  * Description : Configures pin routing and optionally pin electrical features.
380  *
381  *END**************************************************************************/
382 void LPUART0_DeinitPins(void) {
383  PORT_SetPinMux(PORTA, PIN1_IDX, kPORT_PinDisabledOrAnalog); /* PORTA1 (pin 23) is disabled */
384  PORT_SetPinMux(PORTA, PIN2_IDX, kPORT_PinDisabledOrAnalog); /* PORTA2 (pin 24) is disabled */
385 }
386 
387 
388 
389 #define PIN18_IDX 18u /*!< Pin number for pin 18 in a port */
390 
391 #define PIN30_IDX 30u /*!< Pin number for pin 30 in a port */
392 
393 #define SOPT5_LPUART1RXSRC_LPUART_RX 0x00u /*!< LPUART1 Receive Data Source Select: LPUART1_RX pin */
394 
395 #define SOPT5_LPUART1TXSRC_LPUART_TX 0x00u /*!< LPUART1 Transmit Data Source Select: LPUART1_TX pin */
396 
397 /*
398  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
399 LPUART1_InitPins:
400 - options: {coreID: singlecore, enableClock: 'true'}
401 - pin_list:
402  - {pin_num: '32', peripheral: LPUART1, signal: RX, pin_signal: EXTAL0/PTA18/LPUART1_RX/TPM_CLKIN0}
403  - {pin_num: '18', peripheral: LPUART1, signal: TX, pin_signal: ADC0_SE23/CMP0_IN4/PTE30/TPM0_CH3/TPM_CLKIN1/LPUART1_TX/LPTMR0_ALT1}
404  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
405  */
406 
407 /*FUNCTION**********************************************************************
408  *
409  * Function Name : LPUART1_InitPins
410  * Description : Configures pin routing and optionally pin electrical features.
411  *
412  *END**************************************************************************/
413 void LPUART1_InitPins(void) {
414  CLOCK_EnableClock(kCLOCK_PortA); /* Port A Clock Gate Control: Clock enabled */
415  CLOCK_EnableClock(kCLOCK_PortE); /* Port E Clock Gate Control: Clock enabled */
416 
417  PORT_SetPinMux(PORTA, PIN18_IDX, kPORT_MuxAlt3); /* PORTA18 (pin 32) is configured as LPUART1_RX */
418  PORT_SetPinMux(PORTE, PIN30_IDX, kPORT_MuxAlt5); /* PORTE30 (pin 18) is configured as LPUART1_TX */
419  SIM->SOPT5 = ((SIM->SOPT5 &
420  (~(SIM_SOPT5_LPUART1TXSRC_MASK | SIM_SOPT5_LPUART1RXSRC_MASK))) /* Mask bits to zero which are setting */
421  | SIM_SOPT5_LPUART1TXSRC(SOPT5_LPUART1TXSRC_LPUART_TX) /* LPUART1 Transmit Data Source Select: LPUART1_TX pin */
422  | SIM_SOPT5_LPUART1RXSRC(SOPT5_LPUART1RXSRC_LPUART_RX) /* LPUART1 Receive Data Source Select: LPUART1_RX pin */
423  );
424 }
425 
426 
427 
428 #define PIN18_IDX 18u /*!< Pin number for pin 18 in a port */
429 
430 #define PIN30_IDX 30u /*!< Pin number for pin 30 in a port */
431 /*
432  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
433 LPUART1_DeinitPins:
434 - options: {coreID: singlecore, enableClock: 'false'}
435 - pin_list:
436  - {pin_num: '32', peripheral: OSC0, signal: EXTAL0, pin_signal: EXTAL0/PTA18/LPUART1_RX/TPM_CLKIN0}
437  - {pin_num: '18', peripheral: ADC0, signal: 'SE, 23', pin_signal: ADC0_SE23/CMP0_IN4/PTE30/TPM0_CH3/TPM_CLKIN1/LPUART1_TX/LPTMR0_ALT1}
438  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
439  */
440 
441 /*FUNCTION**********************************************************************
442  *
443  * Function Name : LPUART1_DeinitPins
444  * Description : Configures pin routing and optionally pin electrical features.
445  *
446  *END**************************************************************************/
447 void LPUART1_DeinitPins(void) {
448  PORT_SetPinMux(PORTA, PIN18_IDX, kPORT_PinDisabledOrAnalog); /* PORTA18 (pin 32) is configured as EXTAL0 */
449  PORT_SetPinMux(PORTE, PIN30_IDX, kPORT_PinDisabledOrAnalog); /* PORTE30 (pin 18) is configured as ADC0_SE23 */
450 }
451 
452 
453 
454 #define PIN2_IDX 2u /*!< Pin number for pin 2 in a port */
455 
456 #define PIN3_IDX 3u /*!< Pin number for pin 3 in a port */
457 
458 /*
459  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
460 UART2_InitPins:
461 - options: {coreID: singlecore, enableClock: 'true'}
462 - pin_list:
463  - {pin_num: '59', peripheral: UART2, signal: RX, pin_signal: PTD2/SPI0_MOSI/UART2_RX/TPM0_CH2/SPI0_MISO/FXIO0_D2}
464  - {pin_num: '60', peripheral: UART2, signal: TX, pin_signal: PTD3/SPI0_MISO/UART2_TX/TPM0_CH3/SPI0_MOSI/FXIO0_D3}
465  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
466  */
467 
468 /*FUNCTION**********************************************************************
469  *
470  * Function Name : UART2_InitPins
471  * Description : Configures pin routing and optionally pin electrical features.
472  *
473  *END**************************************************************************/
474 void UART2_InitPins(void) {
475  CLOCK_EnableClock(kCLOCK_PortD); /* Port D Clock Gate Control: Clock enabled */
476 
477  PORT_SetPinMux(PORTD, PIN2_IDX, kPORT_MuxAlt3); /* PORTD2 (pin 59) is configured as UART2_RX */
478  PORT_SetPinMux(PORTD, PIN3_IDX, kPORT_MuxAlt3); /* PORTD3 (pin 60) is configured as UART2_TX */
479 }
480 
481 
482 
483 #define PIN2_IDX 2u /*!< Pin number for pin 2 in a port */
484 
485 #define PIN3_IDX 3u /*!< Pin number for pin 3 in a port */
486 /*
487  * TEXT BELOW IS USED AS SETTING FOR THE PINS TOOL *****************************
488 UART2_DeinitPins:
489 - options: {coreID: singlecore, enableClock: 'false'}
490 - pin_list:
491  - {pin_num: '59', peripheral: n/a, signal: disabled, pin_signal: PTD2/SPI0_MOSI/UART2_RX/TPM0_CH2/SPI0_MISO/FXIO0_D2}
492  - {pin_num: '60', peripheral: n/a, signal: disabled, pin_signal: PTD3/SPI0_MISO/UART2_TX/TPM0_CH3/SPI0_MOSI/FXIO0_D3}
493  * BE CAREFUL MODIFYING THIS COMMENT - IT IS YAML SETTINGS FOR THE PINS TOOL ***
494  */
495 
496 /*FUNCTION**********************************************************************
497  *
498  * Function Name : UART2_DeinitPins
499  * Description : Configures pin routing and optionally pin electrical features.
500  *
501  *END**************************************************************************/
502 void UART2_DeinitPins(void) {
503  PORT_SetPinMux(PORTD, PIN2_IDX, kPORT_PinDisabledOrAnalog); /* PORTD2 (pin 59) is disabled */
504  PORT_SetPinMux(PORTD, PIN3_IDX, kPORT_PinDisabledOrAnalog); /* PORTD3 (pin 60) is disabled */
505 }
506 
507 /*******************************************************************************
508  * EOF
509  ******************************************************************************/
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 I2C0_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:392
void LPUART1_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:447
#define SOPT5_LPUART1TXSRC_LPUART_TX
Definition: pin_mux.c:395
#define PIN7_IDX
Definition: pin_mux.c:300
void I2C1_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:513
#define SOPT5_LPUART1RXSRC_LPUART_RX
Definition: pin_mux.c:393
#define PIN18_IDX
Definition: pin_mux.c:428
void LPUART1_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:413
#define PIN5_IDX
Definition: pin_mux.c:296
#define SOPT5_LPUART0RXSRC_LPUART_RX
Definition: pin_mux.c:330
void UART2_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:227
void SPI1_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:302
#define SOPT5_LPUART0TXSRC_LPUART_TX
Definition: pin_mux.c:332
void SPI0_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:274
#define PIN30_IDX
Definition: pin_mux.c:430
#define PIN1_IDX
Definition: pin_mux.c:363
#define PIN3_IDX
Definition: pin_mux.c:485
void LPUART0_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:382
#define PIN6_IDX
Definition: pin_mux.c:298
#define PIN2_IDX
Definition: pin_mux.c:483
void I2C1_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:467
void BOARD_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:73
void SPI1_DeinitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:334
void LPUART0_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:349
#define PIN0_IDX
Definition: pin_mux.c:118
void SPI0_InitPins(void)
Configures pin routing and optionally pin electrical features.
Definition: pin_mux.c:242