当前位置:首页>新闻中心>公司动态>TPYBoard v102的GPIO使用方法

TPYBoard v102的GPIO使用方法

发布时间:2017-09-23 点击数:147


引脚介绍

 

引脚是控制I / O引脚的基本对象。它可以设置引脚输入、输出等的方式或者获取和设置数字逻辑电平的。对于模拟控制引脚,请参见ADC类。TPYBoard一共有68根针脚,263.3VVIN接口;30个通用IO口,包括2SPI接口,2CAN接口,2I2C接口,5USART接口,1412bit ADC接口,2DAC引脚,并且比官方PYBoard增加了SWD接口,更加完美。

 

v102.jpg

 

TPYboard 所有的引脚都定义为pyb.Pin.board.Name

 

y1 = pyb.Pin.board.Y1

in = pyb.Pin(pyb.Pin.board.Y1, pyb.Pin.IN)

也可以这样使用

y1 = pyb.Pin('Y1', pyb.Pin.OUT_PP)

 

定义GPIO: pyb.Pin(id)

LED1=Pin(Pin.cpu.A13, Pin.OUT_PP)

sw = Pin("X17")

sw = Pin('X17', Pin.IN, Pin.PULL_UP)

sw = Pin(Pin(Pin.cpu.B3, Pin.IN, Pin.PULL_UP)

 

 

TPYBoard引脚的CPU引脚可用作pyb.cpu.Name。对于CPU引脚,在TPYBoard上,pyb.Pin.board.X1并且 pyb.Pin.cpu.A0是相同的引脚。

 

同时也可以自己定义引脚名称

 

MyMapperDict = { 'LeftMotorDir' : pyb.Pin.cpu.C12 }

pyb.Pin.dict(MyMapperDict)

g = pyb.Pin("LeftMotorDir", pyb.Pin.OUT_OD)

 

可以映射GPIO

pin = pyb.Pin("LeftMotorDir")

 

甚至可以通过函数添加自己的映射功能

def MyMapper(pin_name):

   if pin_name == "LeftMotorDir":

       return pyb.Pin.cpu.A0

 

pyb.Pin.mapper(MyMapper)

 

 

基本用法

 

初始化引脚: Pin.init(mode, pull=Pin.PULL_NONE, af=-1)

 

Mode(引脚模式)可以是以下几种方式:

Ø  Pin.IN - 输入

Ø  Pin.OUT_PP - 推挽输出(push-pull)

Ø  Pin.OUT_OD - 开漏输出(open-drain)

Ø  Pin.AF_PP - 第二功能,推挽模式

Ø  Pin.AF_OD - 第二功能,开漏模式

Ø  Pin.ANALOG - 模拟功能

 

pull

Pin.PULL_NONE - 无上拉下拉

Pin.PULL_UP - 上拉

Pin.PULL_DOWN - 下拉

当模式为Pin.AF_PPPin.AF_ODAF可以是与引脚相关的备用功能之一的索引或名称

 

Pin.value([ value ] )

获取或设置引脚的数字逻辑电平:

没有参数,根据引脚的逻辑电平返回01

设定value值,value如果转换为True,则引脚设置为高电平,否则设置为低电平。

 

 

 

Pin.af_list()

返回引脚可用的备用函数数组

Pin.af_list(pyb.Pin.board.X1)

Pin.af_list(LED)

 

Pin.name()

获取引脚名称返回当前配置的引脚模式。返回的整数将匹配init函数的mode参数的允许常量之一:Pin.mode()

 

获取/设置debug状态:Pin.debug(state)

Pin.debug(True)

 

Pin.dict(dict)

获取/设置GPIO映射

MyMapperDict = { 'LeftMotorDir' : pyb.Pin.cpu.C12 }

pyb.Pin.dict(MyMapperDict)

 

Pin.mapper(func)

获取/设置Pin映射

 

Pin.__str__()

返回描述针对象的字符串

 

Pin.af()

返回当前配置的引脚交替功能。返回的整数将匹配init函数的af参数的允许常量之一

 

Pin.gpio()

返回与该引脚相关联的GPIO块的基址

 

Pin.mode()

返回当前配置的引脚模式。返回的整数将匹配init函数的mode参数的允许常量之一

 

 

Pin.names()

返回此引脚的cpu和板名称

 

Pin.pin()

获取引脚号

 

Pin.port()

获取pin端口

 

Pin.pull()

返回当前配置的引脚拉。返回的整数将匹配init函数的拉参数的允许常量之一。

常量

Pin.AF_OD

使用开漏驱动器将引脚初始化为交替功能模式

 

Pin.AF_PP

使用推挽式驱动将引脚初始化为交替功能模式

 

Pin.ANALOG

将引脚初始化为模拟模式

 

Pin.IN

将引脚初始化为输入模式

 

Pin.OUT_OD

使用开漏驱动器将引脚初始化为输出模式

 

Pin.OUT_PP

通过推挽式驱动将引脚初始化为输出模式

 

Pin.PULL_DOWN

使能引脚上的下拉电阻

 

Pin.PULL_NONE

不要使能引脚上的任何上拉或下拉电阻

 

Pin.PULL_UP

使能引脚上的上拉电阻


在线客服
  • 销售热线
    0536-8838268