rzyzzxw 发表于 2018-2-25 21:56:52

玩转micro:bit-用BXY玩外接按钮

当我能用代码点灯一盏外接的led灯时,就想能用单按钮控制它。
能按一下开,再按一下关,心里多高兴啊。

幸福都是奋斗出来的。
按下按钮,向幸福出发。

static/image/hrline/1.gif

学习目标:按一下开,再按一下关,单按钮控制一个LED灯。
器材:


学习中,我把把led灯接到P0口,开关接p1。
按钮开关是数字输入设备,按下时读数1,松开时读数为0。

任务1、按A按钮点亮爱心,再按A按钮不显示爱心。
程序:
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(否则)。这些被称为条件 并且这样工作:如果事件是真实的:
    #做事情1
否则,如果另一个事件是真实的:
    #做事情2
否则:
    #做事情3。
http://v.youku.com/v_show/id_XMzQyMzAwMTM0OA==.html

任务2、按A按钮点亮爱心,再按A按钮不显示爱心,同时开关p0口的LED灯。
程序:
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就可以了。
http://v.youku.com/v_show/id_XMzQyMzAxMzUwNA==.html

任务3、用外接按钮控制,完成上面任务。
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://v.youku.com/v_show/id_XMzQyMzA0MDYyOA==.html

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

官方教程: BXY Python编辑器 — 一款适合高中python教学的轻量化编程平台 (dfrobot.com.cn)

九零后 发表于 2020-3-11 17:29:33

我按一下后持续开不会灭为什么

gada888 发表于 2020-3-25 14:38:46

有料的探索
页: [1]
查看完整版本: 玩转micro:bit-用BXY玩外接按钮