GPIO.setup pull_up_down 问题,上个帖子并未解决问题,就给标记解决了,麻烦测试确认下

  1. 设备: RDK X5
  2. 系统: dk_os_3.1.1-2025-2-11/rdk-x5-ubuntu22-preinstalled-server-3.1.1-arm64.img.xz # Linux ubuntu 6.1.83 #1 SMP PREEMPT Tue Feb 11 00:25:16 CST 2025 aarch64 aarch64 aarch64 GNU/Linux
  3. miniboot 已经更新到最新
  4. 问题描述:我需要在初始化 【 输入 】引脚时 PIO.setup(input_pin, GPIO.IN, pull_up_down=False) ,能指定默认为上拉或者下拉
  5. 使用场景: 比如我有一个外部光电开关,与引脚 pin=3 连接,当开关被触发时,光电开关会把 pin=3 这个引脚电平 拉高 当开关未触发时,会把pin=3 悬空,此时,由于 GPIO.setup(input_pin, GPIO.IN) 时初始化 pin=3 时它,默认的电平就是 高电平,当我的开关触发时,也是 高电平 使用 value = GPIO.input(input_pin) 读取引进时,value值始终不会变化 导致无法判断,光电开关是否被触发

示例代码:-

import sysimport signalimport Hobot.GPIO as GPIOimport timedef signal_handler(signal, frame):    sys.exit(0)input_pin = 3def main():    GPIO.setmode(GPIO.BOARD)    GPIO.setup(input_pin, GPIO.IN, pull_up_down=False) # 需要在这里能指定 pull_up_down     value = GPIO.input(input_pin)      print("Pin %d input value %d" % (input_pin, value))if __name__=='__main__':    signal.signal(signal.SIGINT, signal_handler)    main()

运行上述代码,得到输出如下:

Pin 3 input value 1

预期结果应该是

pull_up_down=False 时 Pin 3 input value 0-
pull_up_down=True 时 Pin 3 input value 1

实际测试并不是这样,pull_up_down 参数并没有生效。

你好,/app目录下有对应的button按钮例程,那个都是测试过的,可以正常触发,要不要观察观察/app目录下的案例是怎么来写的

你好,如果您认为这块使用和手册描述是不符的话,请按照发帖规范进行发帖,使用最新的系统和miniboot,这样我们才能将您的发现反馈到研发去排查。

好的,我先查看下如何发贴

已经重新编辑帖子,麻烦查看下