|
Pin的用法
在ESP8266中,Pin的用法和在pyboard(STM32)中有不少区别。
- 定义Pin
class machine.Pin(id, ...)
方法
- Pin.init(mode, pull=None, *, value)
初始化
mode:
pull:value:输出电平
- Pin.value([value])
不带参数时是读取输入电平,带参数时是设置输出电平。参数可以是True/False,也可以是1/0。
- Pin.low()
- Pin.high()
设置输出电平
- Pin.irq(*, trigger, handler=None)
中断
trigger,触发方式
- Pin.IRQ_FALLING,下降沿
- Pin.IRQ_RISING,上升沿
- Pin.IN,上升下降沿
handler,回调函数
常数
下面的常数用于配置 pin。注意不是没股份端口都有全部的属性。
- Pin.IN
- Pin.OUT
- Pin.OPEN_DRAIN
- Pin.ALT
- Pin.ALT_OPEN_DRAIN
选择 pin 模式
- Pin.PULL_UP
- Pin.PULL_DOWN
设置上拉/下拉电阻。
- Pin.LOW_POWER
- Pin.MED_POWER
- Pin.HIGH_POWER
设置驱动能力
- Pin.IRQ_FALLING
- Pin.IRQ_RISING
- Pin.IRQ_LOW_LEVEL
- Pin.IRQ_HIGH_LEVEL
设置 IRQ 触发类型。
例子
- from machine import Pin
- CS = Pin(2, Pin.OUT)
- CS(1)
- CS(0)
- CS.value()
- CS.value(1)
- CS.high()
- CS.low()
- sw=Pin(0, Pin.IN)
- sw()
- sw.irq(trigger=Pin.IRQ_FALLING, handler=lambda t:led.value(not led.value()))
复制代码
|
|