BASIC4MCU | 질문게시판 | 아두이노 코일 금속감지 코드 해석 부탁드립니다 ㅠㅠ
페이지 정보
작성자 Treee 작성일2022-12-05 17:21 조회892회 댓글0건본문
#define pulse A0
#define cap A1
#define buz A3
unsigned long valsum=0;
int val[8];
int minval=10000;
int maxval=0;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(pulse,OUTPUT);
pinMode(cap,INPUT);
pinMode(buz,OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
unsigned long minsum=0;
unsigned long maxsum=0;
unsigned int valsum=0;
for(int i=0;i<8;i++){
pinMode(cap,OUTPUT);
digitalWrite(cap,LOW);
delayMicroseconds(20);
pinMode(cap,INPUT);
///////////////////////////////////////////////////
for (int j = 0; j < 21; j++) {
digitalWrite(pulse,HIGH);
delayMicroseconds(3);
digitalWrite(pulse,LOW);
delayMicroseconds(3);
}
///////////////////////////////////////////////////
val[i] = analogRead(cap);
}
for(int i=0;i<7;i++){
for(int j=0;j<7-i;j++){
if(val[j]>val[j+1]){
int temp=val[j];
val[j]=val[j+1];
val[j+1]=temp;
}
}
}
valsum=val[2]+val[3]+val[4]+val[5];
valsum/=4;
maxval = max(valsum,maxval);
if(maxval>valsum+2){
digitalWrite(buz,HIGH);
}
else{
digitalWrite(buz,LOW);
}
delay(1);
/*
Serial.print(valsum);
Serial.print(" ");
Serial.print(maxval);
Serial.println(" ");
*/
}
댓글 0
조회수 892등록된 댓글이 없습니다.