Board logo

标题: Strongchen, 关于GPIO求助! [打印本页]

作者: chudf    时间: 2007-9-20 14:31     标题: Strongchen, 关于GPIO求助!

我使用的单片机是9S12XDP512。在我使用过程中,为什么这款单片机的Port S和Port P口在reset之后都是“1”啊,数据手册上明明写着reset之后都是“0”?
难道这款单片机reset之后,I/O口的状态还可以通过某个寄存器选择吗?
请过往的高手指点指点,谢谢!
作者: strongchen    时间: 2007-9-20 15:50

I/O端口上电后一般都是输入状态,其数据值反应口线电平状态。通过DDRS和DDRP寄存器可改变输入输出方向。
作者: chudf    时间: 2007-9-20 21:58

是的,设置方向寄存器是可以将端口设置为输入或输出,可以我发现在上电的一瞬间,即reset后(初始化之前),Port S和Port P都为“1”。我在这两个端口上接上LED,发现它们在上电之后都会闪一下,然后熄灭(初始化了)。
请问,9S12X的I/O口在reset后的输出状态(即输出为“0”或输出为“1”)可以选择吗?如果reset之后为“1”,那么在这一瞬间可能会对外部设备有较大冲击,所以最好是reset为“0”.
作者: strongchen    时间: 2007-9-21 09:52

9S12X的I/O口在reset后为输入状态,引脚对外呈高阻,是对外部设备冲击最小的状态。你的LED上电时的闪烁现象应该是外部电路造成的。
作者: chudf    时间: 2007-9-21 17:29

但是我通过读codewarrior进行调试时,发现在hiwave的Inspect里面读PIM寄存器时,看到Port S口都高。而且用万用表打CPU的port s口时,都是高电平。即使是reset为输入状态,对外呈现高阻,也可能影响外部设备啊。
我是之接在CPU的腿上连LED啊,外部没有什么电路。




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0