Arduino Ultra Sonic Capteur renvoie toujours 0

Je suis en train de faire un projet de base dans Arduino UNO de la connexion d'un Ultra Sonic capteur (HC-SR04) qui doivent s'imprimer dans le moniteur de série de la distance de l'objet le plus proche, mais il a toujours l'impression de 0.

C'est mon code:

long distance;
long time;

void setup(){
  Serial.begin(9600);
  pinMode(4, OUTPUT); 
  pinMode(2, INPUT); 
}

void loop(){
  digitalWrite(2,LOW);
  delayMicroseconds(5);
  digitalWrite(2, HIGH);
  delayMicroseconds(10);

  time = pulseIn(4, HIGH);
  distance = int(0.017*time); 

  Serial.print("Distance: ");
  Serial.print(distance);
  Serial.println(" cm.");
  delay(1000);
}

Et c'est la planche à pain:

Arduino Ultra Sonic Capteur renvoie toujours 0

juste par curiosité, avez-vous une int() fonction définie quelque part?
Non, je ne. Devrais-Je?
votre calcul distance = int(.0.017*time) suggère. voir arduino.cc/en/Tutorial/Ping?from=Tutorial.UltrasoundSensor pour un exemple de code.
Ici, instructables.com/id/... trop
Si je supprime le int fonction le problème persiste. J'ai essayé de suivre ce post, mais l'auteur utilise un autre capteur (il a 3 broches). J'ai aussi essayé avec différents morceaux de codes que j'ai trouvé dans les blogs et le problème est le même.

OriginalL'auteur ianaya89 | 2015-06-29