드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
게시물ID : science_12176짧은주소 복사하기
작성자 : 생화화★
추천 : 1
조회수 : 613회
댓글수 : 1개
등록시간 : 2012/06/18 22:38:46
아두이노를 이용해서
적외선 거리센서로 인풋값을 받고 그 값을 이용해 서보모터를 구동하려 하는데 소스가 잘못됬는지 안되네요..
#include <Servo.h>
Servo myservo;
int DisSensor = 7;
int val = 0;
int val1 = 0;
int DisSensorValue= 0;
int timecount =0;
void setup(){
myservo.attach(9);
Serial.begin(9600);
}
void loop()
{
timecount =0 ;
val = 0;
pinMode(DisSensor, OUTPUT);
digitalWrite(DisSensor, LOW);
delayMicroseconds(2);
digitalWrite(DisSensor, HIGH);
delayMicroseconds(5);
digitalWrite(DisSensor, LOW);
pinMode(DisSensor,INPUT);
val=digitalRead(DisSensor);
while(val==LOW){
val=digitalRead(DisSensor);
}
while(val==HIGH){
val=digitalRead(DisSensor);
timecount=timecount+1;
}
DisSensorValue=timecount;
Serial.println(DisSensorValue);
delay(50);
if(DisSensorValue>1600){
val1=0;
myservo.write(val1);
delay(10);
}
if((DisSensorValue <= 1600) &&(DisSensor > 50)){
int val2;
val2=map(DisSensorValue, 30, 3000, 0, 180);
val2 = val2 +100;
myservo.write(val2);
delay(10);
for(int val1= 0; val1<50; val1++){
val1=val2+val1;
myservo.write(val1);
delay(5);
}
for(int val1 =49; val1>0; val1--){
val1=val2+val1;
myservo.write(val1);
delay(5);
}
}
}
일단 이런 형태로 했구요. 컴파일은 문제없는데...업로드가 안되네요...
댓글 분란 또는 분쟁 때문에
전체 댓글이 블라인드 처리되었습니다.
새로운 댓글이 없습니다.