12.7

一、PGIO配置

from pyb import Pin

1. GPIO输出

 引脚:X1~X12, Y1~Y12

 模式mode = Pin.OUT_PP                推挽输出

Pin.OUT_OD                                    - 开环控制,OC输出

p_out = Pin('X1', Pin.OUT_PP)

p_out.high()                                           # 置高

p_out.low()                                            # 置低

 GPIO输入

# 引脚:X1~X12, Y1~Y12

# 模式mode = Pin.IN - 输入引脚

# 拉动pull = Pin.PULL_NONE - 无电阻;

#            Pin.PULL_UP  - 有上拉电阻;

#            Pin.PULL_DOWN - 有下拉电阻.

p_in = Pin('X2', Pin.IN, Pin.PULL_UP)

r = p_in.value()

二、Servo

from pyb import Servo

# 引脚:X1~X4 =1~4

s1 = Servo("X1")      # X1引脚

s1.angle(45)        # 转到45度,参数范围-90~+90

s1.angle(-60, 1500) # 转到 -60度,在1500ms时间内。

s1.speed(50)        # 设置速度(-100~100)

v = s1.speed()      # 无参数,则返回当前速度

三、ExtInt引脚外部中断

from pyb import  ExtInt

# 引脚:X1~X12, Y1~Y12

# pyb.ExtInt(pin, mode, pull, callback)

# mode = ExtInt.IRQ_RISING  - 上升沿

#        ExtInt.IRQ_FALLING - 下降沿

#        ExtInt.IRQ_RISING_FALLING - 上升和下降沿

# pull = Pin.PULL_NONE - 无拉电阻

#        Pin.PULL_UP  - 有上拉电阻

#        Pin.PULL_DOWN - 有下拉电阻

# callback = 中断回调函数,有一个参数,中断线。

ext = ExtInt(Pin('Y1'), ExtInt.IRQ_RISING, Pin.PULL_DOWN, callback) #配置中断引脚

ext.swint() # 软件触发中断

## ExtInt类方法:

# ext.disalbe()  # 关中断

# ext.enable()  # 开中断

# ext.line()    # 返回中断线

# ext.swint()    # 软件触发中断

# ext.regs()    # 清空配置中断寄存器

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 今天老师把昨天留的作业讲解了一下 后来讲了伺服电机转动角度的控制 还有中断的运用 转到angle(-60...
    王春雪cs阅读 152评论 2 0
  • 今天我们学习了开关Switch使用pyb.Switch类:和Pin引脚和GPIOpyb.Pin类 sw = pyb...
    5期刘雪梅阅读 415评论 0 0
  • 姓名:朱小鹏 学号:16010130023 转载:STM32输入输出模式理解 http://www.opened...
    小鵬_956f阅读 1,298评论 0 0
  • 偶然间在朋友圈里看见了这个软件 叫做简书 简单书写心情 在这个纸醉金迷的社会 有着太多的悲欢离合 找不到一个宣泄的...
    烟雨风月祭阅读 161评论 0 1
  • 那一年 老家的庙会 你匍匐在佛祖前叩拜 他站立在拐角的柱子后许愿 不求来世 只愿你今生能回眸 便再无奢求 那一年 ...
    芳菲永在阅读 411评论 0 0