TPYBoard v102的GPIO使用用法

  引脚介绍

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

  

  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")

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

  defMyMapper(pin_name):

  ifpin_name=="LeftMotorDir":

  returnpyb.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_PP或Pin.AF_OD,AF可以是与引脚相关的备用功能之一的索引或名称

  Pin.value([value])

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

  没有参数,根据引脚的逻辑电平返回0或1。

  设定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

  使能引脚上的上拉电阻

  

时间: 2024-10-08 19:56:50

TPYBoard v102的GPIO使用用法的相关文章

[TPYBoard - Micropython 之会python就能做硬件 9] 五分种学会用TPYBoard V102 制作避障小车(升级版)

转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 感谢山东萝卜电子科技公司授权 一.实验器材 1.TPYboard V102板  1块 2.电机驱动模块L298N   1个 3.电机 2块 4.小车底盘 1个 5.超声波模块 1个 6.舵机 1个 7.SG90舵机支架 1个 8.超声波云台支架 1个 二.超声波模块 1.什么是超声波模块 超声波传感器是利用超声波的特性研制而成的传感器, 它是通过传送一个超声波(远高于人的听觉范

MicroPython之TPYBoard v102开发板控制OLED显示中文

转载请以链接形式注明文章来源,公众号:MicroPython玩家汇 0x00前言 之前看到一篇文章是关于TPYBoardv102控制OLED屏显示的,看到之后就想尝试一下使用OLED屏来显示中文.最近利用空余时间搞定了这个实验,特此将实验过程及源码分享出来,方便以后使用. 0x01实验器材 TPYBoardv102开发板1块 0.96寸OLED显示屏(ssd1306)1块 杜邦线若干 0x02前期准备 1. 首先我们先来看一下,之前参考的OLED显示字符的文章. http://docs.tpyb

MicroPython TPYBoard v102 驱动28BYJ-48步进电机

实验目的 了解步进电机的工作原理 学习步进电机的驱动方法 实验器材 TPYBoard v102 1块 微型步进电机(28BYJ-48) 1个 步进电机驱动板(ULN2003APG) 1块 micro USB数据线 1条 杜邦线 若干 步进电机的介绍 本次实验采用的是28BYJ-48 四相八拍电机,电压DC5V~12V. 24BYJ48名称的含义: 24:电机外径24mm B:步进电机中步字的拼音首字母 Y:永磁中永字的拼音首字母 J:减速的减字拼音首字母 48:四相8步 实物图 工作原理 步进电

TPYBoard V102:能跑Python的stm32开发板

近来micropython语言做硬件编程很火,随之而来的就开始带动着支持micropython语言编程的开发板也开始火的发烫,今天小编就来和大家介绍一款很经典的micropython开发板-TPYBoardV102开发板. 一.板载硬件资源介绍 按照惯例先来介绍一个这块开发板的硬件组成,个人感觉这个开发板的性能还是属于相当不错的,下面详细介绍一下. TPYBoardV102是以遵照MIT许可的MicroPython为基础,由TurnipSmart公司制作的一款MicroPython开发板,它基于

[TPYBoard - Micropython之会python就能做硬件 8] 学习使用蓝牙模块及舵机

转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 一.实验器材 1.TPYboard V102板  一块 2.电机驱动模块L298N   一个 3.电机 两块 4.小车底盘 5.超声波模块 6.5110屏  一块 二.超声波模块 1.什么是超声波模块 超声波传感器是利用超声波的特性研制而成的传感器, 它是通过传送一个超声波(远高于人的听觉范围)和提供一个对应于爆裂回声返回到传感器所需时间的输出脉冲来工作的.超声波传感器在非接触

学习NodeMCU的GPIO

本文研究NodeMCU的GPIO的用法,主要是IO的电压范围和电流范围 NodeMCU GPIO与ESP8266的映射 https://github.com/nodemcu/nodemcu-firmware/wiki/nodemcu_api_en GPIONEW TABLE ( Build 20141219 and later) new_gpio_map IO index ESP8266 pin IO index ESP8266 pin 0 [*] GPIO16 7 GPIO13 1 GPIO4

基于MicroPython的TPYBoard超声波倒车雷达系统

前言 倒车雷达是汽车驻车或者倒车时的安全辅助装置,能以声音或者更为直观的显示告知驾驶员周围障碍物的情况,解除了驾驶员驻车.倒车和起动车辆时前后左右探视所引起的困扰,并帮助驾驶员扫除了视野死角和视线模糊的缺陷.倒车雷达主要由超声波传感器.控制器和显示器或蜂鸣器等组成,如下: 关注公众号"MicroPython玩家汇"可获取完整源代码 超声波传感器:主要功能是发出和接收超声波信号,然后将信号输入到主机里面,通过显示设备显示出来. 控制器:对信号进行处理,计算出车体与障碍物之间的距离及方位.

TPYBoard开发板带你轻松玩转MicroPython

说到MicroPython,也许有人会感到陌生.而说到和它密切相关的Python,是否会恍然大悟呢?Python属于解释型语言,1989年才开发完成的Python显然非常年轻.然而经过数十年的磨砺,如今Python已经成为最具人气的开源编程语言之一.MicroPython顾名思义就是运行在MCU的Python,换句话说单片机可以使用Python语言来控制了. MicroPython:利用Python与MCU通信 目前C/C++语言在嵌入式系统中的代码占比中一直处于王者地位,但近几年MicroPy

MicroPython:基于TPYBoard集合MAX7219点阵模块制作表白女神神器

前言 又是一年毕业季,只有到了毕业季才会意识到自己又离青春远了一大步.毕业后,大家都各奔东西了,如果这个时候有喜欢的人还是 藏在心底的话,不免会给人生留下遗憾.为了不留遗憾,不老套,制作一款表白神器,是不是会更容易表白成功呢? 之前使用8*8LED点阵模块做过一款跳动的心,因为是直接用的点阵模块,所以控制就用了16个IO,未免有些繁琐,浪费资源.最近发 现了一个好东西--MAX7219多位LED 显示驱动器.使用该驱动器加上点阵屏或者数码管,驱动起来特别方便简单,而且加上电源脚 也不过就5根线而