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

STM32按键初始化的问题不理解

e889899e4b3e34cd 2018-09-28 浏览量:1102

按键初始化步骤

1.初始化该GPIO口为输入上拉


2.初始化该GPIO口为输出高电平————为什么要初始化为输出高电平??难道不应该是输入高电平么?我用IDR寄存器操作是不起作用的,相反ODR的寄存器可以


谁给解释下,谢谢

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 设置为输入模式就可以了,第二步没有必要,或者你可以把这行屏蔽后再测试一下。
    • 发布于 2018-09-28
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:11
  • 按键检测的原理就是检测电平的变化。但是输出的时候是不能检测外部电平的,不过开漏除外,一般都是上拉或者下拉输入,然后检测电平变化
    • 发布于2018-09-28
    • 举报
    • 评论 4
    • 1
    • 0
e889899e4b3e34cd 回复了 涛涛涛涛涛 :你好,我不理解第二步,第一步输入上拉我懂,第二步为什么要初始化为输出高电平?GPIOC->ODR|=1<<1而不是GPIOC->IDR|=1<<1 ?? 回复
e889899e4b3e34cd 回复了 涛涛涛涛涛 :你好,第一步输入上拉我懂的,第二步为什么是设置为输出高电平而不是,输入高电平?? 回复
涛涛涛涛涛 回复了 涛涛涛涛涛 :你都已经输入模式了。一般的流程是设置输入模式,然后打开上啦电子,然后初始化结构体,就这些,输入模式下就没有输出电平一说,你可以吧那就话删除试一试 回复
小白爱32 回复了 涛涛涛涛涛 :没看明白你打的内容-_-|| 我验证了用IDR寄存器初始化是没有用的, 打开上啦电子什么意思? 回复

  • 大部分io默认都是高电平的,只有小部分需要写高电平
    • 发布于2018-09-28
    • 举报
    • 评论 1
    • 0
    • 0
小白爱32 回复了 yhj416606438 :OK感谢 回复

  • 按键检测的话设置输出没啥用啊,都是输入模式
    • 发布于2018-09-28
    • 举报
    • 评论 1
    • 0
    • 0
小白爱32 回复了 huihui163 :晓得了晓得了,感谢 回复

  • 输入输出在硬件上是两部分,配置成输出高电平或者低电平或者说是上拉下拉,要根据你的按键的另一端接的地还是VCC,要保证按下的电平和释放的电平不一样。
    • 发布于2018-09-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 上拉不是输出高电平,上拉只是对一个不确定的电平输入默认置为高,输入低的时候才为低。

    • 发布于2018-09-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 上拉并不表示输出了高电平,

    但是可以让高电平稳定

    输入低的时候依然是低电平

    设置为高电平的原因应该是按键接到了GND

    • 发布于2018-09-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 输入模式下无法输出高电平,这里明显是矛盾了
    • 发布于2018-10-04
    • 举报
    • 评论 0
    • 0
    • 0

  • 上拉有输入和输出模式,你要设置成输出模式才可以输出高电平
    • 发布于2018-10-11
    • 举报
    • 评论 0
    • 0
    • 0

  • IO口设置为输入即可,输出高电平是不必要的。
    • 发布于2018-10-25
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM32按键初始化的问题不理解