本帖最后由 Sam131208 于 2024-11-28 16:41 编辑
QFN32的GPIO已经分配完,只能用PA13当作按键输入,配置为下拉,上升沿触发。 配置代码如下面所示。
然后发现PA13一直高电平(大概2.8v),请问如何配置PA13才能恢复GPIO正常功能。
///< 打开GPIO外设时钟门控
Sysctrl_SetPeripheralGate(SysctrlPeripheralGpio, TRUE);
Sysctrl_SetFunc(SysctrlSWDUseIOEn, TRUE);
DDL_ZERO_STRUCT(stcGpioCfg); //初始值清零
///< 端口方向配置->输入
stcGpioCfg.enDir = GpioDirIn;
///< 端口驱动能力配置->高驱动能力
//stcGpioCfg.enDrv = GpioDrvL;
///< 端口上下拉配置->无
stcGpioCfg.enPu = GpioPuDisable; //GpioPuEnable, GpioPuDisable
stcGpioCfg.enPd = GpioPdEnable; //GpioPdEnable, GpioPdDisable
///< 端口开漏输出配置->开漏输出关闭
//stcGpioCfg.enOD = GpioOdDisable;
///< 端口输入/输出值寄存器总线控制模式配置->AHB
stcGpioCfg.enCtrlMode = GpioAHB;
///< GPIO IO USER KEY初始化
Gpio_Init(GpioPortB, GpioPin7, &stcGpioCfg);
Gpio_Init(GpioPortB, GpioPin8, &stcGpioCfg);
Gpio_Init(GpioPortB, GpioPin9, &stcGpioCfg);
Gpio_Init(GpioPortA, GpioPin13, &stcGpioCfg);
Gpio_Init(GpioPortC, GpioPin0, &stcGpioCfg);
|