11 MicroPython之GPIO 通用型输入输出(基于pyboard)(一)

MicroPython之GPIO 通用型输入输出(基于pyboard)(一)

   GPIO (General Purpose Input Output )在做嵌入式开发是最基本的,前面使用的LED,按键,等,都是通过GPIO来实现的。pyboard当然也不例外,也提供了GPIO,实际就是使用板载stm32芯片的GPIOMicroPythonGPIO使用是定义在pyb.Pin包下。

   每一个 GPIO,我们可以控制其输出的高低电平,读取电平值,设置引脚模式(输入,输出等),当然也可以作为模拟接口,以及复用为其他外设端口。

Pin类说明

1. Pin类

class pyb.Pin(id, ...)

   说明: 引脚类定义,创建引脚对象,传入的参数用于初始化Pin对象,具体在pin.init()中执行。

2. Pin类的静态方法

classmethod Pin.debug([state])

   说明: 获取或设置调试状态(True为打开,False为关闭)。

classmethod Pin.dict([dict])

   说明: 获取或者设置引脚映射字典,就是获取或设置各个引脚的映射名称,这样可以方便初始化Pin时确定引脚。

classmethod Pin.mapper([fun])

   说明: 获取或设置引脚映射函数。

3. Pin类的成员方法

Pin.init(mode, pull=Pin.PULL_NONE, \*, value=None, alt=-1)

   说明: 初始化函数是最重要的,用于初始化引脚。参数说明:

      mode—设置引脚模式:
           - Pin.IN:输入模式
           - Pin.OUT_PP:配置用于输出的引脚,并使用推挽模式
           - Pin.OUT_OD:配置引脚输出,采用开漏模式
           - Pin.AF_PP:复用,推挽模式
           - Pin.AF_OD:复用,开漏模式
           - Pin.ANALOG:模拟输入输出

      pull—设置引脚模式:
           - Pin.PULL_NONE:无上下拉
           - Pin.PULL_UP:上拉
           - Pin.PULL_DOWN:下拉

      value—如果不是None,则会在初始化设置引脚的值

      alt—设置引脚的复用功能。该参数仅仅在modePin.AF_PP或者Pin.AF_OD下才可以。我们可以通过该参数设置引脚具体复用为某个外设,例如ADCSUART等。

      return—返回值为None


Pin.value([value])

   说明: 获取或者设置引脚电平,当value参数没有给定,则会返回引脚电平值。高电平为True,低电平为False。如果value给定,只要value可以转化为布尔型,则会设置引脚电平,True对应高电平,False对应低电平。


Pin.__str__()

   说明: 返回描述引脚对象的字符串。


Pin.af()

   说明: 返回引脚的复用功能。


Pin.af_list()

   说明: 返回该引脚的所有可以复用功能,是一个数组。


Pin.gpio()

   说明: 返回该引脚关联的GPIO块的基址。


Pin.mode()

   说明: 返回该引脚所配置的模式,取值同init函数的mode参数取值。


Pin.name()

   说明: 返回该引脚的名称。


Pin.names()

   说明: 返回该引脚的板子上和CPU上的名称。


Pin.pin()

   说明: 返回该引脚的引脚号。


Pin.port()

   说明: 返回该引脚的端口pin port


Pin.pull()

   说明: 返回该引脚所配置的上下拉模式,取值同init函数的pull参数取值。

   以下是一些常数:

序号名称说明
1Pin.AF_OD开漏模式 复用模式
2Pin.AF_PP推挽模式 复用模式
3Pin.ANALOG模拟模式
4Pin.IN输入模式
5Pin.OUT_OD开漏模式 输出模式
6Pin.OUT_PP推挽模式 输出模式
7Pin.PULL_DOWN下拉电阻模式
8Pin.PULL_NONE无上下拉电阻
9Pin.PULL_UP上拉电阻模式
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cuntou0906

玛莎拉蒂是我的目标!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值