最简单的GPIO搞不定。GPIO无法输出低电平
本帖最后由 xmar 于 2015-12-9 15:16 编辑F28335,最简单的GPIO搞不定。GPIO无法输出低电平。请教大侠是啥问题。程序编译正常,仿真也正常,板子原来烧写有程序(不是我试验程序)。但我的试验程序仿真运行GPIO55总为高电平(3.3V)为啥,如何解决?
void main(void)
{
GpioCtrlRegs.GPBMUX2.bit.GPIO55 = 0;
GpioCtrlRegs.GPBDIR.bit.GPIO55 = 1;// GPIO55 = output
//GpioCtrlRegs.GPBPUD.bit.GPIO55 = 1; // Disable pullup on GPIO55
while(1)
{
GpioDataRegs.GPBCLEAR.bit.GPIO55 = 1;
GpioDataRegs.GPBDAT.bit.GPIO55 = 0;
DELAY_US(30000);
GpioDataRegs.GPBSET.bit.GPIO55 = 1;
GpioDataRegs.GPBDAT.bit.GPIO55 = 1;
DELAY_US(10000);
}
}
没初始化对吧?时钟没初始化,初始化太简单了。 DELAY_US(10000);这个大概是多少 GPIO的输出频率不能太高 高了就没响应
还有 确保程序正常下载 并打断点运行看看 JY-DX-JY 发表于 2015-12-9 16:31
没初始化对吧?时钟没初始化,初始化太简单了。
原因找到了。没有加宏:
EALLOW;
。。。。。。
。。。。。。
EDIS;
谢谢你。 不客气。找到原因就好 要加EALLOW;和EDIS; xmar 发表于 2015-12-11 16:10
原因找到了。没有加宏:
EALLOW;
不好意思刚看见这个,刚才白回复了{:lol:} xmar 发表于 2015-12-11 16:10
原因找到了。没有加宏:
EALLOW;
要加EALLOW;和EDIS;
页:
[1]