当前位置:   article > 正文

K210按键使用

k210按键

三、按键

(一)实验讲解

我们先来看看pyAI-K210的原理图,看看按键对应的外部 IO引脚。

在这里插入图片描述
在这里插入图片描述

从原理图可以看到,按键KEY的 一端连接到 K210的外部 IO16,另一端连接到 GND。所以按键在没按下时候输入高电平( 1),按下时候输入低电平 0)
和LED一样,按键的输入检测也是用到 GPIO对象 模块 ,具体如下

1.函数调用

  • GPIO注册函数

fm.register(pin,function,force=False)

参数:

【pin 】芯片外部 I O

【function 】芯片功能

【force 】 True 则强制注册,清除之前的注册记录;

例:

fm .register( 12,fm.fpioa.GPIO0,force=True)
fm.register(12,fm.fpioa.GPIO0)
# 表示将外部 IO12 注册到内部 GPIO0
  • 1
  • 2
  • 3

​ 注册成功后我们就可以通过 GPIO对象模块来控制外部 IO,从而控制 LED。
GPIO对象说明如下:

  • GPIO(ID,MODE,PULL,VALUE)

【 ID】内部 GPIO编号

【 MODE】 GPIO模式;
GPIO.IN :输入模式
GPIO.OUT :输出模式

【 PULL】
GPIO.PULL_UP :上拉
GPIO.PULL_DOWN :下拉
GPIO.PULL_NONE :无

【 value】 GPIO初始化电平
1:高电平
0:低电平

  • GPIO. value([value])

【value】 GPIO输出电平值;
1:高电平
0:低电平

输入模式时候参数为空,表示获取当前 IO输入电平值

例:

# 设置 GPIO 为输出模式
gpio=GPIO(GPIO.GPIO0,GPIO.OUT)
# 设置 GPIO 为低电平
gpio.value(0)
# 设置 GPIO 为输出模式且为低电平
gpio = GPIO(GPIO.GPIO0, GPIO.OUT,value=0)
# 读取GPIO电平
print(gpio.value())
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
(1)导入模块

上表对MicroPython的 GPIO对象做了详细的说明, GPIO模块在 Maix大模

块下,而 fm模块 是 在 fpioa_manager大模块 下面 的其中一个小模块,在 python编程里有两种方式引用相关模块 :

  • 方式1是: import Maix,然后通过 Maix.GPIO来操作;
  • 方式2是: from Maix import GPIO,意思是直接从 Maix中引入 GPIO模块,然后直接通过 GPIO来操作。

显然 方式 2会显得更直观和方便

(二)利用按键控制蓝灯亮灭

from Maix import GPIO
from fpioa_manager import fm

#注册IO,蓝灯-->IO12,KEY-->IO16
fm.register(12, fm.fpioa.GPIO0)
fm.register(16, fm.fpioa.GPIO1)

#初始化IO
LED_B = GPIO(GPIO.GPIO0, GPIO.OUT)# 设置为输出
KEY = GPIO(GPIO.GPIO1, GPIO.IN)# 设置为输入

while True:

    if KEY.value()==0: #按键被按下接地,读取GPIO的值
        LED_B.value(0) #点亮LED_B,蓝灯
    else:
        LED_B.value(1) #熄灭LED
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/693621
推荐阅读
相关标签
  

闽ICP备14008679号