Skip to content

Instantly share code, notes, and snippets.

Created December 19, 2013 06:22
Show Gist options
  • Select an option

  • Save anonymous/8035156 to your computer and use it in GitHub Desktop.

Select an option

Save anonymous/8035156 to your computer and use it in GitHub Desktop.
#define SONAR_NUM 2 // Number of sensors.
#define MAX_DISTANCE 400 // Max distance in CM.
static unsigned int pot[SONAR_NUM] = {'A0', 'A1'};
unsigned int minDistance[SONAR_NUM]; // Minimum distance from vehicle to sensor.
unsigned int slowDistance[SONAR_NUM]; // Holds the value of (MAX_DISTANCE - MinDistance)/3
void setup() {
Serial.begin(115200);
for (uint8_t i = 0; i < SONAR_NUM; i++) {
pinMode(pot[i], INPUT);
}
}
void loop() {
// put your main code here, to run repeatedly:
for (uint8_t i = 0; i < SONAR_NUM; i++) {
unsigned int rawValue = analogRead(pot[i]);
Serial.print(F("Pin "));
Serial.print(pot[i], HEX);
Serial.print(F(" raw value: "));
Serial.print(rawValue);
minDistance[i] = constrain(rawValue, 0, MAX_DISTANCE); // Set minimum distance at power-on based on potentiometer value
// and constrain analog reading value by range min value and range max value
Serial.print(F(" minDistance value: "));
Serial.print(minDistance[i]);
slowDistance[i] = (MAX_DISTANCE-minDistance[i])/3; // This is always returning as 0 right now. Stupid.
Serial.print(F(" Slow distance value: "));
Serial.println(slowDistance[i]);
}
Serial.println(F("---------------------"));
delay(1000);
}
Example Serial Output:
Pin 4130 raw value: 621 minDistance value: 400 Slow distance value: 0 Pin 4131 raw value: 606 minDistance value: 400 Slow distance value: 0
Pin 4130 raw value: 542 minDistance value: 400 Slow distance value: 0 Pin 4131 raw value: 544 minDistance value: 400 Slow distance value: 0
Pin 4130 raw value: 463 minDistance value: 400 Slow distance value: 0 Pin 4131 raw value: 472 minDistance value: 400 Slow distance value: 0
Pin 4130 raw value: 406 minDistance value: 400 Slow distance value: 0 Pin 4131 raw value: 414 minDistance value: 400 Slow distance value: 0
Pin 4130 raw value: 376 minDistance value: 376 Slow distance value: 8 Pin 4131 raw value: 382 minDistance value: 382 Slow distance value: 6
Pin 4130 raw value: 352 minDistance value: 352 Slow distance value: 16 Pin 4131 raw value: 354 minDistance value: 354 Slow distance value: 15
Pin 4130 raw value: 338 minDistance value: 338 Slow distance value: 20 Pin 4131 raw value: 340 minDistance value: 340 Slow distance value: 20
Pin 4130 raw value: 335 minDistance value: 335 Slow distance value: 21 Pin 4131 raw value: 332 minDistance value: 332 Slow distance value: 22
Pin 4130 raw value: 327 minDistance value: 327 Slow distance value: 24 Pin 4131 raw value: 327 minDistance value: 327 Slow distance value: 24
Pin 4130 raw value: 330 minDistance value: 330 Slow distance value: 23 Pin 4131 raw value: 328 minDistance value: 328 Slow distance value: 24
Pin 4130 raw value: 324 minDistance value: 324 Slow distance value: 25 Pin 4131 raw value: 323 minDistance value: 323 Slow distance value: 25
Pin 4130 raw value: 328 minDistance value: 328 Slow distance value: 24 Pin 4131 raw value: 327 minDistance value: 327 Slow distance value: 24
Pin 4130 raw value: 323 minDistance value: 323 Slow distance value: 25 Pin 4131 raw value: 322 minDistance value: 322 Slow distance value: 26
Pin 4130 raw value: 326 minDistance value: 326 Slow distance value: 24 Pin 4131 raw value: 326 minDistance value: 326 Slow distance value: 24
Pin 4130 raw value: 322 minDistance value: 322 Slow distance value: 26 Pin 4131 raw value: 322 minDistance value: 322 Slow distance value: 26
Pin 4130 raw value: 322 minDistance value: 322 Slow distance value: 26 Pin 4131 raw value: 324 minDistance value: 324 Slow distance value: 25
Pin 4130 raw value: 321 minDistance value: 321 Slow distance value: 26 Pin 4131 raw value: 321 minDistance value: 321 Slow distance value: 26
Pin 4130 raw value: 322 minDistance value: 322 Slow distance value: 26 Pin 4131 raw value: 323 minDistance value: 323 Slow distance value: 25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment