【MicroPython】machine.Pin类函数详解
- machine.Pin(id, mode=None, pull=None, value)
-
- Pin对象构造函数
- id:GPIO编号,数值为0-29,如使用GPIO13则此处填写13,。;
- mode:模式,可选None、Pin.IN(0)、Pin.OUT(1)、Pin.OPEN_DRAIN(2);
- pull:使用内部上下拉电阻,仅在输入模式下有效,可选 None、Pin.PULL_UP(1)、Pin.PULL_DOWN(2);
- value:输出或开漏模式下端口值,0为低(off)、1为高(on);
-
第一个参数ID,代表GPIO编号,数值应在0-29,如使用GPIO13则此处填写13。
第二个参数mode代表GPIO模式 可设置为不初始化,输入模式 输出模式 和开漏模式
第三个参数pull为使用内部上下拉电阻,可设置为上拉 下拉 和悬空 注意该参数仅在输入模式下有效。
第四个参数为输出数值,输出或开漏模式下端口值有效。
- Pin.init(mode=None, pull=None)
- 重新初始化GPIO口;
- mode:模式,可选None、Pin.IN(0)、Pin.OUT(1)、Pin.OPEN_DRAIN(2);
- pull:使用内部上下拉电阻,仅在输入模式下有效,可选 None、Pin.PULL_UP(1)、Pin.PULL_DOWN(2);
其作用为重新初始化GPIO,参数与PIN构造函数相同,这里就不一一赘述了.
- Pin.value([x])
- 不填写参数的情况下返回GPIO端口数值,在填写参数的情况下将参数写入GPIO端口中,参数可为0或者1;
PIN类中value函数作用为在不填写参数的情况下返回GPIO端口数值,在填写参数的情况下将参数写入GPIO端口中,参数可为0或者1;
- Pin.toggle()
- 输出或开漏模式下将端口设置翻转
PIN类中toggle函数为在输出或开漏模式下端口值进行一次翻转
- Pin.low()
- 输出或开漏模式下将端口设置为低;
- Pin.off()
- 输出或开漏模式下将端口设置为低;
- Pin.high()
- 输出或开漏模式下将端口设置为高;
- Pin.on()
- 输出或开漏模式下将端口设置为高;
以上四个函数均用于输出或开漏模式下,Low OFF 设置为低, high和on设置为高
- Pin.irq(handler=None,trigger=(Pin.IRQ_FALLING | Pin.IRQ_RISING))
- 用于设置外部中断
- handler:中断触发回调函数;
- trigger:中断触发条件,设置为:
- Pin.IRQ_FALLING 下降沿中断。
- Pin.IRQ_RISING 在上升沿中断
PIN类irq函数为外部中断函数, 第一个参数为中断触发回调函数; 第二个参数trigger为中断触发条件,设置为边缘触发或者电平触发。