• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

GPIO管脚如果我设为输出拉低,但外部信号把它拉高了?还能读么

qrfbntel 2016-02-25 浏览量:2371
问下,一个GPIO管脚如果我设为输出接低,但外部信号把它拉高了,我还能去读到它么?读到当前的是高还是低?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • GPIO的高低电平有个状态寄存器,

    GPIO的输入、输出是由控制寄存器设置的。

    无论设置成输入还是输出,都可以去读状态寄存器,只是这个状态寄存器的值会不会根据你的外部电平变化面变化了,这与你的单片机型号有关,有的是可以的,有的是无效的。

    • 发布于 2016-02-25
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:11
  • 你提的问题有矛盾,可能你没有表达清晰,GPIO设置为输出了,那就不能去读取了。如果外部电平拉高了,此时,如果你设置GPIO为输入的话,则可以去读,此时读的GPIO电平为高。
    • 发布于2016-02-25
    • 举报
    • 评论 0
    • 0
    • 0

  • 我想应该是想即检测当前的信号,又想控制这个信号吧
    • 发布于2016-02-25
    • 举报
    • 评论 0
    • 0
    • 0

  • "设为输出接低"是什么意思没怎么看懂……你是指你把这个IO口设置成输出,然后接到低电平?有电路图或者源代码的话最好能贴出来看一下……
    • 发布于2016-02-25
    • 举报
    • 评论 0
    • 0
    • 0

  • 其实我想检测一信号,并能控制它,所以在纠结用GPIO能实现不?
    • 发布于2016-02-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 其实我想检测一信号,并能控制它,所以在纠结用GPIO能实现不?
    • 发布于2016-02-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 你要是想检测的话,应该吧gpio设置成输入,来读管脚的电平吧。
    • 发布于2016-02-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 试一下啊,很简单啊。

    接上LED灯,点亮时,读取一下GPIO状态,点灭时,再读一下,看是不是一样的。

    • 发布于2016-02-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 感觉这样实现不靠谱。你想控制它,就要设为输出。

    你要检测,就要设为输入。二者不能混淆。

    • 发布于2016-02-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 你还是用两个IO口来实现吧,一个IO口又做输入又做输出,没这么用过……
    • 发布于2016-02-26
    • 举报
    • 评论 0
    • 0
    • 0

  • 管脚配置应该配置成输入模式.

    低电平拉高的状态下可以读取,读取到的是1.

    但你既然又想读取又想控制.建议还是使用两个GPIO来实现吧.

    • 发布于2016-03-03
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

GPIO管脚如果我设为输出拉低,但外部信号把它拉高了?还能读么