首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在给定时间后打开arduino上连接的led

在给定时间后打开arduino上连接的led
EN

Stack Overflow用户
提问于 2016-03-06 11:49:37
回答 2查看 338关注 0票数 0

我已经创建了一个连接到arduino的android应用程序。这个项目非常简单:在应用程序上有一个打开和关闭按钮,分别打开和关闭连接到arduino的led。但我想更进一步...我希望用户能够给出必须经过的时间,直到发光二极管打开…例如,他在他的应用程序中拨打20,20分钟后led灯就亮了……我已经想过使用已经存在的警报应用程序和它们的代码,但是我的知识不足以处理them...Could。你能给我一个更简单的方法来实现我的idea...Is吗?有人知道已经有类似的项目了吗?

欢迎提出任何建议!

EN

回答 2

Stack Overflow用户

发布于 2016-03-06 12:43:27

您可以在延迟一段时间后使用Handler执行代码。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public void turnOnLED(int timeDelay){

  new Handler().postDelayed(new Runnable() {
     @Override
     public void run() {
        // Do something after timeDelay ms
     }
  },timeDelay);

}

run()方法中的代码将在timeDelay之后执行,单位为毫秒

票数 0
EN

Stack Overflow用户

发布于 2016-03-06 13:09:37

如果你用你的应用发送命令,你也可以在你的Arduino上启动一个计时器。一种简单的方法可能是:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#define MAX_UNSIGNED_LONG 4294967295
unsigned long StartTime = MAX_UNSIGNED_LONG;
unsigned long DelayTime = 10000; //Your delay in ms

loop
{
  //Receive Commando from app ... your code here:
  //To start your "timer": StartTime = millis()
  //Stop it with: StartTime = MAX_UNSIGNED_LONG;

  //Check if your time is elapsed here:
  unsigned long ActualTime = millis();
  if (ActualTime > StartTime && ActualTime - StartTime >= DelayTime)
  {
    //Tur on your Light here
  }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35826494

复制
相关文章

相似问题

添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文