查看: 4351|回复: 11

[项目分享] 升级版microbit按钮台灯——每次按下按钮,led灯切换亮灭

[复制链接]
本帖最后由 春秋大仙 于 2018-9-14 10:24 编辑

我们知道,通过microbit扩展板连接按钮及led灯模块,可以通过简单的程序实现“按钮按下去灯亮、按钮抬起后灯灭”的效果。可是我们现实中的台灯,是不需要持续按着按钮的,按一下灯就会保持亮的状态,再按一下灯灭。那么今天,我来分享一下在没有自锁开关的情况下,如何通过mind+完成“每次按下按钮,led灯切换亮灭”的程序设计。

【设计目标】
1. 每次按下按钮,led灯切换亮灭。

【器件选择】
Microbit主控板;(购买链接)
Microbit扩展版;(购买链接
数据线;按钮;led小灯;

【编程软件】
Mind+ V1.1.3:下载链接:http://www.mindplus.cc/
【设计步骤】

第一步:硬件连接。
通过USB连接线将Microbit和电脑相连接,将按钮与Microbit的P0号引脚相连接,将led小灯与Microbit的P1号引脚相连接。
截图201809141016187608.png



第二步:软件编程


1,先搭建出基础架构:判断按钮是否被按下,按下P1输出高电平,否则低电平。

截图201809141018116129.png

2,要实现每次按下按钮,灯切换亮灭,就需要借助变量,通过变量保存按钮按下的状态。所以我们设置一个变量,并命名“当前状态”。

截图201809141019115587.png


3,设置变量“当前状态”的值为0,然后在判断按钮是否按下后,再加一步判断“当前状态”的值,如果为0,P1输出高电平,并改变变量值。

截图201809141022027622.png

4,测试后发现,因为按钮的抖动效应,不能完美的实现功能。可通过等待指令实现按钮消抖,程序就设计完成啦。

截图201809141022138994.png


实现功能的重点就在于变量模块的灵活使用,大家都试试哈~






hnyzcj  超级版主

发表于 2018-9-14 06:19:18

搞定了,哈哈哈哈
回复 支持 反对

使用道具 举报

Leven  高级技师

发表于 2018-9-15 15:28:10

下面if else中再加上wait,就完美了
回复 支持 反对

使用道具 举报

gada888  版主

发表于 2018-9-19 17:32:25

不错的教程
回复 支持 反对

使用道具 举报

yinzjchina  学徒

发表于 2019-2-9 15:09:25

有一个问题,长按会闪
回复 支持 反对

使用道具 举报

冬天  学徒

发表于 2019-4-2 15:33:49

你好,为什么我用Arduino板,LED灯只是闪烁,不能控制呢
回复 支持 反对

使用道具 举报

冬天  学徒

发表于 2019-4-4 07:24:24

hnyzcj 发表于 2018-9-14 06:19
搞定了,哈哈哈哈

你好,我按照上面的图,做完程序,按键并不能控制灯的开关,灯只是一闪一闪的,为什么能。你做完能按一下松开,灯亮,再按一下松开灯灭吗
回复 支持 反对

使用道具 举报

春秋大仙  初级技师
 楼主|

发表于 2019-4-8 12:23:04

冬天 发表于 2019-4-2 15:33
你好,为什么我用Arduino板,LED灯只是闪烁,不能控制呢

程序应该都是一样的,用什么板子都是可以的,您可以再检查以下程序,端口和变量设置是否正确
回复 支持 反对

使用道具 举报

春秋大仙  初级技师
 楼主|

发表于 2019-4-8 13:12:45

yinzjchina 发表于 2019-2-9 15:09
有一个问题,长按会闪

嗯嗯,其实应该在消抖等待时间那里,把等待换成“等待直到非读取数字引脚P0”,就可以了。
回复 支持 反对

使用道具 举报

于成  学徒

发表于 2019-4-10 18:32:12

看这个怎么样
截图201904101831599654.png
回复 支持 反对

使用道具 举报

eagler88  见习技师

发表于 2019-6-10 18:38:31

老师好,按您的示例,led灯只是闪烁(频率大概是0.2秒),2脚按键不能控制.......
回复 支持 反对

使用道具 举报

驴友花雕  高级技师

发表于 2019-6-11 12:07:46

春秋大仙 发表于 2019-4-8 12:23
程序应该都是一样的,用什么板子都是可以的,您可以再检查以下程序,端口和变量设置是否正确 ...

老师好!我是1.5.5版,做了一点小改动就通过了
06--.jpg
回复 支持 反对

使用道具 举报

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

本版积分规则

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

硬件清单

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

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

mail