驱动开发-裸机驱动阅读-野火RT1052公共驱动代码解析
#define IOMUXC_GPIO_B1_04_ENET_RX_DATA00 0x401F818CU, 0x3U, 0x401F8434U, 0x1U, 0x401F837CU
static inline void IOMUXC_SetPinMux(uint32_t muxRegister,
uint32_t muxMode,
uint32_t inputRegister,
uint32_t inputDaisy,
uint32_t configRegister,
uint32_t inputOnfield)
IOMUXC_SetPinMux(
IOMUXC_GPIO_B1_04_ENET_RX_DATA00, /* GPIO_B1_04 is configured as ENET_RX_DATA00 */
0U);
uint32_t muxRegister, //一级复用选择器 IOMUXC_SW_MUX_CTL_PAD_GPIO_B1_04 IOMUXC_SW_MUX_CTL_PAD_GPIO_
uint32_t muxMode, //一级复用选择器值
uint32_t inputRegister, //二级复用选择器 IOMUXC_ENET0_RXDATA_SELECT_INPUT IOMUXC_xx_xx_SELECT_INPUT
uint32_t inputDaisy, //二级复用选择器值
uint32_t configRegister, //引脚控制配置寄存器(配置引脚电路相关(上拉下拉电阻、摆率、脉冲频率等))
IOMUXC_SW_PAD_CTL_PAD_GPIO_EMC_00 IOMUXC_SW_PAD_CTL_PAD_GPIO_
在 IOMUXC_SetPinMux 函数中没有使用该字段
uint32_t inputOnfield
//在 IOMUXC_SetPinMux 函数中为设置 寄存器中 SION 字段的值
Force the selected mux mode Input path no matter of MUX_MODE functionality.
无论MUX_MODE功能如何,都强制选择多路复用器模式输入路径
static inline void IOMUXC_SetPinConfig(uint32_t muxRegister,
uint32_t muxMode,
uint32_t inputRegister,
uint32_t inputDaisy,
uint32_t configRegister,
uint32_t configValue)
//只设置 configRegister 寄存器的值
IOMUXC_SetPinConfig(
IOMUXC_GPIO_AD_B0_09_GPIO1_IO09, /* GPIO_AD_B0_09 PAD functional properties : */
0xB0A9u);
uint32_t muxRegister, //同上
uint32_t muxMode, //同上
uint32_t inputRegister, //同上
uint32_t inputDaisy, //同上
uint32_t configRegister, //同上
uint32_t configValue //引脚控制配置寄存器值
//野火RT1052开发板PHY引脚连接
ENET_TXEN GPIO_B1_09 TXEN
ENET_NRST JTAG_TDI GPIO_AD_B0_09 NRST
ENET_NINT JTAG_TDO GPIO_AD_B0_10 (NINT/REFCLKO)
VDDIO DCDC_3V3