2017-8-15 14:26:26 [显示全部楼层]
9215浏览
查看: 9215|回复: 0

Micro: bit 计数器

[复制链接]
本帖最后由 Nana 于 2017-8-16 14:08 编辑

      昨天下午呀,我吃了饭在路边转悠来着,一群孩子蹦蹦跳跳的跑过来,就围成一团在空地上跳起绳来, 孩子们跳着笑着,哎呀呀,让我不禁感慨啊~这就是年少时光啊,就在我yy起小学,初中,高中同桌的脸时~不知道怎么的,他们就闹成一团了。原来是几个孩子数数数出问题了,这个说她跳了40个,那个说作弊,明明就只有38个。。。公说公有理,婆说婆有理,闹得不可开交。时不我待,是时候拿出秘密武器啦~
   Micro: bit 计数器图1
     来来来,看小姐姐闪瞎你们的眼睛------micro:bit
电子计数器。
   
Micro: bit 计数器图5   
     那么问题来了,具体该怎么做呢?
     首先,我们需要实现在按向A时,计数为-1;按向B时,计数为+1;同时按向A和B时,计数器归0。
     需要哪些东西呢?硬件只仅仅需要一块Micro:bit开发板和一根USB数据线,软件呢,强推UpyCraft(Micropython),即点即用,简单吧!吼吼~连接Micro:bit到电脑,就可以开始编程啦~
所需代码:
[mw_shl_code=python,true]# counter for micro:bit
# www.dfrobot.com.cn
counter = 0
display.show(str(counter))
while True:
  if button_a.was_pressed():
    counter=counter+1
  if button_b.was_pressed():
    counter=counter-1
  if button_a.is_pressed() and button_b.is_pressed():
    counter = 0
  if counter < 10:
    display.show(str(counter))
  elif counter >= 10:
display.scroll(str(counter))
[/mw_shl_code]

代码详解:
【1】   设置计数器初始值为0
【2】   在Micro:bit上演示初始值
【3】   while循环,后面的条件满足时,将会执行后面的语句,执行完后,在判断条件是否满足,以此循环,直到条件不满足时退出。这里的True表示条件为真,那么程序会一直运行后面的代码。
【4】   按下A后,计数值+1
【5】   按下B后,计数值-1
【6】   A和B同时被按下时,计数值归零
【7】   在数值小于10时,display.show就可以完成数值演示
【8】   在数值大于10时,需要滚动显示才能完全显示出两位数或多位数。
注意:代码中was和is的区别。

实验效果:
Micro: bit 计数器图2
     有了计数器,你可以数数你鞋柜的鞋子有多少双,还要不要再买几双,不过要是家里鞋柜全是你的鞋子,就数都不用数了~计数再多也挡不住你买买买啦。
Micro: bit 计数器图3


     哦,对了。还记得上次Micro:bit发声里面的代码吗?
     调试的重点是格式格式格式,缩进缩进缩进,重要的事情说三遍~
     至于为什么按下AB却只显示A呢?我个人想法是A和B的循环中,要么显示A要么显示B,但是A的循环周期比较长,也就变成只显示A了(如有错处,欢迎指出)。试试下面的改进版,反应更灵敏哦~
Micro: bit 计数器图4




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

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

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

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

mail