[AT32F413] GPIO设置成上拉输入模式,跟浮空输入一样

[复制链接]
 楼主| 视觉℡ 发表于 2022-5-4 22:08 | 显示全部楼层 |阅读模式
pi, IO, gp, ni
本帖最后由 视觉℡ 于 2022-5-5 10:00 编辑

正在做按键程序,按键是用的是硅胶软按键,使用STM32  上拉输入模式   用手触摸不会有反应,使用AT32F413A  设置IO为上拉输入,使用手触摸会有反应,偶尔还会误操作。理论上讲,上拉内部是70KΩ的电阻,手去触摸不应该会有作用
8527862732fceea118.png
36914627288fb5dbbf.png 6772627289ae378f7.png
  gpio_initstructure.gpio_pins = GPIO_PINS_3|GPIO_PINS_4|GPIO_PINS_5;
  gpio_initstructure.gpio_pull           = GPIO_PULL_UP;
  gpio_initstructure.gpio_mode           = GPIO_MODE_INPUT;
  gpio_initstructure.gpio_out_type                          = GPIO_OUTPUT_PUSH_PULL;
  gpio_initstructure.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
  gpio_init(GPIOB, &gpio_initstructure);
        
  gpio_port_wirte(GPIOB,gpio_output_data_read(GPIOB)|GPIO_PINS_3|GPIO_PINS_4|GPIO_PINS_5);

  gpio_initstructure.gpio_pins = GPIO_PINS_5;
  gpio_initstructure.gpio_pull           = GPIO_PULL_UP;
  gpio_initstructure.gpio_mode           = GPIO_MODE_INPUT;
  gpio_init(GPIOC, &gpio_initstructure);

52598627289f87a906.png
手册上说  设置ODT寄存器可以选择上拉下拉,设置端口输出寄存器依旧感觉上拉没效果

骑着蜗牛狂奔O 发表于 2022-5-5 09:50 | 显示全部楼层
把这个语句去掉试一下
gpio_port_wirte(GPIOB,gpio_output_data_read(GPIOB)|GPIO_PINS_3|GPIO_PINS_4|GPIO_PINS_5);
 楼主| 视觉℡ 发表于 2022-5-5 09:56 | 显示全部楼层
骑着蜗牛狂奔O 发表于 2022-5-5 09:50
把这个语句去掉试一下
gpio_port_wirte(GPIOB,gpio_output_data_read(GPIOB)|GPIO_PINS_3|GPIO_PINS_4|GPIO ...

一样的   我加这个就是看到数据手册上说的是设置为输入时  ODT寄存器是上拉或者下拉
 楼主| 视觉℡ 发表于 2022-5-5 10:26 | 显示全部楼层
骑着蜗牛狂奔O 发表于 2022-5-5 09:50
把这个语句去掉试一下
gpio_port_wirte(GPIOB,gpio_output_data_read(GPIOB)|GPIO_PINS_3|GPIO_PINS_4|GPIO ...

PB3  需要做特殊处理   
vt2017 发表于 2022-5-5 19:27 | 显示全部楼层
视觉℡ 发表于 2022-5-5 09:56
一样的   我加这个就是看到数据手册上说的是设置为输入时  ODT寄存器是上拉或者下拉 ...

gpio_initstructure.gpio_pull = GPIO_PULL_UP;
你调用这句话的时候就已经做了这个配置了,所以不需要再像你这样去写ODT。

PB3/4是JTAG引脚,你需要将JTAG禁用,才能做GPIO使用,并且注意此时不要接 at-link 之类的下载工具。
技术无可挑剔 发表于 2022-5-5 20:54 | 显示全部楼层
stm系列输入不需设置,默认的,因为输入输出公用。所以,70K偏大,10K刚刚好,因为有防静电、误操作等等方面的因素。
caigang13 发表于 2022-5-5 21:21 来自手机 | 显示全部楼层
上拉输入和浮空输入是两回事
weifeng90 发表于 2022-5-6 08:08 来自手机 | 显示全部楼层
外部再加个上拉和小电容
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

28

帖子

0

粉丝
快速回复 返回顶部 返回列表