gpio_pull_task.lua 926 B

1234567891011121314151617181920212223242526272829303132
  1. --[[
  2. @module gpio_pull_task
  3. @summary GPIO上下拉功能模块
  4. @version 1.0
  5. @date 2025.10.21
  6. @author 拓毅恒
  7. @usage
  8. 本文件为 GPIO 上下拉功能的代码示例,核心业务逻辑为:
  9. 1. 配置GPIO5为上拉输入模式
  10. 2. 配置GPIO6为下拉输入模式
  11. 3. 定时读取并打印两个GPIO的电平状态
  12. 4. 将GPIO5和GPIO6引脚接地或接3.3V来控制GPIO5和GPIO6的电平变化,验证上拉/下拉配置是否生效
  13. ]]
  14. local gpio_pin1 = 5
  15. local gpio_pin2 = 6
  16. -- 按键防抖函数
  17. gpio.debounce(gpio_pin1, 50)
  18. gpio.debounce(gpio_pin2, 50)
  19. -- 设置GPIO2引脚为上拉输入模式
  20. gpio.setup(gpio_pin1, nil, gpio.PULLUP)
  21. -- 设置GPIO5引脚为下拉输入模式
  22. gpio.setup(gpio_pin2, nil, gpio.PULLDOWN)
  23. local function gpiopulltask()
  24. log.info("GPIO",gpio_pin1,"电平",gpio.get(gpio_pin1))
  25. log.info("GPIO",gpio_pin2,"电平",gpio.get(gpio_pin2))
  26. end
  27. sys.timerLoopStart(gpiopulltask,1000)