MicroPython ESP32 GPIO引脚输入输出示例

MicroPython ESP32 GPIO引脚输入输出示例


  • 在线仿真演示gpio作为外部输入中断
    在这里插入图片描述

GPIO引脚输入输出状态设置属于machine模块中的类

from machine import Pin #引入引脚模块,才可以控制esp32引脚

GPIO相关的功能函数以及参数

>>> from machine import Pin
>>> help(Pin)
object <class 'Pin'> is of type type
  init -- <function>
  value -- <function>
  off -- <function>
  on -- <function>
  irq -- <function>
  IN -- 1
  OUT -- 3
  OPEN_DRAIN -- 7
  PULL_UP -- 2
  PULL_DOWN -- 1
  IRQ_RISING -- 1
  IRQ_FALLING -- 2
  WAKE_LOW -- 4
  WAKE_HIGH -- 5
  DRIVE_0 -- 0
  DRIVE_1 -- 1
  DRIVE_2 -- 2
  DRIVE_3 -- 3

函数说明

  • Pin.on():设置引脚为高电平
  • Pin.off():设置引脚为低电平
  • Pin.value(0/1):设置引脚为高电平或者低电平
  • Pin.irq():中断函数设置
  • GPIO输入输出设置:
  IN -- 1
  OUT -- 3
  • GPIO引脚输入输出模式:
  OPEN_DRAIN -- 7
  PULL_UP -- 2
  PULL_DOWN -- 1

  • GPIO作为中断引脚时设置的触发方式:
  IRQ_RISING -- 1
  IRQ_FALLING -- 2
   WAKE_LOW -- 4
  WAKE_HIGH -- 5

GPIO引脚作为外部输入中断引脚示例代码

from machine import Pin

def callback(p):
    mypin.value(mypin.value() ^ 1)  # 状态取反

btn = Pin(22, Pin.IN, Pin.PULL_UP) # 作为外部中断输入信号引脚
mypin = Pin(2, Pin.OUT)  # 作为发生中断时,响应的状态指示灯
btn.irq(trigger=Pin.IRQ_FALLING, handler=callback) # 设置中断,中断触发方式、回调函数

print("Hello, ESP32!")
while True:
    pass
  • 在线仿真地址:https://wokwi.com/projects/339885688536171090
  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值