拾年 发表于 2014-2-12 17:27:17

关于delay的问题

本人在一次实验中发现,delay的存在有时会影响实验效果,以下是一个简单的程序:#include <Servo.h>
Servo myservo;//创建一个舵机控制对象
int val = 0;
int v1=100;//V1的数值由本人随意输入
int v2=50;//V2的数值由本人随意输入
int v=10;//V的数值由本人随意输入
int v3=v1-v2;         
int t=v3/v*1000;
int photocellPin = A2;
void setup()
{
myservo.attach(9);// 该舵机由arduino第九脚控制
myservo.write(60);
}
void loop()
{
val = analogRead(photocellPin);
if(val<=152)
{
myservo.write(150);
delay(t);
}
else
{
myservo.write(60);
}
}
本人希望有信号从A2进入时,舵机延时5s后转动到150度,没信号时原地不动;可没信号时,舵机总是隔个5s快速反转60度然后再正转60度,要是有信号的话,就能延时5s转动到150度,能达到预期效果。哪位好心人能帮忙解释下,谢谢!!

cnpaf 发表于 2014-4-3 20:17:01

学习学习学习新~~~
页: [1]
查看完整版本: 关于delay的问题