port_pin_config_t pin_cfg = {0};
/*
* RX-only DMX lines. Pull-up keeps the pin at a defined MARK
* level when no cable is connected.
*
* P4_3 Alt2 = FC2_RXD_SDA_MOSI_DATA (Flexcomm2 RXD)
* P1_16 Alt2 = FC5_RXD_SDA_MOSI_DATA (Flexcomm5 RXD)
*
* Verify Alt function codes against the MCXN947 RM pin-mux table
* or use the MCUXpresso Pins Config Tool.
*/
pin_cfg.pullSelect = kPORT_PullUp;
pin_cfg.pullValueSelect = kPORT_HighPullResistor;
pin_cfg.inputBuffer = kPORT_InputBufferEnable;
pin_cfg.invertInput = kPORT_InputNormal;
pin_cfg.slewRate = kPORT_SlowSlewRate;
pin_cfg.passiveFilterEnable = kPORT_PassiveFilterDisable;
pin_cfg.openDrainEnable = kPORT_OpenDrainDisable;
/* CH0 — P4_3 */
CLOCK_EnableClock(kCLOCK_Port4);
pin_cfg.mux = kPORT_MuxAlt2;
PORT_SetPinConfig(PORT4, 3U, &pin_cfg);
/* CH1 — P1_16 */
CLOCK_EnableClock(kCLOCK_Port1);
pin_cfg.mux = kPORT_MuxAlt2;
PORT_SetPinConfig(PORT1, 16U, &pin_cfg);