Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const int numReadings = 10;
- int readings[numReadings]; // the readings from the analog input
- int readIndex = 0; // the index of the current reading
- int total = 0; // the running total
- int average = 10; // the average
- int inputPin = A2;
- void setup() {
- // initialize serial communication with computer:
- Serial.begin(9600);
- pinMode(13,OUTPUT);
- // initialize all the readings to 0:
- for (int thisReading = 0; thisReading < numReadings; thisReading++) {
- readings[thisReading] = 0;
- }
- }
- void loop() {
- // subtract the last reading:
- total = total - readings[readIndex];
- // read from the sensor:
- readings[readIndex] = analogRead(inputPin);
- // add the reading to the total:
- total = total + readings[readIndex];
- // advance to the next position in the array:
- readIndex = readIndex + 1;
- // if we're at the end of the array...
- if (readIndex >= numReadings) {
- // ...wrap around to the beginning:
- readIndex = 0;
- }
- // calculate the average:
- average = total / numReadings;
- //Serial.println(average);
- // send it to the computer as ASCII digits
- if (average < 5) {
- Serial.println("Object Detected !!");
- digitalWrite(13, 1);
- }
- else {
- Serial.println("------------------");
- digitalWrite(13, 0);
- }
- delay(1); // delay in between reads for stability
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement