xmstudio 发表于 2018-7-10 19:04:33

如果是开路输出的话,高电平是高阻,走上拉,低电平还是输出0V,你看一下有没有设置成高电平

sean1990 发表于 2018-7-10 22:56:47

谢谢你的回答,我刚才试了一下,把引脚设置成开漏输出,上拉,运行程序后LED灯还是会亮。其实我是想弄明白原理,因为按照我的理解,如果我设置成上拉,LED灯两边都是高电平,LED灯就不应该亮。不知道这样理解对不对。实际测下来,即使引脚设置成上拉,LED灯依然会亮

sean1990 发表于 2018-7-10 23:01:06

MrJiu 发表于 2018-7-10 09:18
GPIOx_ODR的上电默认值是0,你即使配置位上拉,依然是输出低电平。。。

测试下来,好像确实如你所说,但是就是没有想通为什么?我的理解是我上拉了,引脚就应该保持高电平才对,为什么总是低电平呢?

sean1990 发表于 2018-7-10 23:02:35

jakecumt 发表于 2018-7-10 09:58
你把管脚上电设置成输出并且高电平输出,看看还亮么?

不会亮了,但是我想弄明白,我把引脚设置成上拉,按道理来说引脚应该是高电平才对,但是实际测下来却是低电平,不知道为什么?

sean1990 发表于 2018-7-10 23:03:10

安 发表于 2018-7-10 09:38
换成开漏试试。

换成开漏试了一下,效果一样

sean1990 发表于 2018-7-11 00:10:06

刚才测试了一下,无论是推挽输出上拉和下拉,还是开漏输出上拉和下拉,读输出引脚寄存器都是低电平,也就是说无论怎么设置,输出引脚的初始状态都是低电平。:)

五哥1 发表于 2018-7-11 00:44:10

这个上拉是芯片内部的,不是外部电阻接VCC,原理不一样,实际情况是这个上拉会有1.5V左右的电压,与电源电压有压差,你用万用表测试下

sean1990 发表于 2018-7-11 09:03:16

五哥1 发表于 2018-7-11 00:44
这个上拉是芯片内部的,不是外部电阻接VCC,原理不一样,实际情况是这个上拉会有1.5V左右的电压,与电源电 ...

谢谢你的回答。内部上拉是不是弱上拉?那么既然和外部的上拉不一样,这里的上拉起到什么作用呢?

stm1024 发表于 2018-7-11 11:09:50

先用万用表测量一下,那边的VCC3.3V是不是真的是3.3V,我以前碰到过的一个类似的现象是,板子上用JTAG供电, 每次打开USB转串口,结果就会出现你说的那个现象,LED会被微弱的点亮,又不像全亮。你看看会不会是这种问题。
页: 1 [2]
查看完整版本: 关于STM32F407 GPIO引脚相关