|
|
@@ -1,45 +0,0 @@ |
|
|
|
/* |
|
|
|
*@author James McKenzie |
|
|
|
*@lang C89 Based |
|
|
|
*@contact lunarised@outlook.com |
|
|
|
*/ |
|
|
|
int mode; |
|
|
|
void setup() { |
|
|
|
pinMode(0, INPUT_PULLUP); |
|
|
|
pinMode (13, OUTPUT); |
|
|
|
pinMode(8, OUTPUT); |
|
|
|
Serial.begin (9600); //set up a serial connection with the computer |
|
|
|
|
|
|
|
pinMode(11, OUTPUT); //the trigger pin |
|
|
|
pinMode(12, INPUT); //echo pin |
|
|
|
if (digitalRead(0) ==HIGH){ |
|
|
|
mode = 0; |
|
|
|
mode = 1; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
void loop() { |
|
|
|
if (mode == 0){ |
|
|
|
digitalWrite(13, HIGH); |
|
|
|
tone(8, getNote()); |
|
|
|
} |
|
|
|
} |
|
|
|
float getNote() |
|
|
|
{ |
|
|
|
float echoTime; |
|
|
|
float calculatedDistance; |
|
|
|
digitalWrite(11, HIGH); |
|
|
|
delayMicroseconds(20); |
|
|
|
digitalWrite(11, LOW); |
|
|
|
|
|
|
|
echoTime = pulseIn(12, HIGH); |
|
|
|
calculatedDistance = echoTime / 8; |
|
|
|
calculatedDistance += 110; |
|
|
|
if (calculatedDistance > 1760){ // |
|
|
|
|
|
|
|
calculatedDistance = 1760; |
|
|
|
} |
|
|
|
Serial.print(calculatedDistance); //print units after the distance |
|
|
|
Serial.println(" hz"); //print units after the distance |
|
|
|
return calculatedDistance; |
|
|
|
} |