#include <LiquidCrystal.h>
LiquidCrystal lcd(43, 45, 47, 49, 51, 53);

volatile unsigned long vrijeme1;
volatile unsigned long vrijeme3;

long t; // [us]
float c = 0.0015; //brzina zvuka pod morem [m/us]
float d = 1; // udaljenost prvog i treceg[m]
float arg;
float fi;

void setup()
{
  lcd.begin(16, 2);
  attachInterrupt(0, spremi1, RISING);
  attachInterrupt(4, spremi3, RISING);
  Serial.begin(115200);
}

void loop()
{
  if (vrijeme3 > 0 && vrijeme1 > 0)
  {
    t = vrijeme3 - vrijeme1;
  
  arg = (t*c/d);
  fi = acos(arg) * (57.296); // rad u stupnjeve
  lcd.setCursor(0,0);
  lcd.print(fi);
  lcd.setCursor(8,0);
  lcd.print("degrees");
  
  Serial.print("fi = ");
  Serial.println(fi);
  
  t=0;
  vrijeme1=0;
  vrijeme3=0;
  
  }  
}

void spremi1()
{
  vrijeme1 = micros();
}

void spremi3()
{
  vrijeme3 = micros();
}
