物联网AI MicroPython学习之语法 GPIO输入输出模块

学物联网,来万物简单IoT物联网!!

GPIO 介绍

  • 模块功能:
    GPIO通用输入输出。

接口说明

GPIO - 构建GPIO对象

  • 函数原型:Pin(port, dir , pull)
  • 参数说明:
参数 类型 必选参数? 说明
port int Y 对应开发板的引脚号
dir enum N 配置输入:Pin.IN 配置输出:Pin.OUT
pull enum N 配置驱动模式。 输入模式下属性值: Pin.PULLUP\Pin.PULLDOWN 默认(字段空缺时)为PULLDOWN模式。 输出模式下可用属性值: Pin.PUSHPULL/Pin.OPENDRAIN 默认(字段空缺时)为PUSHPULL模式。
  • 返回值:
    构建的GPIO操作对象。

on - 输出高电平

  • 函数原型:on()
  • 参数说明:

  • 返回值:

off - 输出低电平

  • 函数原型:off()
  • 参数说明:

  • 返回值:

value - 电平信号操作

  • 函数原型:value(value)
  • 参数说明:
参数 类型 必选参数? 说明
value bool N 有参数时 1: 输出高电平 0: 输出低电平 无参数时 返回当前引脚状态
  • 返回值:
  • 示例代码
python 复制代码
from machine import Pin

p2 = Pin(2, Pin.OUT)    # 创建对象p2,对应GPIO2口输出
p2.on()                 # 设置引脚为 "on" (1)高电平
p2.off()                # 设置引脚为 "off" (0)低电平
p2.value(1)             # 设置引脚为 "on" (1)高电平

p2 = Pin(2, Pin.IN)     # 创建对象p2,对应GPIO2口输入
print(p2.value())       # 获取引脚输入值, 0(低电平) 或者 1(高电平)

irq - 输入中断配置

  • 函数原型:irq(mode, callback)
  • 参数说明:
参数 类型 必选参数? 说明
mode enum Y 下降沿触发:Pin.IRQ_FALLING 下降沿触发:Pin.IRQ_RISING 低电平触发:Pin.WAKE_LOW 高电平触发:Pin.WAKE_HIGH
callback function N 中断事件产生的回调处理函数
  • 返回值:
  • 示例代码
python 复制代码
from machine import Pin

p2 = Pin(2, Pin.IN)     # 创建对象p2,对应GPIO2口输入

def funcb(pin):
    print('trigger',pin)

p2.irq(trigger=Pin.IRQ_RISING | Pin.IRQ_FALLING,handler=funcb)

while True:
    pass
相关推荐
星期天要睡觉35 分钟前
计算机视觉(opencv)实战二十一——基于 SIFT 和 FLANN 的指纹图像匹配与认证
人工智能·opencv·计算机视觉
victory043139 分钟前
wav2vec微调进行疾病语音分类任务
人工智能·分类·数据挖掘
semantist@语校1 小时前
第二十篇|SAMU教育学院的教育数据剖析:制度阈值、能力矩阵与升学网络
大数据·数据库·人工智能·百度·语言模型·矩阵·prompt
_hermit:1 小时前
【从零开始java学习|小结】记录学习和编程中的问题
java·学习
IT_陈寒1 小时前
React 性能优化必杀技:这5个Hook组合让你的应用提速50%!
前端·人工智能·后端
屁股割了还要学1 小时前
【数据结构入门】排序算法(4)归并排序
c语言·数据结构·学习·算法·排序算法
sheepwjl2 小时前
《嵌入式硬件(十二):基于IMX6ULL的时钟操作》
汇编·arm开发·单片机·嵌入式硬件·时钟·.s编译
剪一朵云爱着2 小时前
一文入门:机器学习
人工智能·机器学习
hi0_62 小时前
机器学习实战(一): 什么是机器学习
人工智能·机器学习·机器人·机器学习实战
ChinaRainbowSea2 小时前
9. LangChain4j + 整合 Spring Boot
java·人工智能·spring boot·后端·spring·langchain·ai编程