将GPIO8配置为输入口,禁止内部上拉,将3.3V电源通过导线连接到GPIO8,为什么读GpioDataRegs.GPADAT.bit.GPIO8寄存器读不到高电平?或使能内部上拉,将电源地通过导线连接到GPIO8,也读不到低电平。
EALLOW;
GpioCtrlRegs.GPAMUX1.bit.GPIO8 = 0;
GpioCtrlRegs.GPADIR.bit.GPIO8 = 0;
GpioCtrlRegs.GPAPUD.bit.GPIO8 = 1;
GpioCtrlRegs.GPACTRL.bit.QUALPRD1 = 1;
GpioCtrlRegs.GPAQSEL1.bit.GPIO8 = 1;
EDIS;
mangui zhang:
这个状态读入 与内部上下拉关系不大 只要你外部强制拉高拉低 肯定是能读到状态的
你在检查一下外设时钟 GPIO是否损坏等原因
将GPIO8配置为输入口,禁止内部上拉,将3.3V电源通过导线连接到GPIO8,为什么读GpioDataRegs.GPADAT.bit.GPIO8寄存器读不到高电平?或使能内部上拉,将电源地通过导线连接到GPIO8,也读不到低电平。
EALLOW;
GpioCtrlRegs.GPAMUX1.bit.GPIO8 = 0;
GpioCtrlRegs.GPADIR.bit.GPIO8 = 0;
GpioCtrlRegs.GPAPUD.bit.GPIO8 = 1;
GpioCtrlRegs.GPACTRL.bit.QUALPRD1 = 1;
GpioCtrlRegs.GPAQSEL1.bit.GPIO8 = 1;
EDIS;
Dominic Liu:
回复 mangui zhang:
GPIO时钟我使能了,SysCtrlRegs.PCLKCR3.bit.GPIOINENCLK = 1; 其实默认就是使能的。
用此GPIO口发高低电平都没问题,用其他口接收也接收不到,应该不是GPIO损坏。
将GPIO8配置为输入口,禁止内部上拉,将3.3V电源通过导线连接到GPIO8,为什么读GpioDataRegs.GPADAT.bit.GPIO8寄存器读不到高电平?或使能内部上拉,将电源地通过导线连接到GPIO8,也读不到低电平。
EALLOW;
GpioCtrlRegs.GPAMUX1.bit.GPIO8 = 0;
GpioCtrlRegs.GPADIR.bit.GPIO8 = 0;
GpioCtrlRegs.GPAPUD.bit.GPIO8 = 1;
GpioCtrlRegs.GPACTRL.bit.QUALPRD1 = 1;
GpioCtrlRegs.GPAQSEL1.bit.GPIO8 = 1;
EDIS;
mangui zhang:
回复 Dominic Liu:
换一个GPIO试试吧 我觉得这个IO有问题
将GPIO8配置为输入口,禁止内部上拉,将3.3V电源通过导线连接到GPIO8,为什么读GpioDataRegs.GPADAT.bit.GPIO8寄存器读不到高电平?或使能内部上拉,将电源地通过导线连接到GPIO8,也读不到低电平。
EALLOW;
GpioCtrlRegs.GPAMUX1.bit.GPIO8 = 0;
GpioCtrlRegs.GPADIR.bit.GPIO8 = 0;
GpioCtrlRegs.GPAPUD.bit.GPIO8 = 1;
GpioCtrlRegs.GPACTRL.bit.QUALPRD1 = 1;
GpioCtrlRegs.GPAQSEL1.bit.GPIO8 = 1;
EDIS;
Seven Han:
单步调试时,代码可以执行GpioDataRegs.GPADAT.bit.GPIO8吗?
另外您可以把该句放到main函数中试下,通过watch window查看GPADAT寄存器状态。
将GPIO8配置为输入口,禁止内部上拉,将3.3V电源通过导线连接到GPIO8,为什么读GpioDataRegs.GPADAT.bit.GPIO8寄存器读不到高电平?或使能内部上拉,将电源地通过导线连接到GPIO8,也读不到低电平。
EALLOW;
GpioCtrlRegs.GPAMUX1.bit.GPIO8 = 0;
GpioCtrlRegs.GPADIR.bit.GPIO8 = 0;
GpioCtrlRegs.GPAPUD.bit.GPIO8 = 1;
GpioCtrlRegs.GPACTRL.bit.QUALPRD1 = 1;
GpioCtrlRegs.GPAQSEL1.bit.GPIO8 = 1;
EDIS;
Dominic Liu:
回复 mangui zhang:
您好,我找到问题了,这个GPIO口外面接了一个74LVC245,74LVC245设定了数据传输的方向,导致这个口只能作输出不能作输入了,谢谢您!
将GPIO8配置为输入口,禁止内部上拉,将3.3V电源通过导线连接到GPIO8,为什么读GpioDataRegs.GPADAT.bit.GPIO8寄存器读不到高电平?或使能内部上拉,将电源地通过导线连接到GPIO8,也读不到低电平。
EALLOW;
GpioCtrlRegs.GPAMUX1.bit.GPIO8 = 0;
GpioCtrlRegs.GPADIR.bit.GPIO8 = 0;
GpioCtrlRegs.GPAPUD.bit.GPIO8 = 1;
GpioCtrlRegs.GPACTRL.bit.QUALPRD1 = 1;
GpioCtrlRegs.GPAQSEL1.bit.GPIO8 = 1;
EDIS;
Dominic Liu:
回复 Seven Han:
您好,我找到问题了,这个GPIO口外面接了一个74LVC245,74LVC245设定了数据传输的方向,导致这个口只能作输出不能作输入了,谢谢您!
TI中文支持网



