极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 758|回复: 1

[未解决] 請問要如何取代delay 指令 (已於另一帖解決中,重複發文)

[复制链接]
发表于 2018-1-9 13:30:24 | 显示全部楼层 |阅读模式
本帖最后由 mickeyhuang 于 2018-1-11 02:01 编辑

想請問各位大大
我想在我的程式中加入delay
可是delay 會影響整個程式的執行
請問要如何取代delay 的功能, 而不讓程式有問題呢
例如 :

int pin = 10;
int photocellPin1 = 3;
int val2 = 0;

void setup() {
pinMode(pin, OUTPUT);
}

void loop() {
val2 = digitalRead(photocellPin1);
if(val2==HIGH){
delay(5000);
digitalWrite(pin, HIGH);
}
else{
digitalWrite(pin, LOW);
}
}
另外有個問題..
當 val2 成立時, 會delay 5秒後 pin HIGH
但是當 val2 不成立時,也會延遲幾秒才變成pin LOW
想請問要如何修改或用其他方式取代delay
感謝各位大大幫忙解惑
回复

使用道具 举报

发表于 2018-1-9 17:58:06 | 显示全部楼层
用中断 用中断
回复 支持 反对

使用道具 举报

高级模式  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2018-9-24 07:59 , Processed in 0.040737 second(s), 7 queries , File On.

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表