数字处理:无延时LED闪烁

数字处理:无延时LED闪烁

无延时LED闪烁(Blink Without Delay)

有时你需要同时做两件事情。例如,您可能想要在点亮LED的同时读取按钮是否按下。在这种情况下,您不能使用delay(),因为在delay()时Arduino会暂停你的程序。如果Arduino在等待delay()暂停时按钮按下,那么你的程序将会错过按钮按下。
本示例演示了如何在不使用delay()来点亮LED。点亮LED,并记录下时间。然后,每次通过loop()时,检测是否已经超过设定的闪烁时间。如果是,则改变LED的打开或关断状态,并设定新的时间。通过这种方式,LED连续闪烁的同时示例执行不会错过任何一条指令。
打个比方,在微波炉进行加热比萨饼时,同时也等着一些重要的电子邮件。你将比萨饼放进微波炉中,并将其设置为10分钟。使用delay()类似于坐在微波炉前面看着定时器从10分钟计数到零。如果在此期间,重要邮件到达,你将会错过它。
在现实生活中你会加热比萨饼,然后检查你的电子邮件,然后也许做其他事(这并不需要太长时间!),并每隔一段时间你会回来看微波炉的定时器是否已经到零,表明您的比萨饼加热完成。
在本教程中,您将学习如何建立一个类似的定时器。

所需硬件

  • Arduino或者Genuino开发板
  • LED
  • 220欧电阻

电路连接方式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值