引脚介绍

  引脚是控制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

  使能引脚上的上拉电阻

  

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

  1. [Micropython]TPYBoard v102 DIY照相机

    摄像头(CAMERA或WEBCAM)又称为电脑相机.电脑眼.电子眼等,是一种视频输入设备,被广泛的运用于视频会议,安防系统 .图像采集系统. 环境监控 .工业现场过程控制 等方面.本实验用TPYBoa ...

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

    转载请注明:@小五义 http://www.cnblogs.com/xiaowuyi 欢迎加入讨论群 64770604 感谢山东萝卜电子科技公司授权   一.实验器材 1.TPYboard V102板 ...

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

    TPYBoard v102 驱动28BYJ-48步进电机 实验目的 了解步进电机的工作原理 学习步进电机的驱动方法 实验器材 TPYBoard v102 1块 微型步进电机(28BYJ-48) 1个 ...

  4. MicroPython教程之TPYBoard v102 CAN总线通信

    0x00前言 CAN是控制器局域网络(ControllerAreaNetwork,CAN)的简称,是ISO国际标准化的串行通信协议.CAN总线结构简单,只需2根线与外部相连,并且内部集成了错误探测和管 ...

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

    转载请以链接形式注明文章来源,公众号:MicroPython玩家汇 0x00前言 之前看到一篇文章是关于TPYBoardv102控制OLED屏显示的,看到之后就想尝试一下使用OLED屏来显示中文.最近 ...

  6. MicroPython开发板:TPYBoard v102 播放音乐实例

    0x00前言 前段时间看到TPYBoard的技术交流群(群号:157816561,)里有人问关于TPYBoard播放音乐的问题.最近抽空看了一下文档介绍,着手做了个实验.更多MicroPython的教 ...

  7. TPYBoard v102 DIY照相机(视频和制作流程)

    前段时间的帖子,利用TPYBoard v102做的DIY照相机,周末实物终于做出来了,加了两个按键模块和一个5110,做的有点糙啊----望大家勿怪,哈哈哈.拍出来图片还算清晰,串口摄像头模块用的30 ...

  8. [MicroPython]TPYBoard v102炫彩跑马灯WS2812B

    一.实验目的 了解ws2812b的工作原理 学习ws2812b的驱动方法 二.实验器材 TPYBoard v102 1块 ws2812b RGB-Ring-8 1个 micro USB数据线 1条 杜 ...

  9. Micropython TPYBoard v102 温湿度短信通知器(基于SIM900A模块)

    前言 前段时间看了追龙2,感受就是如果你是冲着追龙1来看追龙2的话,劝你还是不要看了,因为追龙2跟追龙1压根没什么联系,给我的感觉就像是看拆弹专家似的,估计追龙2这个名字就是随便蹭蹭追龙1的热度来的. ...

随机推荐

  1. VSCode配置eslint

    在Vue.js项目中,使用的是eslint检查. 而在我写完代码后,cnpm run dev运行命令...然后悲剧了,一大堆报错!╮(╯▽╰)╭ 安装插件:Vetur:这是vscode上一个vue.j ...

  2. Python入门经典 以解决计算问题为导向的Python编程 待完好

    1.4.2:python将代码分为两类:表达式和语句  表达式和语句::  表达式(值和运算符的结合,将产生新值--返回值. 假设在python shell中输入表达式将显示返回值.也就是说,假设x的 ...

  3. 二分PkU3258

    <span style="color:#330099;">/* E - 二分 Time Limit:2000MS Memory Limit:65536KB 64bit ...

  4. Tomcat下载,新建自己的项目,模拟server

    一.tomcat下载 下载地址http://tomcat.apache.org/ 打开网页能够看到例如以下内容 在网页左边有Download以下就是能够下载的版本号.如6.0,7.0,8.0: 选择一 ...

  5. Android 通知栏Notification的整合 全面学习 (一个DEMO让你全然了解它)

    在android的应用层中,涉及到非常多应用框架.比如:Service框架,Activity管理机制,Broadcast机制,对话框框架,标题栏框架,状态栏框架.通知机制,ActionBar框架等等. ...

  6. 零基础学python-2.8 字典

    字典类型,事实上就是相当于java的map,通过key-value来记录数据,工作原理类似于哈希表 差点儿全部的python对象都能够作为key,可是一般最经常使用的还是数字和字符串 字典元素使用{} ...

  7. hdu5418--Victor and World(floyd+状压dp)

    题目链接:点击打开链接 题目大意:有n个城市.在n个城市之间有m条双向路.每条路有一个距离.如今问从1号城市去游览其他的2到n号城市最后回到1号城市的最短路径(保证1能够直接或间接到达2到n).(n& ...

  8. jmeter的使用---web测试

    jmeter的使用---web测试 url:http://127.0.0.1:1080/WebTours/ 1.通过badboy录制脚本 1.1输入url点击右侧的跳转按钮,随后右侧显示url界面 1 ...

  9. IntelliJ IDEA 环境常用设置整理

    1.修改为Eclipse快捷键 File -> Settings -> Keymap => Keymaps改为 Eclipse copy   2.显示行号: File -> S ...

  10. oracle 主键自增 设置----杜恩德

    <div id="topicList"> <div class="forFlow"> <div class = "pos ...