> micro:bit
查看: 3170|回复: 0

[入门教程] 玩转micro:bit-用BXY玩外接按钮

[复制链接]
本帖最后由 rzyzzxw 于 2018-5-16 20:33 编辑

当我能用代码点灯一盏外接的led灯时,就想能用单按钮控制它。
能按一下开,再按一下关,心里多高兴啊。
截图201802252110554466.png
幸福都是奋斗出来的。
按下按钮,向幸福出发。



学习目标:按一下开,再按一下关,单按钮控制一个LED灯。
器材:
截图201802252114536166.png
截图201802252115551031.png
截图201802260936311593.png
学习中,我把把led灯接到P0口,开关接p1。
按钮开关是数字输入设备,按下时读数1,松开时读数为0。

任务1、按A按钮点亮爱心,再按A按钮不显示爱心。
程序:
[AppleScript] 纯文本查看 复制代码
from microbit import *
#write your program:
item_Num=0
while True:
  if button_a.is_pressed():
    sleep(200)
    item_Num=item_Num+1
    if item_Num==1:      
      display.show(Image.HEART)
    elif item_Num==2:
      display.clear()
      item_Num=0

这段小程序学习中获得到的知识:
1、定义变量,这个变量放在外面,是全局变量。
2、练习ift 和if elif 语句。
3、最主要的是,if item_Num==1: 中,要用到==。笔记:在Python语言中==表示相等,=则表示赋值。

笔记:我们使用if(如果), elif(以下简称“否则,如果”)和else(否则)。
这些被称为条件 并且这样工作:
[AppleScript] 纯文本查看 复制代码
如果事件是真实的:
    #做事情1
否则,如果另一个事件是真实的:
    #做事情2
否则:
    #做事情3。


任务2、按A按钮点亮爱心,再按A按钮不显示爱心,同时开关p0口的LED灯。
程序:
[AppleScript] 纯文本查看 复制代码
from microbit import *
#write your program:
item_Num=0
while True:
  if button_a.is_pressed():
    sleep(200)
    item_Num=item_Num+1
    if item_Num==1:
      pin0.write_digital(1)
      display.show(Image.HEART)
    elif item_Num==2:
      pin0.write_digital(0)
      display.clear()
      item_Num=0

程序中,加入pin0.write_digital()   p0口的数字脚写入1/0就可以了。


任务3、用外接按钮控制,完成上面任务。
[AppleScript] 纯文本查看 复制代码
from microbit import *
#write your program:
item_Num=0
while True:
  if pin1.read_digital()==1:
    sleep(200)
    item_Num=item_Num+1
    if item_Num==1:
      pin0.write_digital(1)
      display.show(Image.HEART)
    elif item_Num==2:
      pin0.write_digital(0)
      display.clear()
      item_Num=0



今天收获不小,就这样吧。

官方教程: http://docs.dfrobot.com.cn/bxy/






您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
wifi气象站

硬件清单

btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2019 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail